English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Пример кода функции аутентификации пользователя PowerShell

   В последнее время в моей работе arose задача проверки подлинности пользователей, необходимо было проверять легитимность пользователей по имени и паролю. Код, найденный на иностранных веб-сайтах, я хочу здесь поделиться с вами, если вам也需要 проверку подлинности пользователей, вы можете напрямую скопировать и использовать его, если сейчас его не нужно, вы также можете сохранить его на будущее.

Function Test-UserCredential {
   [CmdletBinding()] [OutputType([System.Boolean])]
   param(
     [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()]
     [System.String] $Username,
     [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()]
     [System.String] $Password,
     [Parameter()]
     [Switch] $Domain
   )
   Begin {
     $assembly = [system.reflection.assembly]::LoadWithPartialName('System.DirectoryServices.AccountManagement')
   }
   Process {
     try {
       $system = Get-WmiObject -Class Win32_ComputerSystem
       if ($Domain) {
         if (0, 2 -contains $system.DomainRole) {
           throw 'This computer is not a member of a domain.'
         }
           $principalContext = New-Object -TypeName System.DirectoryServices.AccountManagement.PrincipalContext 'Domain', $system.Domain
         }
       }
         $principalContext = New-Object -TypeName System.DirectoryServices.AccountManagement.PrincipalContext 'Machine', $env:COMPUTERNAME
       }
       return $principalContext.ValidateCredentials($Username, $Password)
     }
     catch {
       throw 'Не удалось проверить учетные данные пользователя. Ошибка: "{0}".' -f $_
     }
   }
}

Использование очень просто и удобно: Test-UserCredential “имя пользователя” “пароль” “домен пользователя”, третий параметр “домен пользователя” является опциональным, результат возвращает тип bool.

Вот так мы собрали информацию о функции аутентификации пользователей PowerShell. В будущем мы продолжим добавлять соответствующие материалы, спасибо за поддержку нашего сайта!

Заявление: Контент этой статьи был взят из Интернета, авторские права принадлежат соответствующему автору, контент был предоставлен пользователями Интернета в порядке самодеятельности, сайт не обладает правами собственности, не был отредактирован вручную и не несет ответственности за связанные с этим юридические вопросы. Если вы обнаружите контент,涉嫌侵犯版权, пожалуйста, отправьте письмо по адресу: notice#oldtoolbag.com (во время отправки письма замените # на @) для сообщения о нарушении и предоставьте соответствующие доказательства. При обнаружении фактов нарушения, сайт незамедлительно удаляет涉嫌侵权的内容。

Рекомендуемое