我正在創建一個PrincipalContext對象,用於從AD數據庫中檢索用戶的組(我們使用這些身份驗證來驗證網站的各個部分)。使用Windows身份驗證創建PrincipalContext
這習慣使用窗體身份驗證來完成,所以代碼看起來是這樣的
PrincipalContext pc =
new PrincipalContext(ContextType.Domain, "domain.com", username, password);
UserPrincipal usp =
UserPrincipal.FindByIdentity(pc, IdentityType.Guid, user.Guid.ToString());
foreach (var group in usp.GetGroups())
{
// Add group to collection
}
然而,我們最近切換到Windows身份驗證,我不再能夠訪問用戶的密碼。
如何使用當前用戶的憑據搜索AD數據庫?我試過使用模擬,但它在FindByIdentity
行上拋出An operations error occurred
錯誤。如果我忘記了所有身份驗證,我只限於返回的組數。
當你說現在的用戶,你的意思是用戶運行該exe文件? – Botonomous
@Anon對不起,我應該提到這是一個asp.net內聯網站點。我的意思是用戶瀏覽網頁。 –