Kam*_*yar 4 .net directoryservices ldap .net-4.0 active-directory
我正在使用System.DirectoryServices
查询活动目录来验证/获取winforms应用程序中的用户信息.如下所示:
var path = "LDAP://" + domain;
var entry = new DirectoryEntry(path);
DirectorySearcher myDirectorySearcher = new DirectorySearcher(entry);
var filter = string.Format("(&(ObjectClass={0})(sAMAccountName={1}))", "person", username);
myDirectorySearcher.Filter = filter;
Run Code Online (Sandbox Code Playgroud)
我只能在公司的Active Directory上测试此代码.这是否适用于任何支持的技术LDAP
?
该System.DirectoryServices
命名空间为Active Directory优化.它将对其他LDAP服务器起作用 - 具有某些限制.
还有System.DirectoryServices.Protocols
(参见MSDN文档和介绍MSDN文章)命名空间(.NET 2.0中的新增功能),它更像是一种低级LDAP实现 - 你需要做更多工作并编写更多代码,但它更便携,更有可能与其他LDAP商店合作.
还有System.DirectoryServices.AccountManagement
(参见MSDN文档)命名空间(.NET 3.5中的新增功能),这是一种使用.NET的Active Directory的更好,更简单的方法 - 比S.DS的东西大大改进了!但据我所知,这只是Active Directory.