10.3. 管理角色绑定
向用户或组添加或 绑定 角色 可让用户或组获得该角色授予的相关访问权限。您可以使用 oc adm policy 命令向用户和组添加和移除角色。
在使用以下操作为本地角色绑定管理用户或组的关联角色时,可以通过 -n 标志来指定项目:如果未指定,则使用当前项目。
| 命令 | 描述 |
|---|---|
|
| 指出哪些用户可以对某一资源执行某种操作。 |
|
| 将给定角色绑定到当前项目中的指定用户。 |
|
| 从当前项目中的指定用户移除指定角色。 |
|
| 移除当前项目中的指定用户及其所有角色。 |
|
| 将给定角色绑定到当前项目中的指定组。 |
|
| 从当前项目中的指定组移除给定角色。 |
|
| 移除当前项目中的指定组及其所有角色。 |
|
|
可以与 |
您也可以使用以下操作管理集群角色绑定。因为集群角色绑定使用没有命名空间的资源,所以这些操作不使用 -n 标志。
| 命令 | 描述 |
|---|---|
|
| 将给定角色绑定到集群中所有项目的指定用户。 |
|
| 从集群中所有项目的指定用户移除给定角色。 |
|
| 将给定角色绑定到集群中所有项目的指定组。 |
|
| 从集群中所有项目的指定组移除给定角色。 |
|
|
可以与 |
例如,您可以运行以下命令,将 admin 角色添加到 joe-project 中的 alice 用户:
$ oc adm policy add-role-to-user admin alice -n joe-project
然后您可以查看本地角色绑定,并在输出中验证添加情况:
$ oc describe rolebinding.rbac -n joe-project
Name: admin
Labels: <none>
Annotations: <none>
Role:
Kind: ClusterRole
Name: admin
Subjects:
Kind Name Namespace
---- ---- ---------
User joe
Name: admin-0
Labels: <none>
Annotations: <none>
Role:
Kind: ClusterRole
Name: admin
Subjects:
Kind Name Namespace
---- ---- ---------
User alice
Name: system:deployers
Labels: <none>
Annotations: <none>
Role:
Kind: ClusterRole
Name: system:deployer
Subjects:
Kind Name Namespace
---- ---- ---------
ServiceAccount deployer joe-project
Name: system:image-builders
Labels: <none>
Annotations: <none>
Role:
Kind: ClusterRole
Name: system:image-builder
Subjects:
Kind Name Namespace
---- ---- ---------
ServiceAccount builder joe-project
Name: system:image-pullers
Labels: <none>
Annotations: <none>
Role:
Kind: ClusterRole
Name: system:image-puller
Subjects:
Kind Name Namespace
---- ---- ---------
Group system:serviceaccounts:joe-project