k8s dashboard token 生成/获取

news/2025/1/15 14:53:18/

创建示例用户

kubernetes/dashboard/blob/master/docs/user/access-control/creating-sample-user.md#creating-sample-user" target="_blank" rel="noopener nofollow noopener noreferrer">

在本指南中,我们将了解如何使用 Kubernetes 的服务帐户机制创建新用户、授予该用户管理员权限并使用与该用户绑定的承载令牌登录仪表板。

对于以下每个和的代码片段ServiceAccountClusterRoleBinding您都应该将它们复制到新的清单文件(如)中,dashboard-adminuser.yaml并使用kubectl apply -f dashboard-adminuser.yaml来创建它们。

创建服务帐号

kubernetes/dashboard/blob/master/docs/user/access-control/creating-sample-user.md#creating-a-service-account" target="_blank" rel="noopener nofollow noopener noreferrer">

我们首先admin-user在命名空间中创建具有名称的服务帐户。kubernetes-dashboard

apiVersion: v1
kind: ServiceAccount
metadata:name: admin-usernamespace: kubernetes-dashboard

创建 ClusterRoleBinding

kubernetes/dashboard/blob/master/docs/user/access-control/creating-sample-user.md#creating-a-clusterrolebinding" target="_blank" rel="noopener nofollow noopener noreferrer">

kops在大多数情况下,使用kubeadm或任何其他流行工具配置集群后,ClusterRole cluster-admin集群中已经存在。我们可以使用它并ClusterRoleBinding为我们的创建一个ServiceAccount。如果它不存在,那么您需要先创建此角色并手动授予所需的权限。

apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:name: admin-user
roleRef:apiGroup: rbac.authorization.k8s.iokind: ClusterRolename: cluster-admin
subjects:
- kind: ServiceAccountname: admin-usernamespace: kubernetes-dashboard

获取 ServiceAccount 的 Bearer Token

kubernetes/dashboard/blob/master/docs/user/access-control/creating-sample-user.md#getting-a-bearer-token-for-serviceaccount" target="_blank" rel="noopener nofollow noopener noreferrer">

现在我们需要找到可以用来登录的令牌。执行以下命令:

kubectl -n kubernetes-dashboard create token admin-user

它应该打印类似这样的内容:

eyJhbGciOiJSUzI1NiIsImtpZCI6IiJ9.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJrdWJlcm5ldGVzLWRhc2hib2FyZCIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJhZG1pbi11c2VyLXRva2VuLXY1N253Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQubmFtZSI6ImFkbWluLXVzZXIiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC51aWQiOiIwMzAzMjQzYy00MDQwLTRhNTgtOGE0Ny04NDllZTliYTc5YzEiLCJzdWIiOiJzeXN0ZW06c2VydmljZWFjY291bnQ6a3ViZXJuZXRlcy1kYXNoYm9hcmQ6YWRtaW4tdXNlciJ9.Z2JrQlitASVwWbc-s6deLRFVk5DWD3P_vjUFXsqVSY10pbjFLG4njoZwh8p3tLxnX_VBsr7_6bwxhWSYChp9hwxznemD5x5HLtjb16kI9Z7yFWLtohzkTwuFbqmQaMoget_nYcQBUC5fDmBHRfFvNKePh_vSSb2h_aYXa8GV5AcfPQpY7r461itme1EXHQJqv-SN-zUnguDguCTjD80pFZ_CmnSE1z9QdMHPB8hoB4V68gtswR1VLa6mSYdgPwCHauuOobojALSaMc3RH7MmFUumAgguhqAkX3Omqd3rJbYOMRuMjhANqd08piDC3aIabINX6gP5-Tuuw2svnV6NYQ

查看Kubernetes 文档有关 ServiceAccount 的 API 令牌的更多信息。

获取 ServiceAccount 的长期 Bearer Token

kubernetes/dashboard/blob/master/docs/user/access-control/creating-sample-user.md#getting-a-long-lived-bearer-token-for-serviceaccount" target="_blank" rel="noopener nofollow noopener noreferrer">

我们还可以创建一个与服务账户绑定的带有secret的token,该token会保存在Secret中:

apiVersion: v1
kind: Secret
metadata:name: admin-usernamespace: kubernetes-dashboardannotations:kubernetes.io/service-account.name: "admin-user"   
type: kubernetes.io/service-account-token

