View a markdown version of this page

设置 Connector for AD - Amazon 私有证书颁发机构
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)。

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

设置 Connector for AD

本节中的步骤是使用适用于 AD 的连接器的先决条件。它假设你已经创建了一个 Amazon 账户。完成此页面上的步骤后,即可开始为 AD 创建连接器。

步骤 1:使用创建私有 CA Amazon 私有 CA

设置私有证书颁发机构 (CA),为您的目录对象颁发证书。有关更多信息,请参阅 中的证书颁发机构 Amazon 私有 CA。

私有 CA 必须处于该Active状态才能为 AD 创建连接器。私有 CA 的使用者名称必须包含公用名。如果您尝试使用不带公用名的私有 CA 创建连接器,则连接器创建将失败。

第 2 步:设置 Active Directory

除了私有 CA 之外,您还需要虚拟私有云 (VPC) 中的活动目录。Connector for AD 支持由 Amazon Directory Service提供的以下目录类型:

  • Amazon 托管的微软活动目录:有了 Amazon Directory Service 它,你可以将微软活动目录(AD)作为托管服务运行。 Amazon Directory Service for Microsoft Active Directory 也称为 Amazon Managed Microsoft AD,由 Windows Server 2019 提供支持。使用 Amazon Managed Microsoft AD,你可以在中运行目录感知工作负载 Amazon Web Services 云,包括微软 Sharepoint 以及自定义 .NET 和 SQL 应用程序。Server-based

  • Active Directory Connector:AD Connector 是一种目录网关,可以将目录请求重定向到本地 Microsoft Active Directory,而无需在云中缓存任何信息。AD Connector 支持连接到 Amazon EC2 上托管的域

(仅限 Active Directory 连接器)步骤 3:向服务帐号委派权限

注意

如果您使用的是 Amazon Managed Microsoft AD ,当您使用您的目录授权 AD Connector 服务时,系统会自动委托额外的权限。您可以跳过此先决条件步骤。

使用 Directory Service AD Connector 时,您需要向服务账户委派其他权限。在服务账户上设置访问控制列表(ACL)以允许以下功能:

  • 向其自身添加和删除服务主体名称(SPN)

  • 在以下容器中创建和更新证书颁发机构:

    #containers CN=Public Key Services,CN=Services,CN=Configuration CN=AIA,CN=Public Key Services,CN=Services,CN=Configuration CN=Certification Authorities,CN=Public Key Services,CN=Services,CN=Configuration
  • 创建和更新 NTAuthCertificates 证书颁发机构 (CA) 对象。注意:如果 NTAuthCertificates CA 对象存在,则必须为其委托权限。如果对象不存在,则必须委派在公钥服务容器上创建子对象的权限。

    #objects CN=NTAuthCertificates,CN=Public Key Services,CN=Services,CN=Configuration

官方 Active Directory 连接器存储库中提供的 PowerShell 脚本可用于委托目录服务 AD 连接器服务帐户所需的额外权限。

此脚本创建 NTAuthCertificates 证书颁发机构对象。

有关脚本的最新版本和用法详细信息,请参阅GitHub 存储库中的自述文件。

第 4 步:创建 IAM 策略

要为 AD 创建连接器,您需要一个 IAM policy,该策略允许您创建连接器资源,与 Connector for AD 服务共享您的私有 CA,并使用您的目录中授权 Connector for AD 服务。

以下是用户托管策略的示例:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "pca-connector-ad:*", "Resource": "*" }, { "Effect": "Allow", "Action": [ "acm-pca:DescribeCertificateAuthority", "acm-pca:GetCertificate", "acm-pca:GetCertificateAuthorityCertificate", "acm-pca:ListCertificateAuthorities", "acm-pca:ListTags", "acm-pca:PutPolicy" ], "Resource": "*" }, { "Effect": "Allow", "Action": "acm-pca:IssueCertificate", "Resource": "*", "Condition": { "ArnLike": { "acm-pca:TemplateArn": "arn:aws:acm-pca:::template/BlankEndEntityCertificate_APIPassthrough/V*" }, "ForAnyValue:StringEquals": { "aws:CalledVia": "pca-connector-ad.amazonaws.com" } } }, { "Effect": "Allow", "Action": [ "ds:AuthorizeApplication", "ds:DescribeDirectories", "ds:ListTagsForResource", "ds:UnauthorizeApplication", "ds:UpdateAuthorizedApplication" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ec2:CreateVpcEndpoint", "ec2:DescribeSecurityGroups", "ec2:DescribeSubnets", "ec2:DescribeVpcEndpoints", "ec2:DescribeVpcs", "ec2:DeleteVpcEndpoints" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ec2:DescribeTags", "ec2:DeleteTags", "ec2:CreateTags" ], "Resource": "arn:*:ec2:*:*:vpc-endpoint/*" } ] }

