DashBoard-身份验证

Posted fuyuteng

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了DashBoard-身份验证相关的知识,希望对你有一定的参考价值。

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

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

技术分享图片

我们可以看到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.输入令牌登陆:

技术分享图片

 

以上是关于DashBoard-身份验证的主要内容,如果未能解决你的问题,请参考以下文章

Firebase 身份验证不持久

教程4 - 验证和权限

Express实战 - 应用案例- realworld-API - 路由设计 - mongoose - 数据验证 - 密码加密 - 登录接口 - 身份认证 - token - 增删改查API(代码片段

js正则验证,邮箱,身份证

没有登录按钮的 Facebook 身份验证

React Router - 身份验证后重定向延迟