第 33 章 在 IdM 中使用 Ansible playbook 管理基于角色的访问控制
基于角色的访问控制 (RBAC) 是一种基于角色和特权定义的策略中立访问控制机制。在 Identity Management (IdM) 中的 RBAC 组件是角色、权限和权限:
- Permissions 授予执行特定任务的权利,如添加或删除用户、修改组,并启用 读权限。
- Privileges(特权) 结合了权限,例如添加新用户所需的所有权限。
- Roles(角色) 向用户、用户组、主机或主机组授予一组特权。
尤其是在大型公司,使用 RBAC 可以帮助创建具有各个职责领域的管理员分层系统。
本章介绍了使用 Ansible playbook 管理 RBAC 时执行的以下操作:
33.1. IdM 中的权限
权限是基于角色的访问控制的最低级别单元,它们定义这些操作所应用到的 LDAP 条目。与构建块类似,可以根据需要将权限分配给多个特权。
一个或多个权利定义了允许的操作 :
-
write
-
读取
-
搜索
-
compare
-
添加
-
删除
-
all
这些操作适用于三个基本目标:
-
subtree
:域名 (DN);此 DN 下的子树 -
target filter
:LDAP 过滤器 -
target
:可以带有通配符的 DN 指定条目
此外,以下方便选项可设置对应的属性:
-
type
:对象类型(用户、组等);设置subtree
和target filter
-
memberof
:组成员;设置target filter
-
targetgroup
:授予修改特定组的权限(如授予管理组成员资格的权限);设置target
使用 IdM 权限,您可以控制哪些用户有权访问哪些对象,甚至控制这些对象的属性。IdM 允许您允许或阻止单个属性,或更改特定 IdM 功能(如用户、组或 sudo)的所有可见性,适用于所有匿名用户、所有经过身份验证的用户,或者只更改一组特定的特权用户。
例如,如果管理员只想将用户或组的访问权限限制到这些用户或组需要访问的特定部分,并且使其他部分完全隐藏于他们,此方法的灵活性对管理员很有用。
注意
权限不能包含其他权限。