本文主要是介绍2024 CKS 题库 | 4、RBAC - RoleBinding,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
CKS 题库 4、RBAC - RoleBinding
Context
绑定到 Pod 的 ServiceAccount 的 Role 授予过度宽松的权限。完成以下项目以减少权限集。
Task
一个名为 web-pod 的现有 Pod 已在 namespace db 中运行。
编辑绑定到 Pod 的 ServiceAccount service-account-web 的现有 Role,仅允许只对 services 类型的资源执行 get 操作。
在 namespace db 中创建一个名为 role-2 ,并仅允许只对 namespaces 类型的资源执行 delete 操作的新 Role。
创建一个名为 role-2-binding 的新 RoleBinding,将新创建的 Role 绑定到 Pod 的 ServiceAccount。
注意:请勿删除现有的 RoleBinding。
参考
https://kubernetes.io/zh/docs/reference/access-authn-authz/rbac/#role-and-clusterole
https://kubernetes.io/zh-cn/docs/reference/access-authn-authz/rbac/#一些命令行工具
解答:
切换集群
kubectl config use-context KSCH00201
查看 ServiceAccount rolebinding 对应关系
kubectl -n db describe rolebindings
编辑 role-1 权限
kubectl -n db edit role role-1
添加如下
rules:
- apiGroups:- ""resources:- servicesverbs:- get
检查
kubectl -n db describe role role-1
在db命名空间,创建名为role-2的role,并且通过rolebinding绑定service-account-web,只允许对namespaces做delete操作。
记住 --verb是权限,可能考delete或者update等 --resource是对象,可能考namespaces或者persistentvolumeclaims等。
kubectl -n db create role role-2 --verb=delete --resource=namespaces
kubectl -n db create rolebinding role-2-binding --role=role-2 --serviceaccount=db:service-account-web
检查
kubectl -n db describe rolebindings
这篇关于2024 CKS 题库 | 4、RBAC - RoleBinding的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!