Red Hat Training

A Red Hat training course is available for RHEL 8

第 33 章 为外部置备用户配置 IdM

作为系统管理员,您可以配置 Identity Management(IdM),以支持通过外部解决方案调配用户来管理身份。

外部置备系统的管理员不必使用 ipa 实用程序,而是可以使用 ldapmodify 实用程序访问 IdM LDAP。管理员可以使用 ldapmodify 或 LDIF 文件从 CLI 添加个别阶段用户。

假设您作为 IdM 管理员完全信任外部调配系统,以仅添加经过验证的用户。但是,您不想为外部调配系统的管理员分配 用户管理员 的 IdM 角色,以便他们能够直接添加新的活动用户。

您可以配置脚本,以自动将外部调配系统创建的暂存用户移到活动用户

本章包含以下部分:

  1. 准备身份管理(IdM)以使用外部调配系统向 IdM 添加暂存用户。
  2. 创建脚本,以将外部调配系统添加的用户从暂存移动到活动用户。
  3. 使用外部调配系统添加 IdM 暂存用户。您可以通过两种方式完成此操作:

其它材料

有关将 ldapmodify 用作完整 IdM 管理员的示例和模板,请执行需要较高特权的用户和组管理操作,请参阅使用 ldapmodify

33.1. 准备 IdM 帐户以自动激活暂存用户帐户

此流程演示了如何配置供外部置备系统使用的两个 IdM 用户帐户。通过将帐户添加到具有适当密码策略的组中,您可以启用外部调配系统来管理 IdM 中的用户调配。在以下部分中,外部系统用于添加暂存用户的用户帐户命名为 provisionator。用于自动激活暂存用户的用户帐户命名为 Activator

先决条件

  • 执行该步骤的主机已注册到 IdM 中。

流程

  1. 以 IdM 管理员身份登录:

    $ kinit admin
  2. 创建名为 provisionator 的用户,该用户具有用于添加暂存用户的特权。

    1. 添加置备程序用户帐户:
    $ ipa user-add provisionator --first=provisioning --last=account --password
    1. 为调配器用户授予所需的特权。

      1. 创建自定义角色 System Provisioning 以管理添加阶段用户:

        $ ipa role-add --desc "Responsible for provisioning stage users" "System Provisioning"
      2. 添加 Stage User Provisioning 特权到该角色。这个权限提供了添加阶段用户的功能:

        $ ipa role-add-privilege "System Provisioning" --privileges="Stage User Provisioning"
      3. 将置备程序用户添加到角色中:

        $ ipa role-add-member --users=provisionator "System Provisioning"
      4. 验证 IdM 中是否存在置备程序:
      $ ipa user-find provisionator --all --raw
      --------------
      1 user matched
      --------------
        dn: uid=provisionator,cn=users,cn=accounts,dc=idm,dc=example,dc=com
        uid: provisionator
        [...]
  3. 创建用户 Activator,该用户具有管理用户帐户的特权。

    1. 添加激活器用户帐户:

      $ ipa user-add activator --first=activation --last=account --password
    2. 通过将用户添加到默认 User Administrator 角色来授予活动器用户所需的权限:

      $ ipa role-add-member --users=activator "User Administrator"
  4. 为应用程序帐户创建用户组:

    $ ipa group-add application-accounts
  5. 更新组的密码策略。以下策略可防止帐户的密码过期和锁定,但通过要求复杂的密码来弥补潜在的风险:

    $ ipa pwpolicy-add application-accounts --maxlife=10000 --minlife=0 --history=0 --minclasses=4 --minlength=8 --priority=1 --maxfail=0 --failinterval=1 --lockouttime=0
  6. (可选)验证 IdM 中是否存在密码策略:

    $ ipa pwpolicy-show application-accounts
      Group: application-accounts
      Max lifetime (days): 10000
      Min lifetime (hours): 0
      History size: 0
    [...]
  7. 将置备和激活帐户添加到应用程序帐户的组中:

    $ ipa group-add-member application-accounts --users={provisionator,activator}
  8. 更改用户帐户的密码:

    $ kpasswd provisionator
    $ kpasswd activator

    需要更改密码,因为新的 IdM 用户密码会立即过期。