在我的开发机器上,我必须安装 AD-LDS。原则上它工作正常,但是第一次通过 PrincipalContext 类连接到 AD-LDS 非常慢(30 秒以上)。在我看来,它首先尝试连接到一些不存在的主机或目录,然后在超时(30 秒)后连接到我的 AD-LDS 并执行它应该做的事情。
我在使用 LDP.exe 和 SSL 连接时观察到的行为相同。但是,使用 ADSI-Edit,通过 SSL 进行连接非常快。通过非 SSL 连接也是如此。
我看了看是否能在提琴手中看到一些东西,但什么也没有。同样在事件日志中我什么也找不到。也许它与证书查找有关?它是使用 makecert 进行自签名的。
更新
与此同时,我观察到一件小事,可能会给出提示:在系统事件日志中,第一次建立与 AD-LDS 的 SSL 连接时,会出现以下消息:
在没有配置的 DNS 服务器响应后,名称 _ldap._tcp.[ ] 的名称解析machineName
超时
但是,消息只注册一次,但每次连接到服务器都需要 30 秒+。我也尝试在主机文件中输入相应的条目,但没有任何改变。
附加信息
证书可能不是问题,但可能有助于解决问题。因此,这里是我创建证书的方式(或多或少的货物代码):
根权限
makecert -pe -n "CN=MyDevRootAuthority" -ss my -sr LocalMachine -a sha1 -sky signature -r "MyDevRootAuthority.cer"
服务器证书
makecert -pe -n "CN=[MyComputerName]" -ss my -sr LocalMachine -a sha1 -sky exchange -eku 1.3.6.1.5.5.7.3.1 -in "MyDevRootAuthority" -is MY -ir LocalMachine -sp "Microsoft RSA SChannel Cryptographic Provider" -sy 12 "MyTestCertificate.cer"
创建后,我将根权限移至受信任的权限并授予所需的权限。