查找指定的用户,显示其所有属性
public
void
SearchUser(
string
userName)

...
{
DirectoryEntry deUser = new DirectoryEntry("LDAP://10.99.185.18/DC=zhaijx,DC=cn","codingtaoist","54638");
DirectorySearcher src = new DirectorySearcher(deUser);
src.Filter = "(&(objectClass=user)(SAMAccountName="+userName+"))";
src.SearchRoot = deUser;
src.SearchScope = SearchScope.Subtree;
SearchResult result = src.FindOne();
DirectoryEntry objDirEnt = new DirectoryEntry(result.Path, "codingtaoist","54638", AuthenticationTypes.Secure);
IDictionaryEnumerator e = objDirEnt.Properties.GetEnumerator();
Response.Write("<table>");
while(e.MoveNext())

...{
DisplayOneProperty(objDirEnt,e.Key.ToString());
}
Response.Write("</table>");
}

public
void
DisplayOneProperty(DirectoryEntry de ,
string
PropertyName)

...
{
if (de.Properties.Contains(PropertyName))

...{
string myvalue= de.Properties[PropertyName].Value.ToString();
Response.Write("<tr>");
Response.Write("<td>");
Response.Write(PropertyName);
Response.Write("</td>");
Response.Write("<td>");
Response.Write(myvalue);
Response.Write("</td>");
Response.Write("</tr>");
}
}
private
bool
isDisable(DirectoryEntry de)

...
{
if(de.Properties.Contains("UserAccountControl"))

...{
string myvalue= de.Properties["UserAccountControl"].Value.ToString();
if(myvalue=="514")

...{
return true;
};
}
return false;
}
public
void
SearchUser(
string
userName)
...
{
DirectoryEntry deUser = new DirectoryEntry("LDAP://10.99.185.18/DC=zhaijx,DC=cn","codingtaoist","54638");
DirectorySearcher src = new DirectorySearcher(deUser);
src.Filter = "(&(objectClass=user)(SAMAccountName="+userName+"))";
src.SearchRoot = deUser;
src.SearchScope = SearchScope.Subtree;
SearchResult result = src.FindOne();
DirectoryEntry objDirEnt = new DirectoryEntry(result.Path, "codingtaoist","54638", AuthenticationTypes.Secure);
IDictionaryEnumerator e = objDirEnt.Properties.GetEnumerator();
Response.Write("<table>");
while(e.MoveNext())
...{
DisplayOneProperty(objDirEnt,e.Key.ToString());
}
Response.Write("</table>");
}

public
void
DisplayOneProperty(DirectoryEntry de ,
string
PropertyName) 
...
{
if (de.Properties.Contains(PropertyName)) 
...{
string myvalue= de.Properties[PropertyName].Value.ToString();
Response.Write("<tr>");
Response.Write("<td>");
Response.Write(PropertyName);
Response.Write("</td>");
Response.Write("<td>");
Response.Write(myvalue);
Response.Write("</td>");
Response.Write("</tr>");
}
}
判断用户是否禁用
private
bool
isDisable(DirectoryEntry de)
...
{
if(de.Properties.Contains("UserAccountControl")) 
...{
string myvalue= de.Properties["UserAccountControl"].Value.ToString();
if(myvalue=="514")
...{
return true;
};
}
return false;
}
本文介绍了一种使用C#代码从Active Directory中查找特定用户的方法,并展示了如何获取用户的全部属性以及判断用户账号是否被禁用的技术细节。
228

被折叠的 条评论
为什么被折叠?



