我如何从AD域名获得windows登录域名

本文关键字:域名 windows 登录 AD | 更新日期: 2023-09-27 18:10:28

我有AD域名如MyDomain.com和Windows登录域名如MD (MD=MyDomain)。如何使用DirectoryEntry从AD域获得win登录域名。属性收集?

我如何从AD域名获得windows登录域名

也许,你可以这样写:

string username = "<username>";
DirectoryEntry de = new DirectoryEntry(
    "LDAP://" + ConfigurationManager.AppSettings["ADDomain"],
    ConfigurationManager.AppSettings["ADUsername"],
    ConfigurationManager.AppSettings["ADPassword"]);
DirectorySearcher ds = new DirectorySearcher(de);
ds.Filter = string.Format("samaccountname={0}",
    (username.Split('''').Length > 1) ? username.Split('''')[1] : username);
SearchResult result = ds.FindOne();
if (result == null)
    throw new ArgumentException(
        string.Format("Username '{0}' does not exist in the active directory", username), "username");

你可以在SearchResult对象上使用Properties集合来从用户对象获取信息(例如result.Properties["samaccountname"])。一些有用的键有:

  • 列表项samaccountname (Windows用户名)
  • 列表项displayName(全称)
  • 列表项telephoneNumber
  • 列表项邮件(邮箱地址)
  • 列表项部门(用户所属部门)