

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 将活动目录与 WorkSpaces 应用程序配合使用
<a name="active-directory"></a>

你可以将你的 Amazon A WorkSpaces pplications Always-On Always-On 和按需 Windows 队列以及映像生成器加入到 Microsoft Active Directory 中的域中，并使用现有的 Active Directory 域（云端或本地）启动加入域名的 您还可以使用 AWS Directory Service for Microsoft Active Directory（也称为 AWS 托管 Microsoft AD）来创建 Active Directory 域，并使用该域来支持您的 WorkSpaces 应用程序资源。有关使用 AWS Managed Microsoft AD 的更多信息，请参阅《AWS Directory Service 管理指南》**中的 [Microsoft Active Directory](https://docs.aws.amazon.com/directoryservice/latest/admin-guide/directory_microsoft_ad.html)。

**注意**  
Amazon Linux 2 实例集、映像生成器、弹性实例集和应用程序块生成器目前不支持域加入。

通过将 WorkSpaces 应用程序加入您的 Active Directory 域，您可以：
+ 允许您的用户和应用程序从流式传输会话访问 Active Directory 资源 (如打印机和文件共享)。
+ 使用组策略管理控制台 (GPMC) 中可用的组策略设置定义最终用户体验。
+ 流式传输需要用户使用 Active Directory 登录凭证进行身份验证的应用程序。
+ 将您的企业合规性和安全策略应用于您的 WorkSpaces 应用程序流式处理实例。

**Topics**
+ [Active Directory 域概述](active-directory-overview.md)
+ [开始将 Active Directory 与亚马逊 WorkSpaces 应用程序配合使用之前](active-directory-prerequisites.md)
+ [教程：设置 Active Directory](active-directory-directory-setup.md)
+ [基于证书的身份验证](certificate-based-authentication.md)
+ [WorkSpaces 应用程序活动目录管理](active-directory-admin.md)
+ [更多信息](active-directory-more-info.md)

# Active Directory 域概述
<a name="active-directory-overview"></a>

将 Active Directory 域与 WorkSpaces 应用程序配合使用需要了解它们是如何协同工作的，以及您需要完成的配置任务。需要完成以下任务：

1. 按需配置组策略设置以定义应用程序的最终用户体验和安全要求。

1. 在 “应用程序” 中创建加入域的应用程序堆栈。 WorkSpaces 

1. 在 SAML 2.0 身份提供商中创建 WorkSpaces 应用程序并直接或通过 Active Directory 组将其分配给最终用户。

要使您的用户通过域身份验证，当这些用户启动 WorkSpaces 应用程序流式传输会话时，必须执行几个步骤。下图说明了从最初的浏览器请求到 SAML 和 Active Directory 身份验证的 end-to-end用户身份验证流程。

![\[Authentication flow diagram showing steps from user login to AWSWorkSpaces Applications session start.\]](http://docs.aws.amazon.com/zh_cn/appstream2/latest/developerguide/images/domain-join-UPDATED.png)


**用户身份验证流程**

1. 用户浏览到 `https://applications.exampleco.com`。登录页请求对用户进行身份验证。

1. 联合身份验证服务请求从组织的身份存储进行身份验证。

1. 该身份存储将对用户进行身份验证，并将身份验证响应返回到联合身份验证服务。

1. 在成功进行身份验证后，联合身份验证服务会将 SAML 断言发布到用户的浏览器。

1. 用户的浏览器将 SAML 断言发布到 AWS 登录 SAML 端点 ()。`https://signin.aws.amazon.com/saml` AWS Sign-In 接收 SAML 请求，处理请求，对用户进行身份验证，然后将身份验证令牌转发给应用程序服务。 WorkSpaces 

1.  WorkSpaces 应用程序使用中的身份验证令牌对用户进行授权并将应用程序呈现给浏览器。 AWS

1. 用户选择一个应用程序，根据 WorkSpaces 应用程序堆栈上启用的 Windows 登录身份验证方法，系统会提示他们输入 Active Directory 域密码或选择智能卡。如果同时启用了这两种身份验证方法，则用户可以选择是输入域密码还是使用智能卡。也可以使用基于证书的身份验证对用户进行身份验证，从而删除提示。

1. 访问域控制器以进行用户身份验证。

1. 向域验证身份后，用户的会话从域连接开始。

从用户的角度来看，此过程以透明的方式进行。用户首先导航到贵组织的内部门户，然后重定向到 WorkSpaces 应用程序门户，无需输入 AWS 凭据。只需提供 Active Directory 域密码或智能卡凭证。

您必须先使用必需的权限和组策略设置配置 Active Directory 并创建加入域的应用程序堆栈，然后用户才能启动此流程。

# 开始将 Active Directory 与亚马逊 WorkSpaces 应用程序配合使用之前
<a name="active-directory-prerequisites"></a>

在将 Microsoft Active Directory 域与 WorkSpaces 应用程序一起使用之前，请注意以下要求和注意事项。

**Topics**
+ [Active Directory 域环境](active-directory-prerequisites-domain-environment.md)
+ [加入域的应用程序流式处理实例 WorkSpaces](active-directory-prerequisites-streaming-instances.md)
+ [组策略设置](active-directory-prerequisites-group-policy-settings.md)
+ [智能卡身份验证](active-directory-prerequisites-smart-card-authentication.md)

# Active Directory 域环境
<a name="active-directory-prerequisites-domain-environment"></a>

您的 Active Directory 域环境必须满足以下要求。
+ 您必须具有一个 Microsoft Active Directory 域，以在其中加入流实例。如果您没有 Active Directory 域或者想要使用本地 Active Directory 环境，请参阅《[AWS 合作伙伴解决方案部署指南》中的 Active Directory 域服务](https://aws-solutions-library-samples.github.io/cfn-ps-microsoft-activedirectory/)。
+ 您必须拥有一个域服务帐户，该帐户有权在要与 WorkSpaces 应用程序一起使用的域中创建和管理计算机对象。有关信息，请参阅 Microsoft 文档中的[《如何在 Active Directory 中创建域账户》](https://msdn.microsoft.com/en-us/library/aa545262(v=cs.70).aspx)。

  当您将此 Active Directory 域与 WorkSpaces 应用程序关联时，请提供服务帐户名和密码。 WorkSpaces 应用程序使用此帐户来创建和管理目录中的计算机对象。有关更多信息，请参阅 [授予创建和管理 Active Directory 计算机对象的权限](active-directory-permissions.md)。
+ 向 WorkSpaces 应用程序注册 Active Directory 域时，必须提供组织单位 (OU) 的可分辨名称。为此目的创建一个 OU。默认 “计算机” 容器不是 OU，不能由 WorkSpaces 应用程序使用。有关更多信息，请参阅 [查找组织单位的可分辨名称](active-directory-oudn.md)。
+ 您计划用于 WorkSpaces 应用程序的目录必须能够通过其完全限定的域名 (FQDNs) 通过启动您的流式处理实例的虚拟私有云 (VPC) 进行访问。有关更多信息，请参阅 Microsoft 文档中的 [Active Directory and Active Directory Domain Services Port Requirements](https://technet.microsoft.com/en-us/library/dd772723.aspx)。
+ 也可以通过支持域控制器访问 IPv6，并且需要[更新 DHCP 选项集](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_DHCP_Options.html)。

# 加入域的应用程序流式处理实例 WorkSpaces
<a name="active-directory-prerequisites-streaming-instances"></a>

从加入域的 Always-On 和 On-Demand 实例集进行应用程序流式传输需要基于 SAML 2.0 的用户联合身份验证。您无法使用 [CreateStreamingURL](https://docs.aws.amazon.com/appstream2/latest/APIReference/API_CreateStreamingURL.html) 或 WorkSpaces 应用程序用户池启动与已加入域的实例的会话。

另外，必须使用支持将映像生成器和实例集加入 Active Directory 域的映像。所有在 2017 年 7 月 24 日或之后发布的公有映像都支持加入 Active Directory 域。有关更多信息，请参阅[WorkSpaces 应用程序基础映像和托管映像更新发行说明](base-image-version-history.md)和[教程：设置 Active Directory](active-directory-directory-setup.md)。

**注意**  
您可以将 Always-On 和按需队列流媒体实例加入到 Active Directory 域中。支持的操作系统包括 Windows、红帽企业 Linux 和 Rocky Linux。

# 组策略设置
<a name="active-directory-prerequisites-group-policy-settings"></a>

验证以下组策略设置的配置。如果需要，请按照本节所述更新设置，这样它们就不会阻止 WorkSpaces 应用程序对您的域用户进行身份验证和登录。否则，当您的用户尝试登录 WorkSpaces 应用程序时，登录可能无法成功。相反，会显示一条消息，通知用户“发生未知错误”。
+ **计算机配置 > 管理模板 > Windows 组件 > Windows 登录选项 > 禁用或启用软件安全注意序列** – 对于**服务**，将此项设置为**启用**。
+ **计算机配置 > 管理模板 > 系统 > 登录 > 排除凭证提供程序**：确保以下 CLSID *未*列出：`e7c1bab5-4b49-4e64-a966-8d99686f8c7c` 和 `f148bAed-5f7f-40c9-8D48-51e24e571825`
+ **计算机配置 > 策略 > Windows 设置 > 安全设置 > 本地策略 > 安全选项 > 交互式登录 > 交互式登录: 尝试登录的用户的消息文本** – 将此项设置为**未定义**。
+ **计算机配置 > 策略 > Windows 设置 > 安全设置 > 本地策略 > 安全选项 > 交互式登录 > 交互式登录: 尝试登录的用户的消息标题** – 将此项设置为**未定义**。
+ **计算机配置 > 策略 > Windows 设置 > 安全设置 > 本地策略 > 用户权限分配 > 允许本地登录**-将其设置为**未定义**或将域 user/group 添加到此列表中。
+ **计算机配置 > 策略 > Windows 设置 > 安全设置 > 本地策略 > 用户权限分配 > 拒绝本地登录**：将其设置为**未定义**或确保列表中未包含域用户/组。

要使用多会话实例集，除上面指定的设置外，还需要以下组策略设置。
+ **计算机配置 > 策略 > Windows 设置 > 安全设置 > 本地策略 > 用户权限分配 > 允许通过远程桌面服务登录**-将其设置为**未定义**或将域 user/group 添加到此列表中。
+ **计算机配置 > 策略 > Windows 设置 > 安全设置 > 本地策略 > 用户权限分配 > 拒绝通过远程桌面服务登录**-将其设置**为未定义**或确保该域 users/groups 未包含在列表中。

# 智能卡身份验证
<a name="active-directory-prerequisites-smart-card-authentication"></a>

WorkSpaces 应用程序支持使用 Active Directory 域密码或智能卡，例如适用于 Windows 的[通用访问卡 (CAC)](https://www.cac.mil/Common-Access-Card) 和[个人身份验证 (PIV)](https://piv.idmanagement.gov/) 智能卡，登录 WorkSpaces 应用程序流式处理实例。有关如何将 Active Directory 环境配置为使用第三方证书颁发机构启用智能卡登录的信息（CAs），请参阅 Microsoft 文档中[关于启用使用第三方证书颁发机构进行智能卡登录的指南](https://docs.microsoft.com/en-us/troubleshoot/windows-server/windows-security/enabling-smart-card-logon-third-party-certification-authorities)。

**注意**  
WorkSpaces 应用程序还支持在用户登录流媒体实例后使用智能卡进行会话内身份验证。只有安装了 Windows 版本 1.1.257 或更高版本的 WorkSpaces 应用程序客户端的用户才支持此功能。有关其他要求的信息，请参阅[智能卡](feature-support-USB-devices-qualified.md#feature-support-USB-devices-qualified-smart-cards)。

# 教程：设置 Active Directory
<a name="active-directory-directory-setup"></a>

要将 Active Directory 与 WorkSpaces 应用程序一起使用，必须先通过在 WorkSpaces 应用程序中创建 Directory Config 对象来注册目录配置。此对象包含将流实例加入 Active Directory 域所需的信息。您可以使用 WorkSpaces 应用程序管理控制台、 AWS SDK 或创建 Directory Config 对象 AWS CLI。之后，可以使用目录配置启动加入域的 Always-On 和 On-Demand 实例集和映像生成器。

**注意**  
只能将 Always-On 和 On-Demand 实例集流实例加入 Active Directory 域。

**Topics**
+ [步骤 1：创建 Directory Config 对象](#active-directory-setup-config)
+ [步骤 2：使用加入域的映像生成器创建映像](#active-directory-setup-image-builder)
+ [步骤 3：创建加入域的实例集](#active-directory-setup-fleet)
+ [步骤 4：配置 SAML 2.0](#active-directory-setup-saml)

## 步骤 1：创建 Directory Config 对象
<a name="active-directory-setup-config"></a>

您在 “ WorkSpaces 应用程序” 中创建的 Directory Config 对象将在后续步骤中使用。

如果您使用的是 S AWS DK，则可以使用该[CreateDirectoryConfig](https://docs.aws.amazon.com/appstream2/latest/APIReference/API_CreateDirectoryConfig.html)操作。如果您使用的是 AWS CLI，则可以使用[create-directory-config](https://docs.aws.amazon.com/cli/latest/reference/appstream/create-directory-config.html)命令。

**使用 WorkSpaces 应用程序控制台创建 Directory Config 对象**

1. 在 [https://console.aws.amazon.com/appst WorkSpaces ](https://console.aws.amazon.com/appstream2) ream2 上打开应用程序控制台。

1. 在导航窗格中，选择 **Directory Configs** (目录配置)、**Create Directory Config** (创建目录配置)。

1. 对于 **Directory Name** (目录名称)，提供 Active Directory 域的完全限定域名 (FQDN) (例如，`corp.example.com`)。每个区域只能有一个具有特定目录名称的 **Directory Config** 值。

1. 对于 **Service Account Name** (服务账户名)，输入可创建计算机对象 (有权加入域) 的账户的名称。有关更多信息，请参阅 [授予创建和管理 Active Directory 计算机对象的权限](active-directory-permissions.md)。账户名的格式必须为 `DOMAIN\username`。

1. 对于 **Password** (密码) 和 **Confirm Password** (确认密码)，键入指定账户的目录密码。

1. 对于 **Organizational Unit (OU)**，键入至少一个用于流实例计算机对象的 OU 的可分辨名称。
**注意**  
OU 名称中不得包含空格。如果您指定包含空格的 OU 名称，则当队列或映像生成器尝试重新加入 Active Directory 域时， WorkSpaces 应用程序将无法正确循环计算机对象，并且无法成功重新加入域。有关如何解决此问题的信息，请参阅 [Active Directory 加入域故障排除](troubleshooting-notification-codes.md#troubleshooting-notification-codes-ad)中 *DOMAIN\$1JOIN\$1INTERNAL\$1SERVICE\$1ERROR* 主题的“账户已存在”消息。  
此外，默认 “计算机” 容器不是 OU，不能由 WorkSpaces 应用程序使用。有关更多信息，请参阅 [查找组织单位的可分辨名称](active-directory-oudn.md)。

1. 要添加多个 OU，请选择**组织单位（OU）**字段右侧的加号（**\$1**）。要删除 OUs，请选择 **x** 图标。

1. 选择**下一步**。

1. 检查配置信息并选择 **Create**。

## 步骤 2：使用加入域的映像生成器创建映像
<a name="active-directory-setup-image-builder"></a>

接下来，使用 WorkSpaces 应用程序映像生成器创建具有 Active Directory 域加入功能的新映像。请注意，实例集和映像可以是不同域的成员。将映像生成器加入域中可启用域加入和安装应用程序。下一节中将讨论实例集如何加入域。

**创建用于启动加入域的实例集的映像**

1. 按照 [教程：使用 WorkSpaces 应用程序控制台创建自定义 WorkSpaces 应用程序镜像](tutorial-image-builder.md) 所述的过程操作。

1. 对于基本图像选择步骤，请使用 2017 年 7 月 24 日当天或之后发布 AWS 的基础图片。有关已发布 AWS 图像的最新列表，请参阅[WorkSpaces 应用程序基础映像和托管映像更新发行说明](base-image-version-history.md)。

1. 对于 **Step 3: Configure Network**，选择与您的 Active Directory 环境具有网络连接的 VPC 和子网。选择设置为允许经由 VPC 子网访问目录的安全组。

1. 此外，在**步骤 3：配置网络**中，展开 **Active Directory 域 (可选)**部分，选择映像生成器应加入的**目录名称**和**目录 OU** 的值。

1. 检查映像生成器配置并选择 **Create**。

1. 等待新的映像生成器进入 **Running** 状态后，选择 **Connect**。

1. 在管理员模式下或以具有本地管理员权限的目录用户身份登录到映像生成器。有关更多信息，请参阅 [在映像生成器上授予本地管理员权限](active-directory-image-builder-local-admin.md)。

1. 完成[教程：使用 WorkSpaces 应用程序控制台创建自定义 WorkSpaces 应用程序镜像](tutorial-image-builder.md)中的步骤以安装应用程序并创建新映像。

## 步骤 3：创建加入域的实例集
<a name="active-directory-setup-fleet"></a>

使用在上一步中创建的私有映像，为流应用程序创建一个已加入 Active Directory 域的始终在线或按需实例集。此域可以不同于供映像生成器创建映像的域。

**创建已加入域的 Always-On 或 On-Demand 实例集**

1. 按照 [在 Amazon WorkSpaces 应用程序中创建舰队](set-up-stacks-fleets-create.md) 所述的过程操作。

1. 对于映像选择步骤，使用上一步 [步骤 2：使用加入域的映像生成器创建映像](#active-directory-setup-image-builder) 中创建的映像。

1. 对于 **Step 4: Configure Network**，选择与您的 Active Directory 环境具有网络连接的 VPC 和子网。选择设置为允许与您的域通信的安全组。

1. 此外，在**步骤 4：配置网络**中，展开 **Active Directory 域(可选)**部分，选择实例集应加入的**目录名称**和**目录 OU** 的值。

1. 检查实例集配置并选择 **Create**。

1. 完成[创建 Amazon WorkSpaces 应用程序队列和堆栈](set-up-stacks-fleets.md)中的其余步骤，以便您的实例集与堆栈关联并运行。

## 步骤 4：配置 SAML 2.0
<a name="active-directory-setup-saml"></a>

您的用户必须使用基于 SAML 2.0 的身份联合验证环境从加入域的实例集启动流式传输会话。

**配置 SAML 2.0 以进行单点登录访问**

1. 按照 [设置 SAML](external-identity-providers-setting-up-saml.md) 所述的过程操作。

1. WorkSpaces 应用程序要求以以下任一格式提供正在登录的用户的 SAML\$1subject `NameID` 值：
   + `domain\username`使用 s 的AMAccount名字
   + `username@domain.com`使用 userPrincipalName

   如果您使用的是AMAccount名称格式，则可以使用 NetBIOS 名称或完全限定域名 (FQDN) 来指定。`domain`

1. 向您的 Active Directory 用户或群组提供访问权限， WorkSpaces 以便能够从您的身份提供商应用程序门户访问应用程序堆栈。

1. 完成[设置 SAML](external-identity-providers-setting-up-saml.md) 中的其余步骤。

**使用 SAML 2.0 让用户登录**

1. 登录您的 SAML 2.0 提供商的应用程序目录，然后打开您在上一个过程中创建的 WorkSpaces 应用程序 SAML 应用程序。

1. 显示 WorkSpaces 应用程序应用程序目录时，选择要启动的应用程序。

1. “正在加载”图标显示后，系统将提示提供密码。SAML 2.0 身份提供商提供的域用户名将出现在密码字段上方。输入密码并选择 **log in** (登录)。

流实例将执行 Windows 登录过程，所选应用程序将打开。

# 基于证书的身份验证
<a name="certificate-based-authentication"></a>

你可以对加入 Microsoft Active Direct WorkSpaces ory 的应用程序队列使用基于证书的身份验证。这样，当用户登录时，系统就不会再提示输入 Active Directory 域密码。通过对您的 Active Directory 域使用基于证书的身份验证，您可以：
+ 依靠您的 SAML 2.0 身份提供商对用户进行身份验证，并提供 SAML 断言以匹配 Active Directory 中的用户。
+ 使用更少的用户提示创建单点登录体验。
+ 使用 SAML 2.0 身份提供商启用无密码身份验证流程。

基于证书的身份验证使用您的中的 AWS 私有证书颁发机构（AWS 私有 CA）资源。 AWS 账户使用 AWS 私有 CA，您可以创建私有证书颁发机构 (CA) 层次结构，包括根和从属 CAs结构。您还可以创建自己的 CA 层次结构，并从中颁发对内部用户进行身份验证的证书。有关更多信息，请参阅[什么是 AWS 私有 CA](https://docs.aws.amazon.com/privateca/latest/userguide/PcaWelcome.html)。

当您使用 AWS 私有 CA 进行基于证书的身份验证时， WorkSpaces 应用程序会在每个 WorkSpaces 应用程序队列实例的会话预留时自动为您的用户请求证书。它使用预置了证书的虚拟智能卡对用户进行 Active Directory 身份验证。

运行 Windows 实例的 WorkSpaces 应用程序加入域的队列（包括单会话和多会话队列）支持基于证书的身份验证 (CBA)。要在多会话队列上启用 CBA，必须使用使用在 2025 年 7 WorkSpaces 月 2 日当天或之后发布的 WorkSpaces 应用程序代理的应用程序映像。或者，您的映像必须使用 2025 年 11 月 2 日当天或之后发布的托管 WorkSpaces 应用程序映像更新。

**Topics**
+ [前提条件](certificate-based-authentication-prereq.md)
+ [启用基于证书的身份验证](certificate-based-authentication-enable.md)
+ [管理基于证书的身份验证](certificate-based-authentication-manage.md)
+ [启用跨账户 PCA 共享](pca-sharing.md)

# 前提条件
<a name="certificate-based-authentication-prereq"></a>

使用基于证书的身份验证之前，请完成以下步骤。

1. 设置加入域的实例集并配置 SAML 2.0。确保对 SAML\$1Subject `NameID` 使用 `username@domain.com` `userPrincipalName` 格式。有关更多信息，请参阅 [步骤 5：为 SAML 身份验证响应创建断言](external-identity-providers-setting-up-saml.md#external-identity-providers-create-assertions)。
**注意**  
如果您要使用基于证书的身份验证，请不要启用堆栈中的 **Active Directory 的智能卡登录**。有关更多信息，请参阅 [智能卡](feature-support-USB-devices-qualified.md#feature-support-USB-devices-qualified-smart-cards)。

1. 使用 WorkSpaces 应用程序代理版本 10-13-2022 或更高版本处理您的映像。有关更多信息，请参阅 [保留您的 Amazon WorkSpaces 应用程序图片 Up-to-Date](keep-image-updated.md)。

1. 在 SAML 断言中配置 `ObjectSid` 属性。您可以使用此属性与 Active Directory 用户进行强映射。如果 `ObjectSid` 属性与 SAML\$1Subject `NameID` 中指定的用户的 Active Directory 安全标识符（SID）不匹配，则基于证书的身份验证将失败。有关更多信息，请参阅 [步骤 5：为 SAML 身份验证响应创建断言](external-identity-providers-setting-up-saml.md#external-identity-providers-create-assertions)。2025 年 9 月 10 日之后，基于证书的身份验证必须有 `ObjectSid`。有关更多信息，请参阅 [KB5014754：Windows 域控制器上基于证书的身份验证更改](https://support.microsoft.com/en-us/topic/kb5014754-certificate-based-authentication-changes-on-windows-domain-controllers-ad2c23b0-15d8-4340-a468-4d4f3b188f16)。

1. 将 `sts:TagSession` 权限添加到与您的 SAML 2.0 配置一起使用的 IAM 角色信任策略。有关更多信息，请参阅[在 AWS STS中传递会话标签](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_session-tags.html.html)。使用基于证书的身份验证时需要此权限。有关更多信息，请参阅 [步骤 2：创建 SAML 2.0 联合身份验证 IAM 角色](external-identity-providers-setting-up-saml.md#external-identity-providers-grantperms)。

1. 如果您的 Active Directory 中没有配置 AWS 私有证书颁发机构 (CA)，请使用私有 CA 创建私有证书颁发机构 (CA)。 AWS 私有 CA 必须使用基于证书的身份验证。有关更多信息，请参阅[规划 AWS 私有 CA 部署](https://docs.aws.amazon.com/privateca/latest/userguide/PcaPlanning.html)。在许多基于证书的身份验证用例中，以下 AWS 私有 CA 设置很常见：
   + **CA 类型选项**
     + **短期证书 CA 使用模式** – 如果 CA 仅为基于证书的身份验证颁发最终用户证书，则建议使用此模式。
     + **带有根 CA 的单级层次结构** – 选择从属 CA 以将其与现有 CA 层次结构集成。
   + **密钥算法选项** – RSA 2048
   + **主题可分辨名称选项** – 使用合适的选项在 Active Directory 受信任的根证书颁发机构存储中识别此 CA。
   + **证书吊销选项** – CRL 分发
**注意**  
基于证书的身份验证需要一个可从 WorkSpaces 应用程序队列实例和域控制器访问的在线 CRL 分发点。这需要对为 AWS 私有 CA CRL 条目配置的 Amazon S3 存储桶进行未经身份验证的访问权限，或者如果 CloudFront 分配阻止了公开访问，则需要有权访问 Amazon S3 存储桶。有关这些选项的更多信息，请参阅[计划证书吊销列表（CRL）](https://docs.aws.amazon.com/privateca/latest/userguide/crl-planning.html)。

1. 使用密钥标记您的私有 CA，该密钥`euc-private-ca`有权指定用于基于 WorkSpaces 应用程序证书的身份验证的 CA。此键不需要值。有关更多信息，请参阅[管理私有 CA 的标签](https://docs.aws.amazon.com/privateca/latest/userguide/PcaCaTagging.html)。有关 WorkSpaces 应用程序中用于授予资源权限的 AWS 托管策略的更多信息 AWS 账户，请参阅[AWS 访问 WorkSpaces 应用程序资源所需的托管策略](managed-policies-required-to-access-appstream-resources.md)。

1. 基于证书的身份验证使用虚拟智能卡进行登录。有关更多信息，请参阅 [Guidelines for enabling smart card logon with third-party certification authorities](https://learn.microsoft.com/en-us/troubleshoot/windows-server/windows-security/enabling-smart-card-logon-third-party-certification-authorities)。按照以下步骤进行操作：

   1. 使用域控制器证书配置域控制器，以对智能卡用户进行身份验证。如果您在 Active Directory 中配置了 Active Directory 证书服务企业 CA，它会自动使用启用智能卡登录的证书注册域控制器。如果您没有 Active Directory 证书服务，请参阅[来自第三方 CA 的域控制器证书的要求](https://learn.microsoft.com/en-US/troubleshoot/windows-server/windows-security/requirements-domain-controller)。 AWS 建议 Active Directory 企业证书颁发机构自动管理域控制器证书的注册。
**注意**  
如果您使用 AWS 托管 Microsoft AD，则可以在满足域控制器证书要求的 Amazon EC2 实例上配置证书服务。有关配置了 A [ctive Directory 证书服务的 AWS 托管 Microsoft AD 的部署示例，请参阅将 Active Directory 部署到新的亚马逊虚拟私有云](https://docs.aws.amazon.com/launchwizard/latest/userguide/launch-wizard-ad-deploying-new-vpc.html)。  
使用 AWS 托管 Microsoft AD 和 Active Directory 证书服务，您还必须创建从控制器的 VPC 安全组到运行证书服务的亚马逊 EC2 实例的出站规则。您必须为安全组提供对 TCP 端口 135 以及端口 49152 至 65535 的访问权限，才能启用证书自动注册。Amazon EC2 实例还必须允许域实例（包括域控制器）在这些相同的端口上进行入站访问。有关查找 AWS 托管 Microsoft AD 的安全组的更多信息，请参阅[配置您的 VPC 子网和安全组](https://docs.aws.amazon.com/directoryservice/latest/admin-guide/ms_ad_tutorial_setup_trust_prepare_mad.html#tutorial_setup_trust_open_vpc)。

   1. 在 AWS 私有 CA 控制台上，或者使用 SDK 或 CLI 导出私有 CA 证书。有关更多信息，请参阅[导出私有证书](https://docs.aws.amazon.com/acm/latest/userguide/export-private.html)。

   1. 将私有 CA 发布到 Active Directory。登录到域控制器或已加入域的计算机。将私有 CA 证书复制到任意 `<path>\<file>`，然后以域管理员身份运行以下命令。你也可以使用组策略和 Microsoft PKI Health Tool (PKIView) 发布 CA。有关更多信息，请参阅[配置说明](https://learn.microsoft.com/en-us/troubleshoot/windows-server/windows-security/enabling-smart-card-logon-third-party-certification-authorities#configuration-instructions)。

      ```
      certutil -dspublish -f <path>\<file> RootCA
      ```

      ```
      certutil -dspublish -f <path>\<file> NTAuthCA
      ```

      确保命令成功完成，然后删除私有 CA 证书文件。根据您的 Active Directory 复制设置，CA 可能需要几分钟才能发布到您的域控制器和 WorkSpaces 应用程序队列实例。
**注意**  
当 WorkSpaces 应用程序队列实例加入域时，Active Directory 必须自动 NTAuth 将 CA 分发给受信任的根证书颁发机构和企业存储。

对于 Windows 操作系统，CA（证书颁发机构）的分发是自动进行的。但是，对于 Rocky Linux 和红帽企业 Linux，您必须从 A WorkSpaces pplications Directory Config 所使用的 CA 下载根 CA 证书。如果您的 KDC 根 CA 证书不同，则还必须下载这些证书。在使用基于证书的身份验证之前，必须将这些证书导入到映像或快照中。

在映像上，应该有一个名为 /`etc/sssd/pki/sssd_auth_ca_db.pem` 的文件。它应该类似以下内容：

```
-----BEGIN CERTIFICATE-----
Base64-encoded certificate chain from ACM Private CA 
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
Base64-encoded certificate body from ACM private CA
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
Base64-encoded root CA KDC certificate chain
-----END CERTIFICATE-----
```

**注意**  
在跨区域或账户复制映像，或者将映像与新的 Active Directory 重新关联时，需要在映像生成器上使用相关证书重新配置此文件，并在使用前重新拍摄快照。

以下是下载根 CA 证书的说明：

1. 在映像生成器上，创建一个名为 `/etc/sssd/pki/sssd_auth_ca_db.pem` 的文件。

1. 打开 [AWS Private CA 控制台](https://console.aws.amazon.com/acm-pca/)。

1. 选择与您的 WorkSpaces 应用程序目录 Config 一起使用的私有证书。

1. 选择 **CA 证书**选项卡。

1. 将证书链和证书正文复制到映像生成器上的 `/etc/sssd/pki/sssd_auth_ca_db.pem` 中。

如果使用的根 CA 证书与您 KDCs WorkSpaces 的 Applications Directory Config 使用的根 CA 证书不同，请按照以下示例步骤下载它们：

1. 连接到与您的映像生成器加入相同域的 Windows 实例。

1. 打开 `certlm.msc`。

1. 在左侧窗格中，选择**受信任的根证书颁发机构**，然后选择**证书**。

1. 对于每个根 CA 证书，打开上下文（右键单击）菜单。

1. 选择**所有任务**，选择**导出**以打开“证书导出向导”，然后选择**下一步**。

1. 选择 **Base64 编码的 X.509 (.CER)**，然后选择**下一步**。

1. 选择**浏览**，输入文件名，然后选择**下一步**。

1. 选择**结束**。

1. 在文本编辑器中打开导出的证书。

1. 将文件内容复制到映像生成器上的 `/etc/sssd/pki/sssd_auth_ca_db.pem` 中。

# 启用基于证书的身份验证
<a name="certificate-based-authentication-enable"></a>

要启用基于证书的身份验证，请完成以下步骤。

**启用基于证书的身份验证**

1. 在 [https://console.aws.amazon.com/appst WorkSpaces ](https://console.aws.amazon.com/appstream2) ream2 上打开应用程序控制台。

1. 在导航窗格中，选择**目录配置**。选择要配置的目录配置，然后选择**编辑**。

1. 选择**启用基于证书的身份验证**。

1. 确认您的私有 CA ARN 已关联到列表中。要显示在列表中，您应将私有 CA 存储在相同的 AWS 账户 和中 AWS 区域。您还必须使用名为 `euc-private-ca` 的密钥标记私有 CA。

1. 在回退模式下配置目录日志。在回退模式下，如果基于证书的身份验证不成功，用户可以使用其 AD 域密码登录。仅当用户知道自己的域密码时，才建议这样做。关闭回退功能后，如果出现锁屏或 Windows 注销，则会话可能会断开用户的连接。如果开启了回退功能，则会话会提示用户输入 AD 域密码。

1. 选择**保存更改**。

1. 基于证书的身份验证现已启用。当用户使用来自 WorkSpaces 应用程序 Web 客户端或适用于 Windows 的客户端（版本 1.1.1099 及更高版本）的已加入域的队列通过 SAML 2.0 向 WorkSpaces 应用程序堆栈进行身份验证时，他们将不再收到输入域密码的提示。当连接到启用了基于证书的身份验证的会话时，用户将看到 “正在使用基于证书的身份验证进行连接...”消息。

# 管理基于证书的身份验证
<a name="certificate-based-authentication-manage"></a>

启用基于证书的身份验证后，请查看以下任务。

**Topics**
+ [私有 CA 证书](certificate-based-authentication-manage-CA.md)
+ [最终用户证书](certificate-based-authentication-manage-certs.md)
+ [审核报告](certificate-based-authentication-manage-audit.md)
+ [日志记录和监控](certificate-based-authentication-manage-logging.md)

# 私有 CA 证书
<a name="certificate-based-authentication-manage-CA"></a>

在典型配置中，私有 CA 证书的有效期为 10 年。有关更换证书过期的私有 CA 或重新颁发具有新有效期的私有 CA 的更多信息，请参阅[管理私有 CA 生命周期](https://docs.aws.amazon.com/privateca/latest/userguide/ca-lifecycle.html) 

# 最终用户证书
<a name="certificate-based-authentication-manage-certs"></a>

P AWS rivate CA 为 WorkSpaces 应用程序颁发的最终用户证书基于证书的身份验证不需要续订或撤销。这些证书是短暂的。 WorkSpaces 应用程序会为每个新会话自动颁发新证书，对于持续时间较长的会话，则每 24 小时自动颁发一次新证书。 WorkSpaces 应用程序会话控制这些最终用户证书的使用。如果您结束会话， WorkSpaces 应用程序将停止使用该证书。这些最终用户证书的有效期比典型的 AWS 私有 CA CRL 发行版短。因此，无需吊销最终用户证书，这些证书也不会出现在 CRL 中。

# 审核报告
<a name="certificate-based-authentication-manage-audit"></a>

您可以创建审核报告，以列出您的私有 CA 已颁发和吊销的所有证书。有关更多信息，请参阅[将审核报告与私有 CA 结合使用](https://docs.aws.amazon.com/privateca/latest/userguide/PcaAuditReport.html)。

# 日志记录和监控
<a name="certificate-based-authentication-manage-logging"></a>

您可以使用记录 WorkSpaces 应用程序 CloudTrail 对私有 CA 的 API 调用。有关更多信息，请参阅[什么是 AWS CloudTrail？](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-user-guide.html) 和[使用 CloudTrail](https://docs.aws.amazon.com/privateca/latest/userguide/PcaCtIntro.html)。在 CloudTrail 事件历史记录中，您可以查看应用程序用户名**GetCertificate**创建**IssueCertificate**的 **acm-pca.amazonaws.com** 事件源中的事件名称。 WorkSpaces **EcmAssumeRoleSession**将为每个基于 WorkSpaces 应用程序证书的身份验证请求记录这些事件。有关更多信息，请参阅[使用事件历史记录查看 CloudTrail 事件](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/view-cloudtrail-events.html)。

# 启用跨账户 PCA 共享
<a name="pca-sharing"></a>

私有 CA（PCA）跨账户共享允许为其他账户授予使用集中式 CA 的权限。该 CA 可以通过使用 [AWS Resource Access Manager](https://aws.amazon.com/ram/)（RAM）来管理权限，从而生成和颁发证书。这样就无需在每个账户中都使用私有 CA。私有 CA 跨账户共享可以与基于 WorkSpaces 应用程序证书的身份验证 (CBA) 一起使用。 AWS 区域

要将共享的私有 CA 资源与 WorkSpaces 应用程序 CBA 一起使用，请完成以下步骤：

1. 以集中 AWS 账户方式为 CBA 配置私有 CA。有关更多信息，请参阅 [基于证书的身份验证](certificate-based-authentication.md)。

1. 与 WorkSpaces 应用程序资源使用 CBA AWS 账户 的资源共享私有 CA。为此，请遵循 [How to use AWS RAM to share your ACM Private CA cross-account](https://aws.amazon.com/blogs/security/how-to-use-aws-ram-to-share-your-acm-private-ca-cross-account/) 中的步骤。您无需完成步骤 3 来创建证书。您可以与个人共享私有 CA AWS 账户，也可以通过共享私有 CA AWS Organizations。如果您与个人账户共享，则需要使用 AWS Resource Access Manager 控制台或接受资源账户中的共享私有 CA APIs。

   配置共享时，请确认 AWS Resource Access Manager 资源账户中私有 CA 的资源共享使用`AWSRAMBlankEndEntityCertificateAPICSRPassthroughIssuanceCertificateAuthority`托管权限模板。此模板与 WorkSpaces 应用程序服务角色在颁发 CBA 证书时使用的 PCA 模板一致。

1. 共享成功后，使用资源账户中的私有 CA 控制台查看共享的私有 CA。

1. 使用 API 或 CLI 将私有 CA ARN 与 Applications Di WorkSpaces rectory Config 中的 CBA 相关联。目前， WorkSpaces 应用程序控制台不支持选择共享私有 CA ARNs。以下是 CLI 命令的示例：

   `aws appstream update-directory-config --directory-name <value> --certificate-based-auth-properties Status=<value>,CertificateAuthorityArn=<value>` 

# WorkSpaces 应用程序活动目录管理
<a name="active-directory-admin"></a>

在 WorkSpaces 应用程序中设置和使用 Active Directory 涉及以下管理任务。

**Topics**
+ [授予创建和管理 Active Directory 计算机对象的权限](active-directory-permissions.md)
+ [查找组织单位的可分辨名称](active-directory-oudn.md)
+ [在映像生成器上授予本地管理员权限](active-directory-image-builder-local-admin.md)
+ [更新用于加入域的服务账户](active-directory-service-acct.md)
+ [在用户空闲时锁定流式传输会话](active-directory-session-lock.md)
+ [编辑目录配置](active-directory-config-edit.md)
+ [删除目录配置](active-directory-config-delete.md)
+ [将 WorkSpaces 应用程序配置为使用域信任](active-directory-domain-trusts.md)
+ [管理 WorkSpaces 应用程序活动目录中的计算机对象](active-directory-identify-objects.md)

# 授予创建和管理 Active Directory 计算机对象的权限
<a name="active-directory-permissions"></a>

要允许 WorkSpaces 应用程序执行 Active Directory 计算机对象操作，您需要一个具有足够权限的帐户。最佳实践是使用仅具有所需最低权限的账户。最低的 Active Directory 组织单位 (OU) 权限如下所示：
+ 创建计算机对象
+ 更改密码
+ 重置密码
+ 编写描述

在设置权限之前，需要先完成以下任务：
+ 获取对已加入域的计算机或 EC2 实例的访问权限。
+ 安装 Active Directory 用户和计算机 MMC 管理单元。有关更多信息，请参阅 Microsoft 文档中的[安装或删除适用于 Windows 7 的远程服务器管理工具](https://technet.microsoft.com/en-us/library/ee449483.aspx)。
+ 以拥有适当权限的域用户身份登录并修改 OU 安全设置。
+ 创建或标识要向其委派权限的用户、服务账户或组。

**设置最低权限**

1. 在域中或域控制器上打开 **Active Directory Users and Computers** (Active Directory 用户和计算机)。

1. 在左侧导航窗格中，选择要在其中提供域加入权限的第一个 OU，打开上下文 (右键单击) 菜单，然后选择 **Delegate Control** (委派控制)。

1. 在**控制委派向导**页面上，依次选择**下一步**和**添加**。

1. 对于**选择用户、计算机或组**，选择先前创建的用户、服务账户或组，然后选择**确定**。

1. 在**要委派的任务**页面上，选择**创建要委派的自定义任务**，然后选择**下一步**。

1. 依次选择**只是在这个文件夹中的下列对象**和**计算机对象**。

1. 依次选择**在这个文件夹中创建所选对象**和**下一步**。

1. 对于**权限**，选择**读取**、**写入**、**更改密码**、**重置密码**，然后选择**下一步**。

1. 在**完成控制委派向导**页面上，验证信息并选择**完成**。

1. 对于其他需要这些权限的用户 OUs ，请重复步骤 2-9。

如果您将权限委派给组，则创建具有强密码的用户或服务账户，并将该账户添加到组中。这样该账户将拥有足够的权限将流实例连接到目录。创建 WorkSpaces 应用程序目录配置时使用此帐户。

# 查找组织单位的可分辨名称
<a name="active-directory-oudn"></a>

向 WorkSpaces 应用程序注册 Active Directory 域时，必须提供组织单位 (OU) 的可分辨名称。为此目的创建一个 OU。默认 “计算机” 容器不是 OU，不能由 WorkSpaces 应用程序使用。以下步骤演示如何获得此名称。

**注意**  
可分辨名称必须以 **OU=** 开头，否则不能用于计算机对象。

需要先执行以下操作，然后才能完成此过程:
+ 获取对已加入域的计算机或 EC2 实例的访问权限。
+ 安装 Active Directory 用户和计算机 MMC 管理单元。有关更多信息，请参阅 Microsoft 文档中的[安装或删除适用于 Windows 7 的远程服务器管理工具](https://technet.microsoft.com/en-us/library/ee449483.aspx)。
+ 以拥有适当权限的域用户身份登录并读取 OU 安全属性。

**查找 OU 的可分辨名称**

1. 在域中或域控制器上打开 **Active Directory Users and Computers** (Active Directory 用户和计算机)。

1. 在**查看**下，确保**高级功能**已启用。

1. 在左侧导航窗格中，选择用于 WorkSpaces 应用程序流媒体实例计算机对象的第一个 OU，打开上下文（右键单击）菜单，然后选择 “**属性**”。

1. 选择**属性编辑器**。

1. 在**属性**下，对于 **distinguishedName**，选择 **查看**。

1. 对于 **Value** (值)，选择可分辨名称，打开上下文 (右键单击) 菜单，然后选择 **Copy** (复制)。

# 在映像生成器上授予本地管理员权限
<a name="active-directory-image-builder-local-admin"></a>

默认情况下，Active Directory 域用户对于映像生成器实例不具有本地管理员权限。可以通过使用目录中的组策略首选项，或通过在映像生成器上使用本地管理员账户手动授予这些权限。向域用户授予本地管理员权限允许该用户在应用程序映像生成器上安装应用程序并在 WorkSpaces 应用程序映像生成器中创建映像。

**Topics**
+ [使用组策略首选项](group-policy.md)
+ [在映像生成器上使用本地管理员组](manual-procedure.md)

# 使用组策略首选项
<a name="group-policy"></a>

可以使用组策略首选项为 Active Directory 用户或组以及指定 OU 中的所有计算机对象授予本地管理员权限。Active Directory 用户或组必须存在才能向其授予本地管理员权限。要使用组策略首选项，需要先执行以下操作：
+ 获取对已加入域的计算机或 EC2 实例的访问权限。
+ 安装组策略管理控制台(GPMC) MMC 管理单元。有关更多信息，请参阅 Microsoft 文档中的[安装或删除适用于 Windows 7 的远程服务器管理工具](https://technet.microsoft.com/en-us/library/ee449483.aspx)。
+ 以具有创建组策略对象权限的域用户身份登录 (GPOs)。链接 GPOs 到相应的 OUs。

**使用组策略首选项授予本地管理员权限**

1. 在您的目录中或域控制器上，以管理员身份打开命令提示符，键入 `gpmc.msc`，然后按 Enter。

1. 在左侧控制台树中，选择将在其中创建新 GPO 的 OU，或使用现有 GPO，然后执行以下任一操作：
   + 通过打开上下文 (右键单击) 菜单并选择**在此域中创建 GPO，在此处链接**来创建新的 GPO。对于 **Name**，为该 GPO 提供一个描述性名称。
   + 选择现有 GPO。

1. 打开 GPO 的上下文菜单并选择**编辑**。

1. 在控制台树中，依次选择 **Computer Configuration** (计算机配置)、**Preferences** (首选项)、**Windows Settings** (Windows 设置)、**Control Panel Settings** (控制面板设置) 和 **Local Users and Groups** (本地用户和组)。

1. 选择 **Local Users and Groups** (本地用户和组)，打开上下文菜单，选择 **New** (新建)、**Local Group** (本地组)。

1. 对于 **Action**，选择 **Update**。

1. 对于 **Group name**，选择 **Administrators (built-in)**。

1. 在**成员**下，选择**添加…** 并指定 Active Directory 用户账户或组，以便为其分配流实例的本地管理员权限。对于 **Action**，选择 **Add to this group**，然后选择 **OK**。

1. 要将此 GPO 应用于其他 GPO OUs，请选择其他 OU，打开快捷菜单并选择 “**链接现有 GP** O”。

1. 使用在步骤 2 中指定的新的或现有的 GPO 名称，滚动查找 GPO，然后选择 **OK** (确定)。

1. 对于其他应具有此首选项的内容 OUs ，请重复步骤 9 和 10。

1. 选择 **OK** (确定) 以关闭 **New Local Group Properties** (新建本地组属性) 对话框。

1. 再次选择 **OK** (确定) 以关闭 GPMC。

要将新首选项应用于 GPO，必须停止并重新启动正在运行的任何映像生成器或实例集。对于在步骤 8 中指定的 Active Directory 用户和组，将自动为它们授予对 GPO 链接到的 OU 中的映像生成器和实例集的本地管理员权限。

# 在映像生成器上使用本地管理员组
<a name="manual-procedure"></a>

要授予 Active Directory 用户或组对映像生成器的本地管理员权限，可以手动将这些用户或组添加到映像生成器上的本地管理员组中。通过具有这些权限的映像创建的映像生成器将保持相同的权限。

Active Directory 用户或组必须存在才能向其授予本地管理员权限。

**将 Active Directory 用户或组添加到映像生成器上的本地管理员组中**

1. 在 [https://console.aws.amazon.com/appst WorkSpaces ](https://console.aws.amazon.com/appstream2) ream2 上打开应用程序控制台。

1. 在管理员模式下连接到映像生成器。映像生成器必须运行且已加入域。有关更多信息，请参阅 [教程：设置 Active Directory](active-directory-directory-setup.md)。

1. 依次选择**开始**、**管理工具**，然后单击**计算机管理**。

1. 在左侧导航窗格中，选择**本地用户和组**并打开**组**文件夹。

1. 打开**管理员**组，选择**添加...**。

1. 选择要向其分配本地管理员权限的所有 Active Directory 用户或组，然后选择**确定**。再次选择**确定**以关闭**管理员属性**窗口。

1. 关闭“计算机管理”。

1. 要以 Active Directory 用户身份登录并测试该用户在映像生成器上是否具有本地管理员权限，请选择 **Admin Commands** (管理命令)、**Switch user** (切换用户)，然后输入相关用户的凭证。

# 更新用于加入域的服务账户
<a name="active-directory-service-acct"></a>

要更新 WorkSpaces 应用程序用于加入域的服务帐户，我们建议使用两个不同的服务帐户将映像生成器和队列加入您的 Active Directory 域。使用两个不同的服务账户将确保当服务账户需要更新（例如，密码过期）时，服务不会中断。

**更新服务账户**

1. 创建 Active Directory 组并向该组委派正确的权限。

1. 将服务账户添加到新的 Active Directory 组中。

1. 需要时，通过输入新服务帐户的登录凭据来编辑您的 A WorkSpaces pplications Directory Config 对象。

在使用新服务账户设置 Active Directory 组后，任何新的流实例操作都将使用新的服务账户，而进行中的流实例操作将继续使用旧账户而不会中断。

新旧服务账户的重叠时间 (在此期间进行中的流实例操作完成) 非常短，不超过一天。重叠时间是必需的，因为在重叠期间不应删除或更改旧服务账户的密码，否则现有操作可能失败。

# 在用户空闲时锁定流式传输会话
<a name="active-directory-session-lock"></a>

WorkSpaces 应用程序依赖于您在 GPMC 中配置的设置，以便在用户闲置指定时间后锁定直播会话。要使用 GPMC，需要先执行以下操作：
+ 获取对已加入域的计算机或 EC2 实例的访问权限。
+ 安装 GPMC。有关更多信息，请参阅 Microsoft 文档中的[安装或删除适用于 Windows 7 的远程服务器管理工具](https://technet.microsoft.com/en-us/library/ee449483.aspx)。
+ 以具有创建权限的域用户身份登录 GPOs。链接 GPOs 到相应的 OUs。

**在用户空闲时自动锁定流实例**

1. 在您的目录中或域控制器上，以管理员身份打开命令提示符，键入 `gpmc.msc`，然后按 Enter。

1. 在左侧控制台树中，选择将在其中创建新 GPO 的 OU，或使用现有 GPO，然后执行以下任一操作：
   + 通过打开上下文 (右键单击) 菜单并选择**在此域中创建 GPO，在此处链接**来创建新的 GPO。对于 **Name**，为该 GPO 提供一个描述性名称。
   + 选择现有 GPO。

1. 打开 GPO 的上下文菜单并选择**编辑**。

1. 在**用户配置**下，依次展开**策略**、**管理模板**、**控制面板**，然后选择 **个性化**。

1. 双击**启用屏幕保护程序**。

1. 在**启用屏幕保护程序**策略设置中，选择**已启用**。

1. 选择**应用**，然后选择**确定**。

1. 双击**强制使用特定的屏幕保护程序**。

1. 在**强制使用特定的屏幕保护程序**策略设置中，选择**已启用**。

1. 在 **可执行的屏幕保护程序的名称**下，输入 **scrnsave.scr**。启用此设置后，系统将在用户桌面上显示黑屏保护程序。

1. 选择**应用**，然后选择**确定**。

1. 双击**密码保护屏幕保护程序**。

1. 在**密码保护屏幕保护程序**策略设置中，选择**已启用**。

1. 选择**应用**，然后选择**确定**。

1. 双击**屏幕保护程序超时**。

1. 在**屏幕保护程序超时**策略设置中，选择**已启用**。

1. 对于**秒**，请指定在应用屏幕保护程序之前，用户必须处于空闲状态的时间长度。要将空闲时间设置为 10 分钟，请指定 600 秒。

1. 选择**应用**，然后选择**确定**。

1. 在控制台树中的**用户配置**下，依次展开**策略**、**管理模板**、**系统**，然后选择 **Ctrl\$1Alt\$1Del 选项**。

1. 双击**删除“锁定计算机”**。

1. 在**删除“锁定计算机”**策略设置中，选择**已禁用**。

1. 选择**应用**，然后选择**确定**。

# 编辑目录配置
<a name="active-directory-config-edit"></a>

创建 WorkSpaces 应用程序目录配置后，您可以对其进行编辑以添加、删除或修改组织单位、更新服务帐户用户名或更新服务帐户密码。

**更新目录配置**

1. 在 [https://console.aws.amazon.com/appst WorkSpaces ](https://console.aws.amazon.com/appstream2) ream2 上打开应用程序控制台。

1. 在左侧导航窗格中，选择 **Directory Configs**，然后选择要编辑的目录配置。

1. 选择 **Actions**（操作）和 **Edit**（编辑）。

1. 更新要更改的字段。要添加其他 OUs，请选择最上面的 OU 字段旁边的加号 (**\$1**)。要删除 OU 字段，请选择该字段旁边的 **x**。
**注意**  
至少需要一个 OU。 OUs 无法删除当前正在使用的内容。

1. 要保存更改，请选择 **Update Directory Config**。

1. **Details** 选项卡中的信息应立即更新以反映这些更改。

更改服务账户登录凭证不影响进行中的流实例操作。新的流实例操作将使用更新后的凭证。有关更多信息，请参阅 [更新用于加入域的服务账户](active-directory-service-acct.md)。

# 删除目录配置
<a name="active-directory-config-delete"></a>

您可以删除不再需要的 WorkSpaces 应用程序目录配置。不能删除与任何映像生成器或实例集关联的目录配置。

**删除目录配置**

1. 在 [https://console.aws.amazon.com/appst WorkSpaces ](https://console.aws.amazon.com/appstream2) ream2 上打开应用程序控制台。

1. 在左侧导航窗格中，选择 **Directory Configs**，然后选择要删除的目录配置。

1. 依次选择**操作**和**删除**。

1. 验证弹出消息中的名称，然后选择 **Delete**。

1. 选择 **Update Directory Config**。

# 将 WorkSpaces 应用程序配置为使用域信任
<a name="active-directory-domain-trusts"></a>

WorkSpaces 应用程序支持 Active Directory 域环境，在这种环境中，文件服务器、应用程序和计算机对象等网络资源位于一个域中，用户对象位于另一个域中。用于计算机对象操作的域服务帐户不必与 WorkSpaces 应用程序计算机对象位于同一个域中。

创建目录配置时，请指定在 Active Directory 域 (文件服务器、应用程序、计算机对象和其他网络资源驻留的位置) 中具有管理计算机对象的相应权限的服务账户。

对于以下项目，您的最终用户 Active Directory 账户必须拥有“允许身份验证”权限：
+ WorkSpaces 应用程序计算机对象
+ 域的域控制器

有关更多信息，请参阅 [授予创建和管理 Active Directory 计算机对象的权限](active-directory-permissions.md)。

# 管理 WorkSpaces 应用程序活动目录中的计算机对象
<a name="active-directory-identify-objects"></a>

WorkSpaces 应用程序不会从 Active Directory 中删除计算机对象。这些计算机对象可以在您的目录中轻松识别。目录中创建的每个计算机对象都带有 `Description` 属性，此属性指定实例集或映像生成器实例和名称。


**计算机对象描述示例**  

| Type | Name | 描述属性 | 
| --- | --- | --- | 
|  Fleet  |  ExampleFleet  |  `WorkSpaces Applications - fleet:ExampleFleet`  | 
|  映像生成器  |  ExampleImageBuilder  |  `WorkSpaces Applications - image-builder:ExampleImageBuilder`  | 

您可以使用以下`dsquery computer`命令和`dsrm`命令识别和删除由 WorkSpaces 应用程序创建的非活动计算机对象。有关更多信息，请参阅 Microsoft 文档中的 [Dsquery 计算机](https://technet.microsoft.com/en-us/library/cc730720.aspx)和 [Dsrm](https://technet.microsoft.com/en-us/library/cc731865.aspx)。

`dsquery` 命令标识不活动时间超过特定时间段的计算机对象并使用以下格式。还应使用参数运行该`dsquery`命令`-desc "WorkSpaces Applications*"`以仅显示 WorkSpaces 应用程序对象。

```
dsquery computer "OU-distinguished-name" -desc "WorkSpaces Applications*" -inactive number-of-weeks-since-last-login
```
+ `OU-distinguished-name` 是组织单位的可分辨名称。有关更多信息，请参阅 [查找组织单位的可分辨名称](active-directory-oudn.md)。如果您不提供*OU-distinguished-name*参数，则该命令将搜索整个目录。
+ `number-of-weeks-since-last-log-in` 是基于“不活动”的定义方式的所需值。

例如，以下命令显示 `OU=ExampleOU,DC=EXAMPLECO,DC=COM` 组织单位中过去两周未登录过的所有计算机对象。

```
dsquery computer OU=ExampleOU,DC=EXAMPLECO,DC=COM -desc "WorkSpaces Applications*" -inactive 2
```

如果找到匹配项，则结果为一个或多个对象名称。`dsrm` 命令会删除指定的对象并使用以下格式：

```
dsrm objectname
```

其中 `objectname` 是来自 `dsquery` 命令输出的完整对象名称。例如，如果上面的`dsquery`命令生成了一个名为 ExampleComputer “” 的计算机对象，则删除该对象的`dsrm`命令将如下所示：

```
dsrm "CN=ExampleComputer,OU=ExampleOU,DC=EXAMPLECO,DC=COM"
```

可以使用竖线 (`|`) 运算符将这些命令链接在一起。例如，要删除所有 WorkSpaces 应用程序计算机对象，并提示对每个对象进行确认，请使用以下格式。将 `-noprompt` 参数添加到 `dsrm` 可禁用确认。

```
dsquery computer OU-distinguished-name -desc "WorkSpaces Applications*" –inactive number-of-weeks-since-last-log-in | dsrm
```

# 更多信息
<a name="active-directory-more-info"></a>

有关与此主题相关的更多信息，请参阅以下资源：
+ [通知代码故障排除](troubleshooting-notification-codes.md) – 通知代码错误的解决方案。
+ [Active Directory 故障排除](troubleshooting-active-directory.md) – 常见问题解答。
+ [微软 Active Directory](https://docs.aws.amazon.com/directoryservice/latest/admin-guide/directory_microsoft_ad.html) — 有关使用的 Directory Service信息。