Red Hat Training

A Red Hat training course is available for RHEL 8

第 27 章 使用 CLI 在 IdM 中管理基于角色的访问控制

了解有关身份管理(IdM)中的基于角色的访问控制以及命令行界面(CLI)中运行的以下操作的更多信息:

27.1. IdM 中的基于角色的访问控制

与自助服务和委派访问控制相比,IdM 中的基于角色的访问控制(RBAC)向用户授予了完全不同的权限。

基于角色的访问控制由三个部分组成:

  • Permissions 授予执行特定任务的权利,如添加或删除用户、修改组和启用读权限。
  • Privileges(特权) 结合了权限,例如添加新用户所需的所有权限。
  • Roles(角色) 向用户、用户组、主机或主机组授予一组特权。

27.1.1. IdM 中的权限

权限是基于角色的访问控制的最低级别单元,它们定义这些操作所应用到的 LDAP 条目。与构建块类似,可以根据需要将权限分配给多个特权。
一个或多个权利定义了允许的操作 :

  • write
  • 读取
  • search
  • compare
  • add
  • delete
  • all

这些操作适用于三个基本目标

  • subtree:域名 (DN);此 DN 下的子树
  • target filter:LDAP 过滤器
  • target:可以带有通配符的 DN 指定条目

此外,以下方便选项可设置对应的属性:

  • type:对象类型(用户、组等);设置subtreetarget filter
  • memberof:组成员;设置 target filter
  • targetgroup:授予修改特定组的权限(如授予管理组成员资格的权限);设置 target

使用 IdM 权限,您可以控制哪些用户有权访问哪些对象,甚至控制这些对象的属性。IdM 允许您允许或阻止单个属性,或更改特定 IdM 功能(如用户、组或 sudo)的所有可见性,适用于所有匿名用户、所有经过身份验证的用户,或者只更改一组特定的特权用户。
例如,如果管理员只想将用户或组的访问权限限制到这些用户或组需要访问的特定部分,并且使其他部分完全隐藏于他们,此方法的灵活性对管理员很有用。

注意

权限不能包含其他权限。

27.1.2. 默认管理的权限

管理的权限是 IdM 默认附带的权限。它们的行为与用户创建的其他权限类似,但有以下区别:

  • 您无法删除它们或修改其名称、位置和目标属性。
  • 它们有三组属性:

    • Default 属性,用户无法修改它们,因为它们由 IdM 管理
    • Included 属性,它们是用户添加的额外属性
    • Excluded 属性,这些属性由用户删除

管理的权限适用于 default 和 included 属性集中显示的所有属性,但不应用到排除集中的所有属性。

注意

虽然您无法删除受管权限,但将其绑定类型设置为权限并从所有特权中删除托管权限会有效地禁用该权限。

所有受管权限的名称都以 System: 开头,例如 System: Add Sudo ruleSystem: Modify Services。IdM 的早期版本将不同的方案用于默认权限。例如,用户无法删除它们,而只能将它们分配到特权。这些默认权限大部分已转换为受管权限,但以下权限仍使用以前的方案:

  • 添加自动成员重新构建成员身份任务
  • 添加配置子条目
  • 添加复制协议
  • 证书删除冻结
  • 从 CA 获取证书状态
  • 读取 DNA 范围
  • 修改 DNA 范围
  • 读取 PassSync Manager 配置
  • 修改 PassSync Manager 配置
  • 阅读复制协议
  • 修改复制协议
  • 删除复制协议
  • 读取 LDBM 数据库配置
  • 请求证书
  • 请求证书忽略 CA ACL
  • 从不同主机请求证书
  • 从 CA 检索证书
  • 吊销证书
  • 写入 IPA 配置
注意

如果您试图通过命令行修改受管权限,系统不允许更改您无法修改的属性,命令会失败。如果您试图从 Web UI 修改受管权限,则无法修改的属性将被禁用。

27.1.3. IdM 中的特权

特权是一组适用于角色的权限。
虽然权限提供了执行单个操作的权限,但某些 IdM 任务需要多个权限才能成功。因此,特权组合了执行特定任务所需的不同权限。
例如,为新 IdM 用户设置帐户需要以下权限:

  • 创建新用户条目
  • 重置用户密码
  • 将新用户添加到默认 IPA 用户组

将这三个低级别任务合并到一个更高级别的任务中,例如名为 Add User,可使系统管理员更加轻松地管理角色。IdM 已包含几个默认权限。除了用户和用户组外,还将特权分配到主机和主机组,以及网络服务。这种方法允许精细控制一组主机上使用特定网络服务的操作。

注意

特权可能不包含其他特权。

27.1.4. IdM 中的角色

角色是用户为角色指定的特权列表。
实际上,权限授予执行给定低级别任务(如创建用户条目和向组添加一个条目)的能力,特权将高级别任务所需的一个或多个这些权限(如在给定组中创建新用户)组合在一起。角色根据需要收集权限:例如,用户管理员角色能够添加、修改和删除用户。

重要

角色用于对允许的操作进行分类。它们不用作实施特权升级或防止特权升级的工具。

注意

角色不能包含其他角色。

27.1.5. Identity Management 中的预定义角色

Red Hat Identity Management 提供以下预定义角色范围:

表 27.1. 身份管理中的预定义角色

角色特权描述

Enrollment Administrator

主机注册

负责客户端或主机、注册

helpdesk

改用户和重置密码,修改组成员身份

负责执行简单的用户管理任务

IT Security Specialist

Netgroups 管理员, HBAC 管理员, Sudo 管理员

负责管理安全策略,如基于主机的访问控制、sudo 规则

IT Specialist

主机管理员、主机组管理员、服务管理员、自动装载管理员

负责管理主机

Security Architect

委派管理员、复制管理员、写 IPA 配置、密码策略管理员

负责管理身份管理环境、创建信任、创建复制协议

User Administrator

用户管理员、组管理员、阶段用户管理员

负责创建用户和组