目录
4. RBAC - RoleBinding
免费获取并激活 CKA_v1.31_模拟系统
题目
您必须在以下Cluster/Node上完成此考题:
Cluster Master node Worker node
CKS00404 master node01
.
设置配置环境:
[candidate@node01]$ kubectl config use-context CKS00404Context
绑定到 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。
开始操作:
1)、切换集群
kubectl config use-context CKS00404
2)、查看SA和role
kubectl describe rolebindings -n db
CKS模拟系统
3)、编辑 role-1 权限
kubectl edit role role-1 -n db
将rules内容按照如下修改
resourceVersion: "41127"
uid: 2fd0eebe-27ef-4928-8173-22c3924c53da
rules:
- apiGroups:
- ""
resources:
- services
verbs:
- get
CKS模拟系统截图
4)、检查role
kubectl describe role role-1 -n db
CKS模拟系统截图
5)、创建 role和 rolebinding
#db 命名空间,创建名为 role-2 的 role
kubectl create role role-2 --verb=delete --resource=namespaces -n db
#通过 rolebinding 绑定 service-account-web,只允许对 namespaces 做 delete 操作
kubectl create rolebinding role-2-binding --role=role-2 --serviceaccount=db:service-account-web -n db
6)、检查rolebindings
kubectl describe rolebindings -n db
CKS模拟系统截图
CKA高仿真环境简单演示视频