Kubernetes Ingress 在路由之前执行授权,就像 api 网关一样



可以对 Kubernetes 入口(如 kong、nginx(执行授权(基于规则的类似(。 例如,我有这个:

api版本: extensions/v1beta1

kind: Ingress
metadata:
  name: foo-bar
spec:
  rules:
  - host: api.foo.bar
    http:
      paths:
      - path: /service
        backend:
          serviceName: service.foo.bar
          servicePort: 80

但在重定向到/service 之前,如果请求令牌具有要传递/service 的规则,我需要在我的授权 api 中执行有效调用。

或者我真的需要使用入口后面的 API 网关(如弹簧 zuul(来执行此操作?

Ingress清单只是控制器的输入。您还需要一个入口控制器,一个了解Ingress对象的代理。Kong和Nginx是实现的两个例子。

Nginx Ingress Controller 由 Kubernetes 社区提供,它有一个使用注释配置外部 oauth2 代理的示例。

annotations:
  nginx.ingress.kubernetes.io/auth-url: "https://$host/oauth2/auth"
  nginx.ingress.kubernetes.io/auth-signin: "https://$host/oauth2/start?rd=$escaped_request_uri"

相关内容

  • 没有找到相关文章

最新更新