[.NET] : 取得 Active Directory使用者的 Domain\User

 

前言 :

处理AD数据的时候
常常会需要取得用户的Domain\User数据
可是用户的AD属性却没有这个数据
本篇文章的程序示范,如何取得用户的Domain\User。

 

实作 :

using System;
using System.Collections.Generic;
using System.Text;
using System.DirectoryServices;
using System.Security.Principal;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            string userURL = @"LDAP://e12.com/CN=TTT,DC=E12,DC=com"; 

            Console.WriteLine(GetSamName(userURL));

            Console.ReadLine();
        } 

        public static string GetSamName(string userURL)
        {
            using (DirectoryEntry user = new DirectoryEntry(userURL)) 
            {
                SecurityIdentifier securityIdentifier = new SecurityIdentifier((byte[])(user.Properties["objectsid"].Value), 0);
                NTAccount account = (NTAccount)securityIdentifier.Translate(typeof(NTAccount));
                return account.Value;
            }
        }
    }
}
posted @ 2011-10-10 08:49  Clark159  阅读(277)  评论(0编辑  收藏  举报