如何获取IdentityReference对象的显示名称?

时间:2011-08-10 04:03:51

标签: c# .net .net-4.0

鉴于IdentityReference返回的WindowsIdentity.GetCurrent()个对象,如何找到给定组的显示/友好名称?

2 个答案:

答案 0 :(得分:23)

identityReference.Translate(typeof(NTAccount)).Value应该这样做。

答案 1 :(得分:0)

尝试群组:

PrincipalContext PC = new PrincipalContext(ContextType.Machine);

foreach (var G in WindowsIdentity.GetCurrent().Groups )
{
string DisplayN = Principal.FindByIdentity (PC, IdentityType.Sid, G.ToString() ).DisplayName;
}

尝试用户:

string DisplayN = Principal.FindByIdentity (new PrincipalContext(ContextType.Machine), IdentityType.Sid, WindowsIdentity.GetCurrent().User.ToString() ).DisplayName;

请参阅http://msdn.microsoft.com/en-us/library/system.directoryservices.accountmanagement.aspx