![在受信任林场景中设置 CES 和 CEP PKI 时遇到问题](https://linux22.com/image/784234/%E5%9C%A8%E5%8F%97%E4%BF%A1%E4%BB%BB%E6%9E%97%E5%9C%BA%E6%99%AF%E4%B8%AD%E8%AE%BE%E7%BD%AE%20CES%20%E5%92%8C%20CEP%20PKI%20%E6%97%B6%E9%81%87%E5%88%B0%E9%97%AE%E9%A2%98.png)
我有两个具有双向林信任的 AD 域。我希望 DomainB 中的计算机帐户从 DomainA 中的双层 Windows CA 注册计算机客户端身份验证证书。我为此在颁发 CA 中配置了一个证书模板,并授予 DomainB 中的计算机读取和注册权限。
我根据 Microsoft文档。CEP 和 CES 使用具有 SPN 的域服务帐户进行 Kerberos 身份验证,并为 HOST 和 RPCSS 配置了 Kerberos 委派。该服务帐户是 IISUsers 组的成员,并且对颁发 CA 具有“请求证书”权限。
为了进行测试,我在 DomainB Win10 计算机上使用证书管理器手动配置使用 CEP URI 的注册策略,但出现错误“远程端点拒绝访问“。但是,如果我删除服务帐户上 HOST 和 RPCSS 的 SPN 和 Kerberos 委派,它确实可以正确完成。CES 服务帐户应该配置了 Kerberos 委派,对吗?
如果我尝试为 DomainB 中的计算机申请新证书,我可以看到颁发 CA,但它说证书类型不可用即使计算机具有读取和注册权限。日志没有告诉我任何信息,只是它可以看到证书模板。
知道我在这里做错了什么吗?这应该可以使用 Kerberos 身份验证,对吗?
答案1
我终于搞明白了。我在这里列出解决方案,以便将来帮助其他人。
有效的配置是使用应用程序池标识(而不是具有 SPN 和 Kerberos 委派的 AD 服务帐户)在 CA 上安装 CES 和 CEP。这里不需要这样做,因为 CES 和 CEP 安装在 CA 上。如果角色位于不同的服务器上,则可能需要这样做。CES 和 CEP 都配置为使用 Kerberos 身份验证。此配置允许 DomainB 中的计算机验证和使用 CEP URI。
配置完成后,DomainB 中的计算机可以连接到 CEP 并查看模板,但会收到 DS Referral 错误 -0x803d0013 (-2143485933 WS_E_ENDPOINT_FAULT_RECEIVED) 从服务器返回了引用。0x8007202b (WIN32:8235 ERROR_DS_REFERRAL). 使用以下方式在 CA 上启用 LDAP 引用支持certutil -setreg Policy\EditFlags +EDITF_ENABLELDAPREFERRALS然后重新启动 CA 服务并运行 IISRESET。