在没有密码c#4.5的情况下检查LDAP目录的用户名
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在没有密码c#4.5的情况下检查LDAP目录的用户名相关的知识,希望对你有一定的参考价值。
我在C#.Net 4.5工作。我正在使用下面的代码来检查特定用户是否属于给定的AD组。但是,虽然我输入了有效的用户详细信息,但它没有给出结果。
DirectoryEntry de = new DirectoryEntry();
de.Path = "LDAP://xyz.com";
DirectorySearcher deSearch = new DirectorySearcher();
deSearch.SearchRoot = de;
string usr = "test1";
deSearch.Filter = string.Format("(&(objectCategory=person)(anr={0}))", usr);
SearchResult result = deSearch.FindOne();
我也尝试过以下Filter标准,但结果为null。请告诉我代码中出了什么问题。
- deSearch.Filter =“(&(objectCategory = person)(objectClass = user)(sn =”+ usr +“))”
- deSearch.Filter =“(uid =”+ usr +“)”;
- deSearch.Filter =“(&(objectCategory = person)(objectClass = user)(racfid =”+ usr +“))”
答案
试试这样的userPrincipalName
:
deSearch.Filter = "(&(objectCategory=person)(objectClass=user)(userPrincipalName=" + usr + "@*))";
deSearch.PropertiesToLoad.Add("userPrincipalName");
deSearch.PropertiesToLoad.Add("displayName");
SearchResult result = deSearch.FindOne();
以上是关于在没有密码c#4.5的情况下检查LDAP目录的用户名的主要内容,如果未能解决你的问题,请参考以下文章
配置 Spring Security 以在没有匿名和没有绑定 DN 的情况下针对 LDAP 进行身份验证
java - 如何使用给定的LdapContext检查ldap中的用户密码?
Java Active Directory LDAP - 使用密码哈希对用户进行身份验证
是否可以在没有密码的情况下使用 Spring SecurityConfiguration HttpSecurity 登录?