目录
[4. RBAC - RoleBinding](#4. RBAC - RoleBinding)
[免费获取并激活 CKA_v1.31_模拟系统](#免费获取并激活 CKA_v1.31_模拟系统)
[3)、编辑 role-1 权限](#3)、编辑 role-1 权限)
[5)、创建 role和 rolebinding](#5)、创建 role和 rolebinding)
4. RBAC - RoleBinding
免费获取并激活 CKA_v1.31_模拟系统
题目
您必须在以下Cluster/Node上完成此考题:
Cluster Master node Worker node
CKS00404 master node01
.
设置配置环境:
candidate@node01\]$ kubectl config use-context CKS00404 **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。
开始操作:
1)、切换集群
bash
kubectl config use-context CKS00404
2)、查看SA和role
bash
kubectl describe rolebindings -n db
CKS模拟系统

3)、编辑 role-1 权限
bash
kubectl edit role role-1 -n db
将rules内容按照如下修改
bash
resourceVersion: "41127"
uid: 2fd0eebe-27ef-4928-8173-22c3924c53da
rules:
- apiGroups:
- ""
resources:
- services
verbs:
- get
CKS模拟系统截图
4)、检查role
bash
kubectl describe role role-1 -n db
CKS模拟系统截图

5)、创建 role和 rolebinding
bash
#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
bash
kubectl describe rolebindings -n db
CKS模拟系统截图

CKA高仿真环境简单演示视频