[英]Determine if a directory user's account is disabled account using PrincipalContext approach
我一直在尋找一種確定目錄用戶帳戶是否被禁用的方法,但是使用PrincipalContext
方法:
using (var validatePrincipalContext = GetPrincipalContext())
{
using (var retrievedUserPrincipal = UserPrincipal.FindByIdentity(validatePrincipalContext, directoryUserName))
{
if (retrievedUserPrincipal == null)
{
LogMessage(String.Format("User {0} failed to verify on {1}.", directoryUserName, domainNameV), Severity.Error);
throw new PlatformException(ErrorCode.DomainCredentialsFailed, new Dictionary<string, string>
{
{"ADUserName", directoryUserName},
{"DirectoryIdentifier", domainNameV}
});
}
// Actual validation
if (validatePrincipalContext.ValidateCredentials(directoryUserName, directoryUserPassword))
{
LogMessage(String.Format("User {0} verified successfully on {1}.", directoryUserName, domainNameV), Severity.Info);
return retrievedUserPrincipal.UserPrincipalName;
}
LogMessage(String.Format("User {0} failed to verify on {1}.", directoryUserName, domainNameV), Severity.Info);
return String.Empty;
}
}
我在這里搜索過,看到有些人對目錄使用第二種方法:DirectoryEntry和DirectorySearcher方法( 如何確定用戶帳戶是啟用還是禁用 )。 我不能使用它,因為我已經完成了PrincipalContext
您可以檢查UserPrincipal
上的多個屬性和方法:
Enabled
:是否Enabled
了用戶帳戶 IsAccountLockedOut()
:返回一個布爾值,該布爾值指定該帳戶當前是否被鎖定。 有關更多詳細信息,請參閱UserPrincipal
上的官方MSDN文檔 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.