微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在 Kubernetes 入口控制器中身份验证失败时重定向请求 说明

如何解决在 Kubernetes 入口控制器中身份验证失败时重定向请求 说明

当 kubernetes 入口控制器身份验证失败且 Nginx.ingress.kubernetes.io/auth-url 注释中指定的 url 时,我可以将请求重定向到某个自定义 url 吗?

示例

apiVersion: networking.k8s.io/v1beta1
kind: Ingress
Metadata:
  annotations:
    Nginx.ingress.kubernetes.io/auth-url: https://httpbin.org/basic-auth/user/passwd
  creationTimestamp: 2016-10-03T13:50:35Z

谢谢。

解决方法

您的要求:

当 kubernetes 入口控制器认证失败时,将请求重定向到某个自定义 url

可以通过使用以下注释来解决:

  • nginx.ingress.kubernetes.io/auth-signin: https://SOME_URL/

说明

假设您有一个 Ingress 清单(只有其中的一部分):

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: minimal-ingress
  annotations:
    nginx.ingress.kubernetes.io/auth-url: http://httpbin.default.svc.cluster.local:80/basic-auth/user/password
    nginx.ingress.kubernetes.io/auth-signin: https://SOME_URL/
spec:
  <-- REDACTED --> 

我已经测试过这样的设置,它将按以下方式工作:

  • 您将首先被 Service 注释重定向到内部 httpbin (auth-url),系统会提示您输入凭据。
  • 如果上述身份验证步骤失败,您将被重定向到 auth-signin URL,对于 example 可能是:https://github.com/login(这只是一个示例,而不是实际登录配置)。

其他资源:

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。