我可以将NGINX Ingress身份验证与oidc一起使用吗?

时间:2020-01-02 16:30:24

标签: kubernetes openid-connect nginx-ingress

我在Kubernetes上运行了两个Web应用程序。为了匹配请求,我使用NGINX入口。 当前,所有应用程序都在分别从我们的身份提供程序验证令牌(我在开发人员上使用Keycloak并计划用于生产的Azure Active Directory)。

是否可以在Ingress级别进行验证?

例如,用户尝试进入页面。入口检查有效令牌,并在必要时重定向到IP。如果用户成功登录,则入口控制器将令牌提供给应用。

1 个答案:

答案 0 :(得分:3)

Nginx入口提供了通过auth-url和auth-signin批注来插入外部OAUTH身份验证提供程序的功能。

metadata:
  name: application
  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"

使用外部身份验证提供程序保护Kubernetes仪表板的example

有关更多详细信息,请参阅文档here