我有一个从Active Directory中提取用户组的方法。但问题是它正在使用System.DirectoryServices.AccountManagement;当我想在sql-server上部署存储过程时,我必须使其不安全。
有没有办法在不使数据库不安全的情况下获取组?
的有用链接答案 0 :(得分:1)
是的,还有另一种方式。此处详细介绍了此过程:https://blog.sqlauthority.com/2016/03/30/sql-server-query-active-directory-data-using-adsi-ldap-linked-server/
它涉及设置指向AD的链接服务器,并具有可以对域进行身份验证的登录。然后使用OPENQUERY
查询该链接服务器。
这样的事情(假设您将链接服务器称为“ADSI”):
SELECT * FROM OpenQuery (
ADSI,
'SELECT *
FROM ''LDAP://DC=domain,DC=com''
WHERE objectClass = ''User''
')