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

k8s的权限

来自博客:25-k8s集群中-RBAC用户角色资源权限_权限 资源 角色-CSDN博客

一.RBAC概述(基于角色的访问控制

1.图解

用户:

        1.user

        2.serviceAccount

        3.Group

用户角色

        1.Role:局部资源角色

        2.clusterRole:全局资源角色额

角色绑定:

        1.RoleBinding

        2.ClisterRolebinding

2.集群默认的角色

kubectl get clusterrole | grep -v systemadmin:主要用于授权命名空间所有读写的权限
cluster:admin超级管理员,有集群所有权限
edit:允许对大多数对象进行读写操作,不允许查看或者修改角色,角色绑定
view:允许对命名空间大多数对象进行读写,不允许查看角色,角色绑定

二.用户的创建流程

1.用户的创建

   (1)ssl流程介绍

       实际上k8s中的根证书在kubeadmin部署的时候,以及自动生成了,k8s是模拟ca机构,给自己办法证书,也验证自己,所以证书中有私钥,公钥等;

         本质上讲,k8s的用户就是一个文件,该文件在当前登陆用户的家目录下;这个文件config,就代表我是谁;但角色和权限信息在其他位置

ls ./kube/config

(2)生成用户证书 

        一个用户一个证书,这个用户证书,即使用来生成用户文件的(也就是家目录下的config)

(3)生成kubecongi用户授权文件

        有了这个授权文件,就像鱼拥有了一个用户

        但是还没有任何权限,无法使用

2.创建角色和规则

        通过资源清单的方式,创建角色和规则

        角色:

role:局部资源角色
clusterole:全局资源角色

        规则:这角色的权限,能使用 什么资源,不能使用什么资源

kubectl api-resource
kubectl get role

3.角色的绑定

        根据角色的不同,对应不同绑定资源清单的编写

rolebinding
clusterbinding

        只要角色和用户绑定完成,RBAC的整个流程就结束了

        我们创建成功一个带有特定权限的用户,就可以分发给同事进行使用

4.把创建好的文件,发送给同事就可以使用了

kubectl get pod --kubeconfig=xinjizhiwa.kubeconfig:指定使用的集群认证配置文件将文件拷贝到 ./kube/config下就不用指定文件位置了

5.流程总结

6.用户组

        只要拥有了用户组,我们创建用户的时候,签名中“O”字段,与用户组名相同,那么创建出来的用户,就拥有了用户组的权限,就不在需要配置角色、绑定了;方便了很多;

7.serviceAccount:集群内部资源权限

  #这里就是sa账号,指定sa的名称,请确认该账号是有权限访问K8S集群的哟!
      serviceAccountName: py02

http://www.xdnf.cn/news/16365.html

相关文章:

  • tlias智能学习辅助系统--Filter(过滤器)
  • Ansible列出常见操作系统的发行版,Ansible中使用facts变量的两种方式
  • CH341 Linux驱动 没有 /dev/ttyCH341USB0
  • Linux文件系统管理——NFS服务端的安装配置与NFS客户端的安装与挂载实操教程
  • 【AI】联网模式
  • Scrapy分布式爬虫数据统计全栈方案:构建企业级监控分析系统
  • GPU运维常见问题处理
  • 【C++】stack和queue的模拟实现
  • Java基础day17-LinkedHashMap类,TreeMap类和集合工具类
  • 基于POD和DMD方法的压气机叶片瞬态流场分析与神经网络预测
  • 基于遗传算法的多无人车协同侦察与安全保护策略优化
  • CUDA杂记--FP16与FP32用途
  • Redis面试精讲 Day 5:Redis内存管理与过期策略
  • 汇编语言中的通用寄存器及其在逆向工程中的应用
  • 计划任务(at和cron命令介绍及操作)
  • MySQL事务原理
  • 应用程序 I/O 接口
  • 【MySQL 数据库】MySQL基本查询(第二节)
  • 系统性学习C语言-第二十三讲-文件操作
  • 谷歌无法安装扩展程序解决方法(也许成功)
  • Kubernetes 与 Docker的爱恨情仇
  • STM32-定时器的基本定时/计数功能实现配置教程(寄存器版)
  • 【工具】好用的浏览器AI助手
  • 用unity开发教学辅助软件---幼儿绘本英语拼读
  • 【深度学习新浪潮】什么是GUI Agent?
  • java面试复习(spring相关系列)
  • 【机器学习-2】 | 决策树算法基础/信息熵
  • 【RocketMQ】一分钟了解RocketMQ
  • Earth靶机攻略
  • linux线程概念和控制