首页 > 编程 > Java > 正文

PowerShell用户认证Function实例代码

2019-11-26 13:50:08
字体:
来源:转载
供稿:网友

   在最近工作中遇到对用户验证,需要根据用户名和密码验证用户是否合法。在外文网站找到的这段代码,在这里分享给大家,如果你也需要用户验证的话,那么可以直接copy使用,现在没地方用,也可以收藏备用。

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.'         } else {           $principalContext = New-Object -TypeName System.DirectoryServices.AccountManagement.PrincipalContext 'Domain', $system.Domain         }       } else {         $principalContext = New-Object -TypeName System.DirectoryServices.AccountManagement.PrincipalContext 'Machine', $env:COMPUTERNAME       }             return $principalContext.ValidateCredentials($Username, $Password)     }     catch {       throw 'Failed to test user credentials. The error was: "{0}".' -f $_     }   }}

使用很简单方便:Test-UserCredential  “用户名” “密码” “用户域”,第三个参数“用户域”为可选参数,返回为布尔类型。

以上就是对PowerShell 用户认证 Function的资料整理,后续继续补充相关资料,谢谢大家对本站的支持!

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表