第 11 章 使用 Ansible playbook 管理 IdM 中的自助服务规则
本节介绍 Identity Management (IdM) 中的自助服务规则,并介绍如何使用 Ansible playbook 创建和编辑自助服务访问规则。自助服务访问控制规则允许 IdM 实体在其 IdM 目录服务器条目上执行指定操作。
11.1. 使用 Ansible 确保存在自助服务规则 复制链接链接已复制到粘贴板!
以下流程描述了如何使用 Ansible playbook 定义自助服务规则并确保它们在身份管理 (IdM) 服务器上存在。在本例中,新的 Users can manage their own name details 规则会授予用户更改其 givenname
、displayname
、title
和 initials
属性的权限。例如,这允许他们更改其显示名称或缩写(如果想更改)。
先决条件
在控制节点上:
- 您在使用 Ansible 版本 2.15 或更高版本。
-
已安装
freeipa.ansible_freeipa
集合。 - 示例假定在 ~/MyPlaybooks/ 目录中,您已创建了一个具有 IdM 服务器的完全限定域名(FQDN)的 Ansible 清单文件。
-
示例假定 secret.yml Ansible vault 存储了您的
ipaadmin_password
,并且您可以访问存储了保护 secret.yml 文件的密码的文件。
-
目标节点(这是执行
freeipa.ansible_freeipa
模块的节点)是作为 IdM 客户端、服务器或副本的 IdM 域的一部分。
流程
进入 ~/MyPlaybooks/ 目录:
cd ~/MyPlaybooks/
$ cd ~/MyPlaybooks/
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 创建位于
/usr/share/ansible/collections/ansible_collections/ansible_freeipa/playbooks/selfservice/ 目录中的
文件的副本:selfservice
-present.ymlcp /usr/share/ansible/collections/ansible_collections/freeipa/ansible_freeipa/playbooks/selfservice/selfservice-present.yml selfservice-present-copy.yml
$ cp /usr/share/ansible/collections/ansible_collections/freeipa/ansible_freeipa/playbooks/selfservice/selfservice-present.yml selfservice-present-copy.yml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
打开
selfservice-present-copy.yml
Ansible playbook 文件以进行编辑。 通过在
freeipa.ansible_freeipa.ipaselfservice
任务部分设置以下变量来调整文件:-
将
name
变量设置为新自助服务规则的名称。 -
将
permission
变量设置为以逗号分隔的权限列表,以授予:read
和write
。 -
将
attribute
变量设置为用户可以自己管理的属性列表:givenname
、displayname
、title
和initials
。
这是当前示例修改的 Ansible playbook 文件:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
将
- 保存该文件。
运行 Ansible playbook。指定 playbook 文件、存储保护 secret.yml 文件的密码,以及清单文件:
ansible-playbook --vault-password-file=password_file -v -i inventory selfservice-present-copy.yml
$ ansible-playbook --vault-password-file=password_file -v -i inventory selfservice-present-copy.yml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow