详解C#使用AD(Active Directory)验证内网用户名密码
1. 连到内网,找到AD的domain地址
1
2
3
|
nslookup
set types=all
_ldap._tcp
|
2. 验证AD的函数
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
public bool ADLogin( string userName, string password)
{
// sample :
// LDAP://xxx.com
string domain = System.Configuration.ConfigurationManager.AppSettings[ "AD_Domain" ];
try
{
DirectoryEntry entry = new DirectoryEntry(domain, userName, password);
object obj = entry.NativeObject;
DirectorySearcher search = new DirectorySearcher(entry);
search.Filter = string .Format( "(SAMAccountName={0})" , userName);
search.PropertiesToLoad.Add( "cn" );
SearchResult result = search.FindOne();
if (result == null )
return false ;
}
catch (Exception ex)
{
log.Error(ex);
return false ;
}
return true ;
}
|
如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
原文链接:http://blog.csdn.net/lan_liang/article/details/52554476