AD 连接器需要额外的 Amazon RAM 权限,才能在控制台和命令行中使用。

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "ram:CreateResourceShare", "Resource": "*", "Condition": { "StringEqualsIfExists": { "ram:Principal": "pca-connector-ad.amazonaws.com", "ram:RequestedResourceType": "acm-pca:CertificateAuthority" } } }, { "Effect": "Allow", "Action": [ "ram:GetResourcePolicies", "ram:GetResourceShareAssociations", "ram:GetResourceShares", "ram:ListPrincipals", "ram:ListResources", "ram:ListResourceSharePermissions", "ram:ListResourceTypes" ], "Resource": "*" } ] }

第 5 步:与 Connector for AD 共享您的私有 CA

您需要使用 Amazon Resource Access Manager 服务主体共享与连接器服务共享您的私有 CA。

当您在 Amazon 控制台中创建连接器时,系统会自动为您创建资源共享。

当您使用创建资源共享时 Amazon CLI,将使用该 Amazon RAM create-resource-share命令。

以下命令创建资源共享:

$ aws ram create-resource-share \ --region us-east-1 \ --name MyPcaConnectorAdResourceShare \ --permission-arns arn:aws:ram::aws:permission/AWSRAMBlankEndEntityCertificateAPIPassthroughIssuanceCertificateAuthority \ --resource-arns arn:aws:acm-pca:region:account:certificate-authority/CA_ID \ --principals pca-connector-ad.amazonaws.com \ --sources account

调用的服务主体在 PCA 上 CreateConnector 拥有证书颁发权限。要防止使用 Connector for AD 的服务主体拥有对您的 Amazon 私有 CA 资源的常规访问权限,请使用 CalledVia 限制其权限。

步骤 6:创建目录注册

您授权 Connector for AD 服务使用您的目录,以便连接器可以与您的目录通信。要授权 Connector for AD 服务,您需要创建目录注册。有关创建目录注册的更多信息,请参阅 管理目录注册

步骤 7:配置安全组

您的 VPC 与 AD 连接器之间的通信是通过的 Amazon PrivateLink,这需要一个或多个具有入站规则的安全组,在您的 VPC 上打开端口 443 TCP。当您创建连接器时,系统会要求您输入此安全组。您可以将源指定为自定义,然后选择 VPC 的 CIDR 块。您可以选择进一步限制此项(即 IP、CIDR 和安全组 ID)。

步骤 8:配置目录对象的网络访问权限

目录对象需要公共互联网访问才能验证来自以下域的在线证书状态协议 (OCSP) 和证书吊销列表 (CRL):

*.windowsupdate.com *.amazontrust.com

最低要求的访问规则:

  • OCSP 和 CRL 通信所必需的:

    TCP 80: (HTTP) to 0.0.0.0/0
  • AD 连接器所必需的:

    TCP 443: (HTTPS) to 0.0.0.0/0
  • 活动目录必填项:

    TCP 88: (Kerberos) to Domain Controller IP range TCP/UDP 389/636: (LDAP/LDAPS) to Domain Controller IP range, depending on Domain Controller configuration TCP/UDP 53: (DNS) to 0.0.0.0/0

如果设备无法访问公共互联网,则证书颁发将间歇性失败,并显示错误代码 WS_E_OPERATION_TIMED_OUT.

注意

如果您正在为 Amazon EC2 实例配置安全组,则该安全组不必与步骤 7 中的安全组相同。