是否有方法使用ansible将active directory中的用户分配给多个组?
我创建了一个ansible playbook,旨在通过ansible将用户添加到Active Directory中的组中,代码如下所示:是否有方法使用ansible将active directory中的用户分配给多个组?,ansible,active-directory,usergroups,Ansible,Active Directory,Usergroups,我创建了一个ansible playbook,旨在通过ansible将用户添加到Active Directory中的组中,代码如下所示: # addmembertogroup.yaml # Skip task when 'group' or 'username' is undefined # Show message when 'group' or 'username' doesn't exist --- - hosts: brc.testlab.com gather_facts: no
# addmembertogroup.yaml
# Skip task when 'group' or 'username' is undefined
# Show message when 'group' or 'username' doesn't exist
---
- hosts: brc.testlab.com
gather_facts: no
tasks:
- name: "Add Member to Group"
block:
- name: "Add Member to Group"
community.windows.win_domain_group_membership:
name: "{{group}}"
members: "{{username}}"
state: present
when: (group is defined) and (username is defined)
rescue:
- name: Print when error
debug:
msg: Username / Group not exist
其中,使用以下命令运行playbook:
Ansible-playbook –i hosts addmembertogroup.yaml –e group=DNSAdmins –e username=Cahbayu
基于现有的ansible playbook和命令,我成功地将名为Cahbayu
的用户添加到DNSAdmins
组中。但是,我希望用户在一个命令中处于多个组中。例如,我想将用户Cahbayu
添加到组DNSAdmins、备份操作员、远程桌面用户中。我已将组参数放入如下列表中,但结果仍然失败:
---
- hosts: brc.testlab.com
gather_facts: no
tasks:
- name: "Add Member to Group"
block:
- name: "Add Member to Group"
community.windows.win_domain_group_membership:
name:
- "{{group}}"
members: "{{username}}"
state: present
when: (group is defined) and (username is defined)
rescue:
- name: Print when error
debug:
msg: Username / Group not exist
结果如下:
[未能将用户添加到多个组][1]
因此,我的问题是,是否有一种方法可以使用Ansible将用户输入Active Directory中的多个组?多谢各位
(已编辑)
根据提供的答案,我设法使用“循环”将用户分为多个组。我认为,如果您在变量或列表中定义组,并在希望添加用户的列表中循环,您可以做到这一点,选中此链接可以帮助您管理此操作,因为您的playbook正在运行,并且只需要一个定义良好的循环
在ansible中]