一、背景示例
用户:zhangsan
ns: b2b-pro-uat
允许用户zhangsan只访问b2b-pro-uat的ns下的pod,以及deploy。
二、创建SA
[root@k8s-master05 tmp]# kubectl -n b2b-pro-uat create sa zhangsan
serviceaccount/zhangsan created
三、创建对应的Role
PS:若不了解各自resoureces对应的apiGroup可用kubectl api-resources -o wide 查询对应关系。例如deploy对应的apiGroups可进行以下查询:
[root@k8s-master05 tmp]# kubectl api-resources -o wide|grep deploy
deployments deploy apps true Deployment [create delete deletecollection get list patch update watch]
uniteddeployments ud apps.kruise.io true UnitedDeployment [delete deletecollection get list patch create update watch]
第三列对应的就为apiGroups的值,此处为apps,所以yaml如下:
[root@k8s-master05 tmp]