显示名称 |
属性名称 |
First Name |
givenName |
Last Name |
sn |
Initials |
initials |
Description |
description |
Office |
physicalDeliveryOfficeName |
Telephone Number |
telephoneNumber |
Telephone: Other |
otherTelephone |
|
|
Web Page |
wwwHomePage |
Web Page: Other |
url |
帐号属性:
显示名称 |
属性名称 |
UserLogon Name |
userPrincipalName |
User logon name (pre-Windows 2000) |
sAMAccountname |
Logon Hours |
logonHours |
Log On To |
logonWorkstation |
Account is locked out |
userAccountControl |
User must change password at next logon |
pwdLastSet |
User cannot change password |
N/A |
Other Account Options |
userAccountControl |
Account Expires |
accountExpires |
地址属性
显示名称 |
属性名称 |
Street |
streetAddress |
P.O.Box |
postOfficeBox |
City |
l |
State/Province |
st |
Zip/Postal Code |
postalCode |
Country/Region |
c, co, and countryCode |
成员属性
显示名称 |
属性名称 |
Member of |
memberOf |
Set Primary Group |
primaryGroupID |
组织属性
显示名称 |
属性名称 |
Title |
title |
Department |
department |
Company |
company |
Manager:Name |
manager |
Direct Reports |
directReports |
外型属性
显示名称 |
属性名称 |
Profile Path |
profilePath |
Logon Script |
scriptPath |
Home Folder: Local Path |
homeDirectory |
Home Folder: Connect |
homeDrive |
Home Folder: To |
homeDirectory |
电话相关属性
显示名称 |
属性名称 |
Home |
telephoneNumber |
Home: Other |
otherTelephone |
Pager |
pager |
Pager: Other |
pagerOther |
Mobile |
mobile |
Mobile: Other |
otherMobile |
Fax |
facsimileTelephoneNumber |
Fax: Other |
otherFacsimileTelephoneNumber |
IP phone |
ipPhone |
IP phone: Other |
otherIpPhone |
Notes |
info |
C#操作AD例子:
GetUserEntry
public static DirectoryEntry GetUserEntryByAccount(DirectoryEntry entry, string account)
{
DirectorySearcher searcher = new DirectorySearcher(entry);
searcher.Filter = "(&(objectClass=user)(SAMAccountName=" + account + "))";
SearchResult result = searcher.FindOne();
entry.Close();
if (result != null)
{
return result.GetDirectoryEntry();
}
return null;
}
Set Property
public static void SetProperty(DirectoryEntry entry, string propertyName, string propertyValue)
{
if (entry.Properties.Contains(propertyName))
{
if (string.IsNullOrEmpty(propertyValue))
{
object o = entry.Properties[propertyName].Value;
entry.Properties[propertyName].Remove(o);
}
else
{
entry.Properties[propertyName][0] = propertyValue;
}
}
else
{
if (string.IsNullOrEmpty(propertyValue))
{
return;
}
entry.Properties[propertyName].Add(propertyValue);
}
}
Get Property
public static string GetProperty(DirectoryEntry entry, string propertyName)
{
if (entry.Properties.Contains(propertyName))
{
return entry.Properties[propertyName].Value.ToString();
}
else
{
return string.Empty;
}
}