0
我有一個簡單WPF應用這是試圖找到ActiveDirectory中組給定的用戶中的一員。檢索組的代碼是:爲什麼我在我的WPF應用程序中獲取System.Security.AccessControl.PrivilegeNotHeldException?
public static HashSet<string> GetUserGroups(string userLogon)
{
var groups = new HashSet<string>(StringComparer.InvariantCultureIgnoreCase);
var identity = new WindowsIdentity(userLogon);
if (identity.Groups == null) { return groups; }
var type = typeof(NTAccount);
foreach (var group in identity.Groups)
{
groups.Add(group.Translate(type).ToString());
}
return groups;
}
然而,當我試圖在應用程序的啓動運行,我得到以下異常時,拋出該方法嘗試創建new WindowsIdentity(userLogon)
:
系統.Security.AccessControl.PrivilegeNotHeldException:'進程 不具有此操作所需的'SeTcbPrivilege'權限。「 此操作」。
若我運行一個應用程序Console
的代碼,這不會發生。任何想法可能會導致這種情況?
您是否曾嘗試以管理員身份運行此應用程序?是在同一用戶下運行的consolapp? –