35.6. 修改 IdM ID 视图

身份管理(IdM)中的 ID 视图覆盖与特定 IdM 用户关联的 POSIX 属性值。按照以下步流程修改现有的 ID 视图。具体来说,它描述了如何修改 ID 视图以使名为 idm_user 的用户使用 /home/user_1234/ 目录作为用户主目录,而不是使用 host1.idm.example.com IdM 客户端上的 /home/idm_user/

先决条件

  • 具有对 host1.idm.example.com 的 root 访问权限。
  • 您已以具有所需特权的用户身份登录,如 admin
  • 您为 idm_user 配置了一个 ID 视图,它适用于 host1 IdM 客户端。

步骤

  1. 以 root 用户身份,创建您希望 idm_userhost1.idm.example.com 上作为用户主目录使用的目录:

    [root@host1 /]# mkdir /home/user_1234/
  2. 更改目录的所有权:

    [root@host1 /]# chown idm_user:idm_user /home/user_1234/
  3. 显示 ID 视图,包括当前要应用 ID 视图的主机。显示名为 example_for_host1 的 ID 视图:

    $ ipa idview-show example_for_host1 --all
      dn: cn=example_for_host1,cn=views,cn=accounts,dc=idm,dc=example,dc=com
      ID View Name: example_for_host1
      User object override: idm_user
      Hosts the view applies to: host1.idm.example.com
      objectclass: ipaIDView, top, nsContainer

    输出显示 ID 视图当前应用于 host1.idm.example.com

  4. 修改 example_for_host1 ID 视图的用户覆盖。覆盖用户主目录:

    • 输入 ipa idoverrideuser-add 命令
    • 添加 ID 视图的名称
    • 添加用户名,也称为锚
    • 添加 --homedir 选项:

      $ ipa idoverrideuser-mod example_for_host1 idm_user --homedir=/home/user_1234
      -----------------------------
      Modified a User ID override "idm_user"
      -----------------------------
        Anchor to override: idm_user
        User login: user_1234
        Home directory: /home/user_1234/

    要获得可用选项的列表,请运行 ipa idoverrideuser-mod --help

  5. 要将新配置立即应用到 host1.idm.example.com 系统:

    1. 以 root 身份通过 SSH 连接到系统:

      $ ssh root@host1
      Password:
    2. 清除 SSSD 缓存:

      root@host1 ~]# sss_cache -E
    3. 重启 SSSD 守护进程:
    root@host1 ~]# systemctl restart sssd

验证步骤

  1. idm_user用户身份,通过 SSH 连接到 host1:

    [root@r8server ~]# ssh idm_user@host1.idm.example.com
    Password:
    
    Last login: Sun Jun 21 22:34:25 2020 from 192.168.122.229
    [user_1234@host1 ~]$
  2. 打印工作目录:

    [user_1234@host1 ~]$ pwd
    /home/user_1234/