51.4. 使用 Ansible 创建一个具有域解析顺序的 ID 视图


您可以使用 ansible-freeipa idview 模块在身份管理(IdM)部署中添加、修改和删除 ID 视图。例如,您可以创建一个带有域解析顺序的 ID 视图,来启用短名称表示法。

短名称表示法使用短登录替换活动目录(AD)中的完整用户名,如 aduser05@ad.example.com,在本例中,使用 aduser05 替换。这意味着,当使用 SSH 登录到 IdM 客户端时,aduser05 可以输入 ssh aduser05@client.idm.example.com ,而不是 ssh aduser05@ad.example.com@client.idm.example.com。这同样适用于其他命令,如 id

完成此流程以使用 Ansible,来:

  • 定义一个冒号分开的域的字符串,用于短名称限定。在示例中,字符串是 ad.example.com:idm.example.com
  • 创建一个 ID 视图,其指示 SSSD 首先在字符串中标识的第一个域中搜索用户名。在示例中,这是 ad.example.com
  • 将 ID 视图应用到特定的主机。在示例中,这是 testhost.idm.example.com
注意

您只能将一个 ID 视图应用到一个 IdM 客户端。应用新的 ID 视图会自动删除以前的 ID 视图(如果适用)。

先决条件

  • 在控制节点上:

    • 您使用 Ansible 版本 2.15 或更高版本。
    • 您已安装 ansible-freeipa 软件包。
    • 您已在 ~/MyPlaybooks/ 目录中创建了一个带有 IdM 服务器的完全限定域名(FQDN)的 Ansible 清单文件
    • 您正在使用 RHEL 9.4 或更高版本。
    • 您已将 ipaadmin_password 存储在 secret.yml Ansible vault 中。
  • testhost.idm.example.com 是一个 IdM 客户端。
  • 目标节点,也就是在其上执行 ansible-freeipa 模块的节点,是 IdM 域的一部分,作为 IdM 客户端、服务器或副本。

流程

  1. 进到 ~/MyPlaybooks/ 目录,并使用以下内容创建一个 Ansible playbook 文件 add-id-view-with-domain-resolution-order.yml

    ---
    - name: Playbook to add idview and apply it to an IdM client
      hosts: ipaserver
      vars_files:
      - /home/<user_name>/MyPlaybooks/secret.yml
      become: false
      gather_facts: false
    
      tasks:
      - name: Add idview and apply it to testhost.idm.example.com
        ipaidview:
          ipaadmin_password: "{{ ipaadmin_password }}"
          name: test_idview
          host: testhost.idm.example.com
          domain_resolution_order: "ad.example.com:ipa.example.com"
  2. 运行 playbook。指定 playbook 文件、存储保护 secret.yml 文件的密码,以及清单文件:

    $ ansible-playbook --vault-password-file=password_file -v -i inventory add-id-view-with-domain-resolution-order.yml

验证

  1. SSH 到 testhost.idm.example.com
  2. 验证您是否只能使用短名称从 ad.example.com 域检索用户的信息。

    [root@testhost ~]# id aduser05
    uid=1916901102(aduser05) gid=1916900513(domain users) groups=1916900513(domain users)
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.