本页介绍了如何为 Managed Service for Microsoft Active Directory (托管式 Microsoft AD) 启用基于 SSL/TLS 的 LDAP (LDAPS),以确保 LDAP 流量的机密性和安全性。默认情况下,Managed Microsoft AD 和客户端应用之间的通信不会为简单的 LDAP 绑定加密。
如需启用 LDAPS,您必须拥有证书。本页面还介绍了所需证书的规范以及如何验证和监控该证书。
请求证书
您可以从公共证书授权机构 (CA)、企业 CA、Google Cloud Certificate Authority Service 请求证书,也可以使用自签名证书。如果您使用自签名证书,请按照下一部分中与 PowerShell 命令关联的 Microsoft 文档操作。
您可以在 Windows、OpenSSL 或 MakeCert 中使用 New-SelfSignedCertificate
命令创建自签名证书。
证书要求
您的证书必须满足以下要求:
- 下表概述了创建自签名证书的要求,并列出了
New-SelfSignedCertificate
命令中使用的关联参数。请注意,参数或字段名称可能会因证书的创建方式而异。
参数 | 说明 |
---|---|
Subject (科目名称) |
此值必须是 Managed Microsoft AD 网域的带通配符前缀的名称,以确保服务在升级或恢复过程中保持可用。这是因为域控制器使用随机名称,这些名称会在升级或恢复过程中发生变化。例如,如果域名是 ad.mycompany.com ,则主题名称必须是 CN=*.ad.mycompany.com
|
DnsName (DNS 名称或主题备用名称) |
它只能包含以下内容:"CN=*.ad.mycompany.com","CN=.ad.mycompany.com"
|
KeySpec |
此参数必须设置为 1 ,表示它可用于数字签名和密钥交换。
|
KeyLength |
密钥大小下限取决于加密算法。 |
KeyUsage |
它必须包含“数字签名”和“密钥加密”。 |
TextExtension 或 EnhancedKeyUsageExtension |
它必须具有 OID=1.3.6.1.5.5.7.3.1 才能进行服务器身份验证。
|
NotBefore |
证书有效的时间。启用 LDAPS 时,证书必须有效。 |
NotAfter |
证书无效的时间。启用 LDAPS 时,证书必须有效。 |
KeyAlgorithm (签名算法) |
不支持弱签名算法,如 SHA-1、MD2、MD5。 |
签发链:整个证书链必须上传且必须有效。链必须为线性,不能有多个链。
证书格式:该格式必须符合公钥加密标准 (PKCS) #12。您必须使用 PFX 文件。
向公共 CA 或企业 CA 提出请求
如需从公共 CA 或企业 CA 请求证书,请按照这些步骤操作。
在生成请求的同一虚拟机上接受该证书。
以 PKCS #12 格式导出证书
如需以 PKCS #12 格式(作为 PFX 文件)导出证书,请完成以下步骤:
在 Windows 中,在 Microsoft 管理控制台 (MMC) 中前往您的证书。
展开本地计算机证书,然后导航到个人 > 证书。
右键点击您创建的证书以启用 LDAPS,然后选择所有任务 > 导出。
在随即显示的证书导出向导对话框中,点击下一步。
在导出私钥页面上,选择是以导出私钥。
在导出文件格式页面上,选择个人信息交换 - PKCS #12 (.PFX) 和如果可能,包括证书路径中的所有证书复选框。点击下一步。
在安全页面上,选中密码复选框,然后输入安全系数高的密码以保护证书。点击下一步。在 Managed Microsoft AD 网域中配置 LDAPS 时,必须提供此密码。
在要导出的文件页面上,输入要导出的 PFX 文件的目的地名称和路径。点击下一步。
点击完成。
如需将包含 PKCS #12 格式私钥的自签名证书导出为 PFX 文件,请使用 Export-PfxCertificate
命令;如需将自签名证书导出为 PEM 文件,请使用 Export-Certificate
命令。
将发卡机构链分发到客户端计算机
为了使 LDAPS 正常运行,所有客户端计算机都必须信任 LDAPS 证书的颁发者。对于知名公共 CA,客户端计算机可能已经信任颁发者链。如果该链不受信任,请完成以下步骤,以导出颁发者链:
在 Windows 中,在 Microsoft 管理控制台 (MMC) 中前往您的证书。
展开本地计算机证书,然后导航到个人 > 证书。 双击 LDAPS 证书。
在证书窗口中,点击认证路径标签页。
在认证路径标签页上,选择路径中的根证书。
点击查看证书。
点击详细信息标签页,然后点击复制到文件...
在随即显示的证书导出向导对话框中,选择以 Base-64 编码的 X.509,然后点击下一步。
为证书链选择文件名和位置,然后点击完成。
如需将证书复制到建立 LDAPS 连接的客户端计算机,请使用证书导入向导对话框在“本地机器”存储区中导入证书。或者,您也可以在 Windows 中使用组策略将颁发机构的证书链分发给客户端计算机。
如需将自签名证书导入本地机器的可信根存储区,请使用 Import-Certificate
命令。
在 Managed Microsoft AD 网域上启用 LDAPS
在 Managed Microsoft AD 网域上启用 LDAPS 之前,请执行以下操作:
确保您拥有以下某个 IAM 角色:
- Google Cloud Managed Identities Admin (
roles/managedidentities.admin
) - Google Cloud Managed Identities Domain Admin
(
roles/managedidentities.domainAdmin
)
如需详细了解代管式 Microsoft AD IAM 角色,请参阅访问权限控制。
- Google Cloud Managed Identities Admin (
如需在 Managed Microsoft AD 网域上启用 LDAPS,请完成以下步骤:
控制台
- 在 Google Cloud 控制台中,前往托管式 Microsoft AD 页面。
前往“代管式 Microsoft AD”页面 - 在 Domains(网域)页面上,从实例列表中选择要启用 LDAPS 的网域。
- 在“网域详情”页面的 LDAPS 部分,点击配置 LDAPS。
- 在配置 LDAPS 窗格中,输入 PFX 文件的位置以及您在以 PKCS #12 格式导出证书时使用的密码,然后点击配置 LDAPS。
gcloud
运行以下 gcloud CLI 命令:
gcloud active-directory domains update-ldaps-settings DOMAIN_NAME \ --certificate-pfx-file=PFX_FILENAME \ --certificate-password=PASSWORD
替换以下内容:
- DOMAIN_NAME:代管式 Microsoft AD 网域的完整资源名称。资源全名格式:
projects/PROJECT_ID/locations/global/domains/DOMAIN_NAME
。 - PFX_FILENAME:PKCS #12 格式的 PFX 文件,用于指定用于配置 LDAPS 的证书链。
- PASSWORD:用于加密 PKCS #12 证书的密码。如果您未指定密码,系统会在运行命令时提示您输入密码。
此操作最多可能需要 20 分钟才能完成。如需更新证书,请使用更新后的 PFX 文件重复上述步骤。
验证 LDAPS
您可以通过执行 LDAPS 绑定来验证 LDAPS 是否已启用。此过程使用 LDP.exe
,这是将虚拟机加入网域时安装的 RSAT 工具之一。
在已加入网域的 Google Cloud Windows 虚拟机上,在 PowerShell 中完成以下步骤:
在 PowerShell 中,启动
LDP.exe
,然后依次选择连接 > 连接。在连接对话框中,完成以下步骤:
- 在服务器字段中,输入您的域名。
- 在端口字段中,输入
636
。 - 选中 SSL 复选框。
- 点击确定。
如果正确启用了 LDAPS,则连接将会成功。
监控证书
您可以在 Cloud Monitoring 中查看证书链的存留时间 (TTL)。cert_ttl
指标显示证书中具有最早过期证书的有效天数。
控制台
如需使用 Metrics Explorer 查看受监控资源的指标,请执行以下操作:
-
在 Google Cloud 控制台中,前往 leaderboard Metrics Explorer 页面:
如果您使用搜索栏查找此页面,请选择子标题为监控的结果。
- 在 Google Cloud 控制台的工具栏中,选择您的 Google Cloud 项目。 对于 App Hub 配置,请选择 App Hub 宿主项目或已启用应用的文件夹的管理项目。
- 在指标元素中,展开选择指标菜单,在过滤栏中输入
LDAPS Certificate TTL
,然后使用子菜单选择一个特定资源类型和指标:- 在活跃资源菜单中,选择 Microsoft Active Directory 网域。
- 在活跃指标类别菜单中,选择 Microsoft_ad。
- 在活跃指标菜单中,选择 LDAPS 证书 TTL。
- 点击应用。
如需从显示结果中移除时序,请使用过滤条件元素。
如需组合时序,请使用聚合元素上的菜单。例如,如需根据虚拟机所在的可用区显示虚拟机的 CPU 利用率,请将第一个菜单设置为平均值,并将第二个菜单设置为可用区。
当聚合元素的第一个菜单设置为未聚合时,系统会显示所有时序。聚合元素的默认设置由您选择的指标类型决定。
- 对于配额和每天报告一个样本的其他指标,请执行以下操作:
- 在显示窗格中,将微件类型设置为堆叠条形图。
- 将时间段设置为至少一周。
您还可以点击网域详情页面 LDAPS 部分中的监控,前往 Metrics Explorer。
您还可以使用查询编辑器来查找这些指标。
在指标标签页上,选择查询编辑器。
在查询编辑器的文本字段中,输入以下 MQL 查询,然后选择运行查询。
fetch microsoft_ad_domain | metric 'managedidentities.googleapis.com/microsoft_ad/domain/ldaps/cert_ttl' | group_by 1m, [value_cert_ttl_mean: mean(value.cert_ttl)] | every 1m | group_by [resource.fqdn], [value_cert_ttl_mean_aggregate: aggregate(value_cert_ttl_mean)]
停用 LDAPS
如需停用 LDAPS,请完成以下步骤:
控制台
- 在 Google Cloud 控制台中,前往托管式 Microsoft AD 页面。
前往“代管式 Microsoft AD”页面 - 在 Domains(网域)页面上,从实例列表中选择要停用证书的网域。
- 在网域详细信息页面的 LDAPS 部分中,点击停用。
gcloud
运行以下 gcloud CLI 命令:
gcloud active-directory domains update-ldaps-settings DOMAIN_NAME \ --clear-ldaps-certificate
将 DOMAIN_NAME 替换为代管式 Microsoft AD 网域的完整资源名称。资源全名格式:projects/PROJECT_ID/locations/global/domains/DOMAIN_NAME
。
此操作最多可能需要 20 分钟才能完成。如需重新启用 LDAPS,您必须重新上传证书。