迁移指南

此集合中的一些模块来自 ansible.windows 集合community.windows 集合。本文档将介绍所做的一些更改,以帮助简化从旧模块到此集合中模块的过渡。

迁移的模块

以下模块以某种形式迁移到此集合中

  • ansible.windows.win_domain -> microsoft.ad.domain - 详细信息

  • ansible.windows.win_domain_controller -> microsoft.ad.domain_controller - 详细信息

  • ansible.windows.win_domain_membership -> microsoft.ad.membership - 详细信息

  • community.windows.win_domain_computer -> microsoft.ad.computer - 详细信息

  • community.windows.win_domain_group -> microsoft.ad.group - 详细信息

  • community.windows.win_domain_group_membership -> microsoft.ad.group - 详细信息

  • community.windows.win_domain_object_info -> microsoft.ad.object_info - 详细信息

  • community.windows.win_domain_ou -> microsoft.ad.ou - 详细信息

  • community.windows.win_domain_user -> microsoft.ad.user - 详细信息

虽然这些模块在很大程度上是即插即用的兼容,但有一些重大更改需要考虑。有关更多信息,请参阅每个模块条目。

模块 win_domain

迁移到 microsoft.ad.domain

没有已知的重大更改,应该可以作为即插即用的替代品。已添加 reboot 选项,使模块能够处理所需的任何重启,而不是单独的 ansible.windows.win_reboot 任务。由于提升域控制器所涉及的操作,强烈建议使用此选项。

模块 win_domain_controller

迁移到 microsoft.ad.domain_controller

已删除以下选项

  • log_path - 不支持创建模块操作的调试日志

已添加 reboot 选项,使模块能够处理任何重启,而不是单独的 ansible.windows.win_reboot 任务。由于提升域控制器所涉及的操作,强烈建议使用此选项。

模块 win_domain_membership

迁移到 microsoft.ad.membership

已删除以下选项

  • log_path - 不支持创建模块操作的调试日志

已添加 reboot 选项,使模块能够处理任何重启,而不是单独的 ansible.windows.win_reboot 任务。

模块 win_domain_computer

迁移到 microsoft.ad.computer

state: present 时,dns_host_name 选项不是必需的,如果未定义,则创建计算机对象时不设置 dnsHostName LDAP 属性。

enabled 的默认值为空,创建组时仍将启用该组,但如果省略该选项,则将使用现有状态。

ou 选项现在命名为 path 以匹配其他模块设置的标准。

已删除 offline_domain_joinodj_blob_path 选项。使用新模块 microsoft.ad.offline_join 生成脱机加入 blob。例如

- name: create computer object
  microsoft.ad.computer:
    name: MyComputer
    state: present
  register: computer_obj

- name: create offline blob
  microsoft.ad.offline_join:
    identity: '{{ computer_obj.object_guid }}'
  when: computer_obj is changed
  register: offline_blob

- name: display offline blob
  debug:
    var: offline_blob.blob
  when: computer_obj is changed

模块 win_domain_group

迁移到 microsoft.ad.group

以下选项已更改

  • attributes - 格式已更改,如属性指南中所述

  • ignore_protection - 已删除,且无论保护状态如何,state: absent 也将删除对象

  • organizational_unitou - 已删除,请改用 path

  • protect - 已重命名为 protect_from_deletion,现在不需要为了使用 state: absent 删除组而取消设置

win_domain_group 的返回值也已简化为仅返回

  • distinguished_name - 受管理 OU 的专有名称 (DN)

  • object_guid - 受管理 OU 的对象 GUID

  • sid - 受管理用户的安全标识符

所有其他返回值都已删除,如果需要额外的返回值,请使用 microsoft.ad.object_info

模块 win_domain_group_membership

迁移到 microsoft.ad.group

此模块的功能已与 microsoft.ad.group 合并。使用 members 选项来 addremoveset 分别添加、删除或设置组成员。

其中一个变化是 win_domain_group_membership 可以使用 SERVER\member-name 格式指定查找成员的服务器。microsoft.ad.group 不支持这种成员格式,但自本集合的 v1.6.0 版本起,可以通过使用字典作为成员值来实现相同的效果。例如

- name: Add a domain user/group from another Domain in the multi-domain forest to a domain group
  community.windows.win_domain_group_membership:
    name: GroupinDomainAAA
    domain_server: DomainAAA.cloud
    members:
      - DomainBBB.cloud\UserInDomainBBB
    state: present

- name: Add a domain user/group from another Domain in the multi-domain forest to a domain group
  microsoft.ad.group:
    name: GroupinDomainAAA
    domain_server: DomainAAA.cloud
    members:
      add:
        - name: UserInDomainBBB
          server: DomainBBB.cloud
    state: present

有关更多信息,请参阅 DN 查找属性

模块 win_domain_object_info

已迁移至 microsoft.ad.object_info

没有已知的重大更改,应该可以作为直接替换使用。

模块 win_domain_ou

已迁移至 microsoft.ad.ou

以下选项已更改

  • protected - 已重命名为 protect_from_deletion,现在不需要为了使用 state: absent 删除 OU 而取消设置

  • recursive - 已删除,且 state: absent 也将递归删除对象

  • filter - 已删除,name 对象指的是 OU 名称,如果需要重命名或移动,可以使用 identity 通过 DistinguishedNameObjectGUID 选择 OU

  • properties - 已删除,请使用新的 attributes 选项

win_domain_ou 的返回值也已简化为仅返回

  • distinguished_name - 受管理 OU 的专有名称 (DN)

  • object_guid - 受管理 OU 的对象 GUID

所有其他返回值都已删除,如果需要额外的返回值,请使用 microsoft.ad.object_info

模块 win_domain_user

已迁移至 microsoft.ad.user

以下选项已更改

  • attributes - 格式已更改,如属性指南中所述

  • delegates - 格式已更改,如设置列表值中所述

  • groups - 格式已更改,如设置列表值中所述

  • groups_action - 已删除,取而代之的是新的 groups 格式

  • groups_missing_behaviour - 已移至 group 字典值中作为 missing_behaviour

  • spn- 格式已更改,如设置列表值中所述

  • spn_action - 已删除,取而代之的是新的 spn 格式

  • state - 无查询选项 - 请改用 microsoft.ad.object_info

  • enabled - 不再默认为 true。创建没有密码的新用户将使用 enabled=false,但设置密码将使用 enabled=true

groups_actionspn_actionset 值已重命名以符合常用做法。state=query 功能已删除以简化模块并倾向于使用 microsoft.ad.object_info,后者旨在返回有关 AD 对象的信息。删除了 enabled 默认值,以便在现有 AD 对象上设置其他属性时,不必始终指定 enabled

win_domain_user 的返回值也已简化为仅返回

  • distinguished_name - 受管理用户的专有名称 (DN)

  • object_guid - 受管理用户的对象 GUID

  • sid - 受管理用户的安全标识符

所有其他返回值都已删除,如果需要额外的返回值,请使用 microsoft.ad.object_info