是否有人从SQL Server成功查询LDAPS(LDAP over SSL / TLS)?你是怎么做到的?
客户要求我们在使用LDAPS的网络上设置我们的程序。我已经在许多其他位置成功使用过LDAP查询,但目前尚不清楚这是否适用于LDAPS,或者语法是什么。我希望它可以工作,但不知道如何设置它。
作为测试,我们尝试在自己的网络上设置LDAPS。我们可以使用ldp.exe进行连接,但尝试从SQL查询它始终失败,并显示“Msg 7321,Level 16,State 2 ...”
这是通常有效的查询,我正在尝试修改LDAPS。
SELECT COUNT(*) FROM OPENROWSET('ADSDSOObject', 'adsdatasource';
'domain user here'; 'domain password here',
'SELECT SAMAccountName FROM
''LDAP://192.168.0.105
WHERE SAMAccountName = ''test.test'' and objectClass = ''user''
')
答案 0 :(得分:0)
部分成功 - 在其他一些堆栈溢出帖子的帮助下,我得到了语法,并且能够从自身成功查询域服务器。
正确的语法是: SELECT COUNT(*)FROM OPENROWSET(' ADSDSOObject',' adsdatasource&#39 ;;'域用户在这里&#39 ;;'域名密码在这里',&# 39; 选择SAMAccountName FROM'' LDAP://server.domain.net:636''在哪里SAMAccountName ='' test.test''和objectClass =''用户'' &#39)
请注意协议名称" LDAP"区分大小写。
编辑:弄清楚如何从数据库服务器查询域控制器。我从域控制器导出证书,并将其导入数据服务器的受信任的根证书颁发机构商店。
我相信如果证书来自CA而不是自签名,它将进入个人存储而不是受信任的根CA存储。