我們爲我們的應用程序提供了一個登錄框,要求用戶輸入他們的AD憑證。我們拿這些憑據,然後致電PrincipalContext.ValidateCredentials對於空密碼返回true是什麼?
using (PrincipalContext pc = new PrincipalContext(ContextType.Domain, domain, container, ContextOptions.SimpleBind))
{
return pc.ValidateCredentials(domain + @"\" + username, password, ContextOptions.SimpleBind);
}
驗證他們已輸入有效的登錄名/密碼對。但是我們發現,對ValidateCredentials的調用將返回true,並且密碼爲空,我們不知道爲什麼。無效密碼返回false,但只要用戶名正確,空白將返回true。
你偶然登錄相同的用戶(如用戶名)爲當前登錄到機器上做測試(用戶即你登錄到本機爲'域\ user1'和你'以domain \ user1'身份登錄到應用程序中)? –
我不知道這是否與我看到的類似的問題,它爲未知的用戶返回true?最終找到與訪客帳戶啓用相關的答案。有關完整的詳細信息,請參閱http://stackoverflow.com/a/7336610/130352。 –
@ChrisJ Nope,我們遇到了我們的客戶之一的問題,並且來賓帳戶被禁用。仍試圖找出爲什麼一個空密碼被接受。 –