K8s配置Ingress账号登录
K8s配置Ingress账号登录
·
Ingress 账号密码登录配置
首先安装apache工具
sudo apt-get install apache2-utils
生成auth文件
# 生成auth文件
$ htpasswd -c auth zxuser
New password:
New password:
Re-type new password:
Adding password for user zxuser
查看文件并复制auth内容,并将内容转为base64待用
# 查看文件
vim auth
# 转base64 等待稍后使用
base64 auth
创建 ingress-auth.yaml 文件
apiVersion: v1
data:
# auth 此处填写上面获得的base64字符串
auth: enhasdadasdj=========================mWapsdasdL1RasdasdasdLw==
kind: Secret
metadata:
name: zxig-auth
namespace: {{ .Values.namespace }}
type: Opaque
下面为 Ingress 中需要的配置
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: test-ingress
namespace: {{ .Values.namespace }}
labels:
app: testapp
service: test
annotations:
nginx.ingress.kubernetes.io/ssl-redirect: "false"
nginx.ingress.kubernetes.io/use-regex: "true"
# 身份验证的类型
nginx.ingress.kubernetes.io/auth-type: basic
# 包含用户/密码定义的密钥的名称
nginx.ingress.kubernetes.io/auth-secret: zxig-auth
# 使用适当的上下文显示消息,为什么需要身份验证
nginx.ingress.kubernetes.io/auth-realm: '请使用账号密码登录!'
spec:
ingressClassName: nginx
rules:
- host: {{ .Values.hostName }}
http:
paths:
- path: /status(/.*)
pathType: Prefix
backend:
service:
name: test
port:
number: 80
参考 Basic Authentication - NGINX Ingress Controller (kubernetes.github.io)
更多推荐
已为社区贡献1条内容
所有评论(0)