Secret创建完成后,我们可以执行以下命令来获取Secret中保存的Token:

kubectl get secret admin-user -n kubernetes-dashboard -o jsonpath={".data.token"} | base64 -d

查看Kubernetes 文档有关 ServiceAccount 的长效 API 令牌的更多信息。

访问仪表板

kubernetes/dashboard/blob/master/docs/user/access-control/creating-sample-user.md#accessing-dashboard" target="_blank" rel="noopener nofollow noopener noreferrer">

现在复制令牌并将其粘贴到Enter token登录屏幕上的字段中。

kubernetes/dashboard/blob/master/docs/images/signin.png" target="_blank" rel="noopener nofollow noopener noreferrer">

kubernetes/dashboard/raw/master/docs/images/signin.png" alt="登入" style="outline: none;" />

单击Sign in按钮即可。您现在以管理员身份登录。

kubernetes/dashboard/blob/master/docs/images/overview.png" target="_blank" rel="noopener nofollow noopener noreferrer">

kubernetes/dashboard/raw/master/docs/images/overview.png" alt="概述" style="outline: none;" />

清理和后续步骤

kubernetes/dashboard/blob/master/docs/user/access-control/creating-sample-user.md#clean-up-and-next-steps" target="_blank" rel="noopener nofollow noopener noreferrer">

删除管理员ServiceAccountClusterRoleBinding

kubectl -n kubernetes-dashboard delete serviceaccount admin-user
kubectl -n kubernetes-dashboard delete clusterrolebinding admin-user

为了了解有关如何在 Kubernetes 中授予/拒绝权限的更多信息,请阅读官方验证&授权文档。

https://github.com/kubernetes/dashboard/blob/master/docs/user/access-control/creating-sample-user.md


http://www.ppmy.cn/news/1525794.html

相关文章

Java应用压测工具JMeter

目录 1、下载JMeter 2、配置环境变量 3、配置语音 4、使用 1、下载JMeter Apache JMeter - Apache JMeter™ 千万别下载这个,会报错、 千万别下载这个,会报错、 千万别下载这个,会报错 下载这个,失败多下载几次 2、配置环…

http的请求方式

HTTP协议支持多种请求方法,每种方法都有其特定的用途和场景。以下是HTTP中最常用的几种请求方法及其用途: ‌‌GET‌:用于请求服务器发送资源,通常用于请求数据。GET请求常用于获取信息,如查询操作,其参数附…

明天考教资之作文素材

草木不经霜雪,则生意不顾;吾人不经忧患,则德惠不成。人生的大海波澜壮阔,纵然狂风骤雨卷起千堆雪,海也只当吹皱了春水,永远吹不走的,是那颗永恒的直面磨难的心。 追风赶月莫停留,平芜…

ISP住宅网络的特点是什么

在互联网服务领域,ISP(互联网服务提供商)住宅网络是连接家庭用户与互联网世界的重要桥梁。随着技术的发展和用户需求的增长,ISP住宅网络已经成为现代生活中不可或缺的一部分。本文将探讨ISP住宅网络的特点、它所带来的优势以及在不…

【CSS|第1期】网页设计的演变:从表格布局到Grid布局

日期:2024年9月9日 作者:Commas 签名:(ง •_•)ง 积跬步以致千里,积小流以成江海…… 注释:如果您觉在这里插入代码片得有所帮助,帮忙点个赞,也可以关注我,我们一起成长;如果有不对…

分治算法之归并排序详细解读(附带Java代码解读)

分治算法中的归并排序(Merge Sort) **归并排序(Merge Sort)是一种基于分治法(Divide and Conquer)**的排序算法。其核心思想是将数组递归地分成若干个子数组,分别对每个子数组进行排序&#xf…

【计算机网络 - 基础问题】每日 3 题(四)

✍个人博客:Pandaconda-CSDN博客 📣专栏地址:http://t.csdnimg.cn/fYaBd 📚专栏简介:在这个专栏中,我将会分享 C 面试中常见的面试题给大家~ ❤️如果有收获的话,欢迎点赞👍收藏&…

25届计算机专业选题推荐-基于python的线上拍卖会管理系统【python-爬虫-大数据定制】

💖🔥作者主页:毕设木哥 精彩专栏推荐订阅:在 下方专栏👇🏻👇🏻👇🏻👇🏻 实战项目 文章目录 实战项目 一、基于python的线上拍卖会管理…