为 Azure 本地部署准备 Active Directory

适用于:Azure Local 2311.2 及更高版本

本文介绍如何在部署 Azure 本地之前准备 Active Directory 环境。

Azure 本地的 Active Directory 要求包括:

  • 专用组织单位(OU)。
  • 为适用的组策略对象(GPO)阻止的组策略继承。
  • 具有 Active Directory 中 OU 的所有权限的用户帐户。
  • 部署之前,计算机不得加入 Active Directory。

注意

  • 可以使用现有流程来满足上述要求。 本文中使用的脚本是可选的,用于简化准备。
  • 当在 OU 级别阻止组策略继承时,不会阻止启用了强制选项的 GPO。 如果适用,请确保通过其他方法阻止这些 GPO,例如使用 Windows Management Instrumentation (WMI) 筛选器。 将 WMI 筛选器应用到任何强制实施的 GPO,以便在应用 GPO 时排除 Azure Local 实例的机器(计算机)帐户。 应用筛选器后,根据 WMI 筛选器中定义的逻辑,将不会应用强制实施的 GPO。

若要手动分配 Active Directory 所需的权限,请创建 OU 并阻止 GPO 继承,请参阅 Azure 本地的自定义 Active Directory 配置

先决条件

Active Directory 准备模块

New-HciAdObjectsPreCreation AsHciADArtifactsPreCreationTool PowerShell 模块的 cmdlet 用于为 Azure 本地部署准备 Active Directory。 下面是与 cmdlet 关联的必需参数:

参数 说明
-AzureStackLCMUserCredential 使用适当的部署权限创建的新用户对象。 此帐户与 Azure 本地部署使用的用户帐户相同。
确保仅提供用户名。 该名称不应包含域名,例如,contoso\username
密码必须符合长度和复杂性要求。 使用长度至少为 12 个字符的密码。 密码还必须包含四个要求中的三个:小写字符、大写字符、数字和特殊字符。
有关详细信息,请参阅 密码复杂性要求
该名称不能与本地管理员用户完全相同。
该名称可以使用 管理员 作为用户名。
-AsHciOUName 用于存储 Azure 本地部署的所有对象的新组织单位(OU)。 此 OU 中阻止了现有的组策略和继承,以确保没有设置冲突。 必须将 OU 指定为可分辨名称(DN)。 有关详细信息,请参阅可分辨名称的格式

注意

  • 路径-AsHciOUName不支持路径中的任何位置的以下特殊字符: &,",',<,>
  • 部署完成后,不支持将计算机对象移动到其他 OU。

准备 Active Directory

准备 Active Directory 时,请创建一个专用的组织单位(OU),以放置 Azure 本地相关对象,例如部署用户。

若要创建专用 OU,请执行以下步骤:

  1. 登录到已加入 Active Directory 域的计算机。

  2. 以管理员身份运行 PowerShell。

  3. 运行以下命令以创建专用 OU。

    New-HciAdObjectsPreCreation -AzureStackLCMUserCredential (Get-Credential) -AsHciOUName "<OU name or distinguished name including the domain components>"
    
    
  4. 出现提示时,请提供部署的用户名和密码。

    1. 确保仅提供用户名。 该名称不应包含域名,例如,contoso\username用户名必须介于 1 到 64 个字符之间,并且仅包含字母、数字、连字符和下划线,不能以连字符或数字开头。
    2. 确保密码符合复杂性和长度要求。 使用长度至少为 12 个字符的密码,其中包含:小写字符、大写字符、数字和特殊字符。

    下面是成功完成脚本的示例输出:

    PS C:\work> $password = ConvertTo-SecureString '<password>' -AsPlainText -Force
    PS C:\work> $user = "ms309deployuser"
    PS C:\work> $credential = New-Object System.Management.Automation.PSCredential ($user, $password)
    PS C:\work> New-HciAdObjectsPreCreation -AzureStackLCMUserCredential $credential -AsHciOUName "OU=ms309,DC=PLab8,DC=nttest,DC=microsoft,DC=com"    
    PS C:\work>
    
  5. 验证是否已创建 OU。 如果使用 Windows Server 客户端,请转到服务器管理器>工具>Active Directory 用户和计算机

  6. 创建具有指定名称的 OU。 此 OU 包含新的生命周期管理器 (LCM) 部署用户帐户。

    Active Directory 计算机和用户窗口的屏幕截图。

注意

如果要修复单个计算机,请不要删除现有 OU。 如果计算机卷已加密,则删除 OU 会删除 BitLocker 恢复密钥。

大规模部署的注意事项

LCM 用户帐户用于服务操作期间,例如通过 PowerShell 应用更新。 在针对您的 AD 执行域加入操作时(例如 修复节点添加节点),也使用此帐户。 这需要具有委派权限的 LCM 用户标识才能将计算机帐户添加到本地域中的目标 OU。

在 Azure 本地云部署期间,LCM 用户帐户将添加到物理节点的本地管理员组中。 若要降低泄露的 LCM 用户帐户的风险, 我们建议为每个 Azure 本地实例创建一个具有唯一密码的专用 LCM 用户帐户。 此建议将泄露的 LCM 帐户的范围和影响限制为单个实例。

我们建议遵循 OU 创建的这些最佳做法。 使用 New-HciAdObjectsPreCreation cmdlet 准备 Active Directory 时,会自动执行这些建议。

  • 对于每个 Azure 本地实例,请在 Active Directory 中创建单个 OU。 此方法有助于在每个实例的单个 OU 范围内管理 LCM 用户帐户、物理计算机的计算机帐户和群集名称对象(CNO)。
  • 大规模部署多个实例时,可以更轻松地进行管理:
    • 在单个父 OU 下为每个实例创建一个 OU。
    • 在父 OU 和子 OU 级别上启用 “阻止继承 ”选项。
    • 若要将 GPO 应用到所有 Azure 本地实例,例如,将域组嵌套在本地管理员组中,请将 GPO 链接到父 OU 并启用 “强制” 选项。 通过执行此作,可将配置应用到所有子 OU,即使启用了 块继承 也是如此。

如果组织的流程和过程需要偏离这些建议,则允许它们。 但是,必须考虑到这些因素,考虑设计的安全性和可管理性影响。

后续步骤