码迷,mamicode.com
首页 > 其他好文 > 详细

k8s在dashboard实现静态文件认证

时间:2018-09-28 19:02:10      阅读:175      评论:0      收藏:0      [点我收藏+]

标签:metadata   board   ade   api   meta   gif   from   用户   realm   

参考:  https://www.cnblogs.com/wayneiscoming/p/7715623.html   ,   https://jimmysong.io/kubernetes-handbook/guide/rbac.md  ,

配置kubernetes服务basic auth

  

  由于一些内部服务访问并不需要鉴权,如kubernetes-dashboard、traefik-ui,所以当我们想通过外网域名访问的时候会有安全问题。这里我们可以为服务配置basic auth,访问时需要验证,以下是配置过程:

 

1. 创建用户密码文件

  这里我们使用htpasswd创建加密过的密码文件。

# htpasswd -bc basic-auth-secret username password

 

2. 创建Kubernetes Secret

# kubectl create secret generic basic-auth --from-file=basic-auth-secret --namespace=kube-system

 

3. 部署服务Ingress使其使用basic auth

 通过在Ingress中添加鉴权annotation实现服务basic auth。这里需要注意:

  • Secret文件必须与Ingress规则在同一命名空间。
  • 目前只支持basic authentication。
  • Realm不可配置,默认使用traefik。
  • Secret必须只包含一个文件。
技术分享图片
apiVersion: v1
kind: Service
metadata:
  name: traefik-web-ui
  namespace: kube-system
spec:
  selector:
    k8s-app: traefik-ingress-lb
  ports:
  - port: 80
    targetPort: 8080
---
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: traefik-web-ui
  namespace: kube-system
  annotations:
kubernetes.io/ingress.class: traefik ingress.kubernetes.io/auth-type: basic ingress.kubernetes.io/auth-secret: basic-auth spec: rules: - host: traefik-ui.domain.com http: paths: - backend: serviceName: traefik-web-ui servicePort: 80
技术分享图片

  技术分享图片

k8s在dashboard实现静态文件认证

标签:metadata   board   ade   api   meta   gif   from   用户   realm   

原文地址:https://www.cnblogs.com/fyy-hhzzj/p/9720002.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!