Я искал способ, чтобы определить, если в аккаунте пользоваегося справочника отключен или нет, но с помощью PrincipalContext
подхода:Определите, если учетная запись пользователя директории является отключенной учетной записью, используя 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 (How to determine if user account is enabled or disabled). Я не могу использовать это как я сделал все, что с PrincipalContext
Я удивляюсь, как я пропустил это. Я проверю это. – DoomerDGR8