在RBAC中的几个概念:

Rules:规定一组可以在不同api group上的资源执行的规则(verbs)
Role与ClusterRoles:都是包括一组规则(rules)两者不同在于,Role针对的是一个namespace中,ClusterRoles针对整个集群
Subject:有三种Subjects,Service Account、User Account、Groups,参照官方文档主要区别是User Account针对人,Service Accounts针对运行在Pods中运行的进程。
RoleBindings与ClusterRoleBindins:将Subject绑定到Role或ClusterRoles。其区别在于:RoleBinding将使规则在命名空间内生效,而ClusterRoleBinding将使规则在所有命名空间中生效

验证如下

创建空间 生成私钥和证书
kubectl create namespace test
openssl genrsa -out wolken.key 2048
openssl req -new -key wolken.key -out wolken.csr -subj "/CN=wolken/O=test"
openssl x509 -req -in wolken.csr -CA /etc/kubernetes/pki/ca.crt -CAkey /etc/kubernetes/pki/ca.key -CAcreateserial -out wolken.crt -days 30创建用户
[root@master ssl]# kubectl config set-credentials wolken --client-certificate=/root/ssl/wolken.crt  --client-key=/root/ssl/wolken.key
User "wolken" set.创建content
[root@master ssl]# kubectl config set-context wolken-context --cluster=kubernetes --namespace=test --user=wolken
Context "wolken-context" created.用wolken用户查看pods发现没有权限
[root@master ssl]# kubectl --context=wolken-context get pods
Error from server (Forbidden): pods is forbidden: User "wolken" cannot list resource "pods" in API group "" in the namespace "test"给wolken授权
[root@master ssl]# cat role.yml
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:namespace: testname: role-hy
rules:
- apiGroups: ["","extensions","apps"]resources: ["pods"]verbs: ["get","watch","list"][root@master ssl]# kubectl apply -f role.yml
role.rbac.authorization.k8s.io/role-hy created[root@master ssl]# cat role-bind.yml
kind: RoleBinding
apiVersion: rbac.authorization.k8s.io/v1beta1
metadata:name: rolebind-hynamespace: test
subjects:
- kind: Username: wolken
roleRef:kind: Rolename: role-hyapiGroup: ""发现已经可以了
kubectl --context=wolken-context get pods

UserAccount权限控制相关推荐

  1. vue-element-admin整合spring-boot实现权限控制之用户管理篇

    vue-element-admin整合spring-boot实现权限控制之用户管理篇 0 引言 距离笔者上次利用vue-element-admin项目整合后台spring-boot项目打通前后端权限控 ...

  2. nginx+lua(openresty)实现黑/白名单权限控制

            openresty在nginx基础上集成了很多功能,比如可以直接调用redis,mysql,http接口等服务,比较流行的网关kong就是通过openresty实现的.日常开发和运维离 ...

  3. Zend Framework——权限控制与认证

    Zend Framework Acl与Auth--权限控制与认证 Created with Raphaël 2.1.2 认证开始 登录 发送用户名,密码及数据库连接 校验工作 结果处理 认证结束 步骤 ...

  4. mysql用户控制登录_MySql用户权限控制_MySQL

    bitsCN.com MySql用户权限控制 本文将介绍MySql创建帐号,删除帐号,设置和介绍各种帐号的权限 创建用户帐号: www.bitsCN.com [sql] CREATE USER use ...

  5. 前、后端分离权限控制设计和实现思路

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试文章 来源:8rr.co/9QUT 简述 近几年随着react.angu ...

  6. cvs linux权限,Linux下CVS+ACL的权限控制是什么? 爱问知识人

    考试大Linux站整理:我的CVS服务器端是在linux下,我安装了cvs-1.11.22-cvsacl-1.2.5-patched.tar.gz,利用CVS+ACL来做权限控制.但是现在遇到几个问题 ...

  7. Java访问权限控制

    面向对象的核心思想之一就是封装,只把有限的方法和成员公开给别人,这也是迪米特法则的内在要求,是外部调用方对方法体内的实现细节知道得尽可能少. 如何实现封装呢? 需要使用某些关键字来限制外部对类内属性和 ...

  8. 基于RESTful API 怎么设计用户权限控制?

    作者:JC_Huang http://www.jianshu.com/p/db65cf48c111 1   前言 有人说,每个人都是平等的: 也有人说,人生来就是不平等的: 在人类社会中,并没有绝对的 ...

  9. 8.Spring Security 权限控制

    Spring Security权限控制可以配合授权注解使用,具体有哪些注解可以参考Spring-Security保护方法.接着上一节,要开启这些注解,只需要在Spring Security配置文件中添 ...

最新文章

  1. 为什么要选择html5,5分钟告诉你,为什么要学HTML5大前端
  2. [Android]_[初级]_[sdk docs reference api 文档打开慢的解决办法]
  3. FileStream实现多线程断点续传(已封装)
  4. C# 对Outlook联系人的增、删、查
  5. 3行代码Python搞定图片清晰度识别,原来我们看到不一定是这样的
  6. php 函数 中文,PHP语言之PHP中文函数连载(二)
  7. sqoop建表_Sqoop基础教程
  8. lisp中getkword输入默认_2分钟学会在Word中制作田字格 米字格 书法练字再也不用买本子了...
  9. Java线程池ExecutorService
  10. TCPIP详解三次握手和四次挥手
  11. 在windows上安装 chocolatey.1.1.0.nupkg
  12. Mbed记录 STM32F207ZG板子引脚图
  13. 神经内科常用评估量表,神经功能缺损评分量表
  14. DIV网页排版入门指南
  15. php ppt如何转换成pdf,ppt转pdf格式转换器 PPT批量转换成PDF 怎样把PPT格式转换成PDF格式...
  16. 面试官问我new Vue阶段做了什么?
  17. 1080i/p-HDTV
  18. java 字符串中判断字母大小写方法
  19. 关于make提示must been abled with the -std=c++11 or -std=gnu++11 compiler options
  20. 弱口令暴力破解详解(包含工具、字典下载地址)

热门文章

  1. 大鼠半月板撕裂模型动物模型 用于评估潜在药物的疗效的有效模型
  2. 【SVM预测】基于哈里斯鹰算法改进SVM实现数据回归预测Matlab代码
  3. AndroidStudio开发高德地图有些机型报java.lang.UnsatisfiedLinkError解决方案
  4. R中的假设检验(四)卡方检验
  5. 异步升压 内置mos升压芯片FP6298
  6. uni-app基于安卓使用sqlite
  7. ARM Cortex-A77架构解读
  8. 如何在SATA驱动装WinPE
  9. 浏览器主页被篡改为2345
  10. 微信公众号如何获取openid