community.windows.win_domain_computer 模块 – 管理 Active Directory 中的计算机
注意
此模块是 community.windows 集合(版本 2.3.0)的一部分。
如果您正在使用 ansible 包,您可能已经安装了此集合。它不包含在 ansible-core 中。要检查是否已安装,请运行 ansible-galaxy collection list。
要安装它,请使用:ansible-galaxy collection install community.windows。
要在 playbook 中使用它,请指定:community.windows.win_domain_computer。
已弃用
- 已在以下版本中删除:
- 版本 3.0.0 
- 原因:
- 此模块已移至 - microsoft.ad集合中。
- 替代方案:
- 请改用 microsoft.ad.computer 模块。 
概要
- 使用 Windows 桥接计算机启动 New-ADComputer、Get-ADComputer、Set-ADComputer、Remove-ADComputer 和 Move-ADObject powershell 命令,在 Active Directory 中创建、读取、更新和删除计算机。 
参数
| 参数 | 注释 | 
|---|---|
| 指定对象的描述。 此参数设置对象的 Description 属性的值。 此属性的 LDAP 显示名称 (ldapDisplayName) 为 description。 默认值:  | |
| 指定计算机的完全限定域名 (FQDN)。 此参数设置计算机对象的 DNSHostName 属性。 此属性的 LDAP 显示名称为 dNSHostName。 当 *state=present* 时为必需。 | |
| *username* 的密码。 | |
| 指定要连接的 Active Directory 域服务实例。 可以是 FQDN 或 NetBIOS 名称的形式。 如果未指定,则该值基于运行 PowerShell 的计算机的域。 | |
| 与 AD 交互时要使用的用户名。 如果未设置此项,则在使用 CredSSP 或 Kerberos 进行凭据委派时,将使用 Ansible 用于登录的用户。 | |
| 指定是否启用帐户。 启用的帐户需要密码。 此参数设置帐户对象的 Enabled 属性。 此参数还会设置 Active Directory 用户帐户控制 (UAC) 属性的 ADS_UF_ACCOUNTDISABLE 标志。 选项 
 | |
| 要分配给 LDAP  此值可以是  | |
| 指定对象的名称。 此参数设置 Active Directory 对象的 Name 属性。 此属性的 LDAP 显示名称 (ldapDisplayName) 为 name。 | |
| 将保存 BLOB 的文件的路径。如果省略,将使用临时文件。 如果 *offline_domain_join=output*,则文件将在返回其内容后被删除。 BLOB 文件的父目录必须存在;不会创建中间目录。 | |
| 在目录中配置计算机并提供一个 BLOB 文件,该文件可以在目标计算机/映像上用于在脱机时将其加入域。 
 
 
 如果计算机已存在,则不会创建/返回 BLOB,并且该模块将像没有脱机域加入一样运行。 选项 
 | |
| 指定创建新对象的组织单位 (OU) 或容器的 X.500 路径。当 *state=present* 时为必需。 必须转义特殊字符,有关详细信息,请参阅 Distinguished Names。 | |
| 指定计算机的安全帐户管理器 (SAM) 帐户名称。 最大长度为 256 个字符,为了与旧版操作系统兼容,建议使用 15 个字符。 此属性的 LDAP 显示名称 (ldapDisplayName) 为 sAMAccountName。 如果省略,则该值与  请注意,所有计算机的 SAMAccountName 都需要以  如果省略  | |
| 指定计算机在 Active Directory 中应为  选项 
 | 
说明
注意
- 有关脱机域加入的更多信息,请参阅分步指南。 
- 当使用 ODJ BLOB 将计算机加入域时,必须将其写入文件。 
- 该文件必须使用 UTF-16 编码(在 PowerShell 中,此编码称为 - Unicode),并且必须以空字符结尾。请参阅示例。
- 脱机域加入过程的 - djoin.exe部分不会使用 domain_server、domain_username 或 domain_password。
- 这必须在安装了 ActiveDirectory powershell 模块的主机上运行。 
另请参阅
另请参阅
- ansible.windows.win_domain
- 确保 Windows 域的存在。 
- ansible.windows.win_domain_controller
- 管理 Windows 主机的域控制器/成员服务器状态。 
- community.windows.win_domain_group
- 创建、修改或删除域组。 
- ansible.windows.win_domain_membership
- 管理 Windows 主机的域/工作组会员资格。 
- community.windows.win_domain_user
- 管理 Windows Active Directory 用户帐户。 
示例
- name: Add linux computer to Active Directory OU using a windows machine
  community.windows.win_domain_computer:
    name: one_linux_server
    sam_account_name: linux_server$
    dns_hostname: one_linux_server.my_org.local
    ou: "OU=servers,DC=my_org,DC=local"
    description: Example of linux server
    enabled: true
    state: present
  delegate_to: my_windows_bridge.my_org.local
- name: Remove linux computer from Active Directory using a windows machine
  community.windows.win_domain_computer:
    name: one_linux_server
    state: absent
  delegate_to: my_windows_bridge.my_org.local
- name: Provision a computer for offline domain join
  community.windows.win_domain_computer:
    name: newhost
    dns_hostname: newhost.ansible.local
    ou: 'OU=A great\, big organizational unit name,DC=ansible,DC=local'
    state: present
    offline_domain_join: true
    odj_return_blob: true
  register: computer_status
  delegate_to: windc.ansible.local
- name: Join a workgroup computer to the domain
  vars:
    target_blob_file: 'C:\ODJ\blob.txt'
  ansible.windows.win_shell: |
    $blob = [Convert]::FromBase64String('{{ computer_status.odj_blob }}')
    [IO.File]::WriteAllBytes('{{ target_blob_file }}', $blob)
    & djoin.exe --% /RequestODJ /LoadFile '{{ target_blob_file }}' /LocalOS /WindowsPath "%SystemRoot%"
- name: Restart to complete domain join
  ansible.windows.win_restart:
返回值
常见的返回值在此处记录 此处,以下是此模块特有的字段
| 键 | 描述 | 
|---|---|
| 有关调用 djoin.exe 的信息。 返回: 当 offline_domain_join 为 True 且计算机不存在时 | |
| 用于调用 djoin.exe 的完整命令行 返回: 总是 示例:  | |
| djoin.exe 的返回代码 返回: 当不是检查模式时 示例:  | |
| djoin.exe 的 stderr 输出 返回: 当不是检查模式时 示例:  | |
| djoin.exe 的 stdout 输出 返回: 当不是检查模式时 示例:  | |
| 脱机域加入 BLOB。当处于检查模式或 offline_domain_join 为 ‘path’ 时,这是一个空字符串。 此字段包含脱机域加入 BLOB 文件的 base64 编码的原始字节。 返回: 当 offline_domain_join 不是 ‘none’ 且计算机不存在时 示例:  | |
| 目标主机上脱机域加入 BLOB 文件的路径。如果指定了 odj_blob_path,则此路径将与该路径匹配。 返回: 当 offline_domain_join 为 ‘path’ 且计算机不存在时 示例:  | 
状态
- 此模块将在 3.0.0 版本中移除。[已弃用] 
- 有关详细信息,请参阅 已弃用。 
