• DashBoard-身份验证


    dashboard1.7.1版本之后,新增了用户登录认证的功能。

    默认dashboard会跳转到登录页面:

    dashboard login

    我们可以看到dashboard提供了Kubeconfigtoken两种登录方式,我们可以直接跳过或者使用本地的Kubeconfig文件进行登录,可以看到会跳转到如下页面:

    这是由于该用户没有对default命名空间的访问权限。

    身份认证

    登录dashboard 的时候支持Kubeconfigtoken 两种认证方式,Kubeconfig 中也依赖token 字段,所以生成token 这一步是必不可少的。

    生成token

    我们创建一个admin用户并授予admin 角色绑定,使用下面的yaml文件创建admin用户并赋予他管理员权限,然后就可以通过token 登陆dashbaord,这种认证方式本质实际上是通过Service Account 的身份认证加上Bearer token请求 API server 的方式实现,参考 Kubernetes 中的认证

    1.在node节点上创建:vim admin-sa.yaml

    kind: ClusterRoleBinding
    apiVersion: rbac.authorization.k8s.io/v1beta1
    metadata:
      name: admin
      annotations:
        rbac.authorization.kubernetes.io/autoupdate: "true"
    roleRef:
      kind: ClusterRole
      name: cluster-admin
      apiGroup: rbac.authorization.k8s.io
    subjects:
    - kind: ServiceAccount
      name: admin
      namespace: kube-system
    ---
    apiVersion: v1
    kind: ServiceAccount
    metadata:
      name: admin
      namespace: kube-system
      labels:
        kubernetes.io/cluster-service: "true"
        addonmanager.kubernetes.io/mode: Reconcile

      kubectl create -f admin-sa.yaml

     2.上面的admin用户创建完成后我们就可以获取到该用户对应的token了,如下命令:

     

     下面就是生成的admin-token就可以去dashboard界面验证登陆了:

     然后在dashboard登录页面上直接使用上面得到的token字符串即可登录,这样就可以拥有管理员权限操作整个kubernetes集群的对象,当然你也可以为你的登录用户新建一个指定操作权限的用户。

     3.输入令牌登陆:

  • 相关阅读:
    Nginx的编译,和简单的配置问题
    项目课DNS主域名解析服务器(四)
    项目课DHCP服务(三)
    项目课PXE自动装机(二)
    Nginx 详细讲解
    ansible批量管理工具的搭建与简单的操作
    SUID,SGID,SBIT这些到底是什么
    密码截取
    分治和递归的算法实现求数组A[n]中的前k个最大数
    回溯法实现求1n个自然数中r个数的组合
  • 原文地址:https://www.cnblogs.com/fuyuteng/p/9501058.html
Copyright © 2020-2023  润新知