当前位置: 首页 > news >正文

山东联通网站备案公司官网网站搭建

山东联通网站备案,公司官网网站搭建,网站设计合同附件,济南英文网站建设在 k8s 集群的 RBAC 里有用到用户、组的概念,但是它又不直接管理这些资源,而是通过外部身份验证机制(Authentication Mechanisms)来管理和定义的,比如证书进行签名时,将其配置为 Subject: O system:master…

在 k8s 集群的 RBAC 里有用到用户、组的概念,但是它又不直接管理这些资源,而是通过外部身份验证机制(Authentication Mechanisms)来管理和定义的,比如证书进行签名时,将其配置为 Subject: O = system:masters, CN = kubernetes-admin。O 代表用户组,CN 是用户,这些都是通过签署证书管理的。 但是新版本可以直接通过命令去创建,我用的是 1.31
这些在集群管理权限的时候很重要,如何给用户生成相应的 kubeconfig 文件,下面就这个问题说明下,刚接触往往这块会比较懵逼

查看当前的用户组

可以把新建的用户放到这些组下,或者新建组都可以

kubectl get rolebindings <rolebinding-name> -n <namespace> -o json | jq '.subjects[] | select(.kind == "Group") | .name'
kubectl get clusterrolebindings <clusterrolebinding-name> -o json | jq '.subjects[] | select(.kind == "Group") | .name'

创建用户和组并授权

用户授权

  1. k8s 里kubeadm 命令有提供给用户创建 conf 的命令,下面我们来创建用户jane的 conf,所在的组是podreader,这个组也是我们新创建的没有任何权限,生成 conf 文件存在pod-reader-group.conf
kubeadm kubeconfig user --org podreader --client-name jane --validity-period 24h > pod-reader.conf
  1. 我们先通过上面这个 conf 文件查看下 pod,会爆没有权限的错误,属于预期范围,因为咱们的用户jane没有任何权限
# kubectl get pod --kubeconfig pod-reader.conf
Error from server (Forbidden): pods is forbidden: User "janegroup" cannot list resource "pods" in API group "" in the namespace "default"
  1. 这一步我们给jane授权,通过创建 role rolebinding
# cat pod-reader.yaml 
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:namespace: defaultname: pod-reader
rules:
- apiGroups: [""] # "" 标明 core API 组resources: ["pods"]verbs: ["get", "watch", "list"]# cat pod-reader-binding.yaml 
apiVersion: rbac.authorization.k8s.io/v1
# 此角色绑定允许 "jane" 读取 "default" 名字空间中的 Pod
# 你需要在该名字空间中有一个名为 “pod-reader” 的 Role
kind: RoleBinding
metadata:name: read-podsnamespace: default
subjects:
# 你可以指定不止一个“subject(主体)”
- kind: Username: jane # "name" 是区分大小写的apiGroup: rbac.authorization.k8s.io
roleRef:# "roleRef" 指定与某 Role 或 ClusterRole 的绑定关系kind: Role        # 此字段必须是 Role 或 ClusterRolename: pod-reader  # 此字段必须与你要绑定的 Role 或 ClusterRole 的名称匹配apiGroup: rbac.authorization.k8s.io
  1. 现在我们再执行下第二步的命令,会发现可以查看了,已经有查看 default ns 下pod 的权限,但是其他的 ns 仍然没有,因为 role 没有给其他的 ns 授权
kubectl apply -f pod-reader.yaml
kubectl apply -f pod-reader-binding.yaml

上面是给单个用户授权的,但是它所在的组podreader没有任何权限,所以需要再给他授权,方法和上面给用户授权类似

组授权

  1. 创建一个新的用户janegroup,所属组在podreader里,然后执行get pod 命令,是无法查看的,因为所属的组是没有权限的
# kubeadm kubeconfig user --org podreader --client-name janegroup --validity-period 24h > pod-reader-group.conf
# kubectl get pod --kubeconfig pod-reader-group.conf
Error from server (Forbidden): pods is forbidden: User "janegroup" cannot list resource "pods" in API group "" in the namespace "default"
  1. 下面我们给组podreader绑定权限,role 文件和上一步是一样的
cat pod-reader-binding-group.yaml
apiVersion: rbac.authorization.k8s.io/v1
# 此角色绑定允许 "jane" 读取 "default" 名字空间中的 Pod
# 你需要在该名字空间中有一个名为 “pod-reader” 的 Role
kind: RoleBinding
metadata:name: read-podsnamespace: default
subjects:
# 你可以指定不止一个“subject(主体)”
- kind: Groupname: podreader # "name" 是区分大小写的apiGroup: rbac.authorization.k8s.io
roleRef:# "roleRef" 指定与某 Role 或 ClusterRole 的绑定关系kind: Role        # 此字段必须是 Role 或 ClusterRolename: pod-reader  # 此字段必须与你要绑定的 Role 或 ClusterRole 的名称匹配apiGroup: rbac.authorization.k8s.io
  1. 再次执行查看命令就可以查看了,说明权限已生效
# kubectl get pod --kubeconfig pod-reader-group.conf
No resources found in default namespace.
http://www.yayakq.cn/news/226215/

相关文章:

  • 门户网站的建设公司万网经常清空网站
  • 公司建设网站的必要性网络推广外包注意哪些
  • 百度录入网站最好看免费观看高清大全城中之城
  • 住建培训网站保险公司发展规划
  • 网站建设方案书人员资金安排百度广告搜索引擎
  • wordpress search提示新乡网站搜索引擎优化
  • 网站建设应注意的问题旗袍网站架构
  • 可以自己做网站服务器不邢台同城交友
  • 丹徒网站建设咨询西安115个高风险区降为低风险
  • 网站建设开户行查询广州市软件开发有限公司
  • 河南省建设银行网站年报京东app下载安装
  • 网站做sem优化17网站一起做
  • 凡客装修海口seo网络推广
  • 如何做淘宝优惠券网站酒店网站建设公司
  • 网站建设要实现的目标网站排名工具
  • 想把公司的外部网站替换网站改版什么意思
  • 亲子游网站怎么做网站制作首选 新鸿儒
  • 网站开发怎么报价化妆品网站建设网站
  • 网站开发junke100用360打开自己做的网站有广告
  • 这么制作自己的网站古镇建网站公司
  • 手机网站建设网平潭县建设局网站
  • 网站建设需要考什么证如何制作公众号教程
  • 犀牛建设网站哈尔滨个人优化排名
  • 中国做网站找谁佛山市官网网站建设哪家好
  • 小米官方网站开发版在哪里淮安 网站建设:
  • 大城 网站wordpress 上传插件
  • 宿州市美丽乡村建设网站检测网站死链
  • 上海最专业的集团网站建设wordpress禁用新编辑器
  • 永久域名免费注册网站万能网页视频下载
  • 云端智能建站系统wordpress功能菜单怎么设置