PowerShell用户认证Function实例代码

 更新时间:2016年09月15日 09:47:58   作者:破狼  
这篇文章主要介绍了PowerShell用户认证Function的资料,并附实例代码,帮助大家学习理解,有需要的小伙伴可以参考下

   在最近工作中遇到对用户验证,需要根据用户名和密码验证用户是否合法。在外文网站找到的这段代码,在这里分享给大家,如果你也需要用户验证的话,那么可以直接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的资料整理,后续继续补充相关资料,谢谢大家对本站的支持!

相关文章

  • java基础之Integer与int类型输出示例解析

    java基础之Integer与int类型输出示例解析

    这篇文章主要为大家介绍了java基础之Integer与int类型输出示例解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-06-06
  • Spring MVC 图片的上传和下载功能

    Spring MVC 图片的上传和下载功能

    SSM 框架是一种基于Java的Web开发框架,其中Spring作为控制层、SpringMVC作为视图层、MyBatis作为持久层,这个框架非常适合Web应用程序的开发,这篇文章主要介绍了Spring MVC 图片的上传和下载功能,需要的朋友可以参考下
    2023-03-03
  • Java使用Filter实现登录验证

    Java使用Filter实现登录验证

    本文主要介绍了Java使用Filter实现登录验证,Filter类似于门卫,你在进入之前门卫需要盘查你,身份合法进入,身份不合法拦截,感兴趣的可以了解一下
    2023-11-11
  • 一文带你弄懂Java中线程池的原理

    一文带你弄懂Java中线程池的原理

    工作中,我们经常使用线程池,但是你真的了解线程池的原理吗?同时,线程池工作原理和底层实现原理也是面试经常问的考题,所以,今天我们一起聊聊线程池的原理吧
    2022-12-12
  • Java代理模式详细解析

    Java代理模式详细解析

    这篇文章主要为大家详细介绍了Java代理模式的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-03-03
  • 详解@ConditionalOnMissingBean注解的作用

    详解@ConditionalOnMissingBean注解的作用

    这篇文章主要介绍了详解@ConditionalOnMissingBean注解的作用,@ConditionalOnMissingBean,它是修饰bean的一个注解,主要实现的是,当你的bean被注册之后,如果而注册相同类型的bean,就不会成功,它会保证你的bean只有一个,需要的朋友可以参考下
    2023-10-10
  • Java实现广度优先遍历的示例详解

    Java实现广度优先遍历的示例详解

    广度优先遍历:广度优先遍历是连通图的一种遍历策略,因为它的思想是从一个顶点V0开始,辐射状地优先遍历其周围较广的区域故得名。本文详细介绍了Java如何实现广度优先遍历,感兴趣的小伙伴可以学习一下
    2022-02-02
  • Spring Cloud Nacos 和 Eureka区别解析

    Spring Cloud Nacos 和 Eureka区别解析

    Spring Cloud Nacos 和 Spring Cloud Eureka 都是 Spring Cloud 微服务框架中的服务注册和发现组件,用于帮助开发者轻松地构建和管理微服务应用,这篇文章主要介绍了Spring Cloud Nacos 和 Eureka区别,需要的朋友可以参考下
    2023-08-08
  • Java8中Lambda表达式的理解与应用

    Java8中Lambda表达式的理解与应用

    Java8最值得学习的特性就是Lambda表达式和Stream API,如果有python或者javascript的语言基础,对理解Lambda表达式有很大帮助,下面这篇文章主要给大家介绍了关于Java8中Lambda表达式的相关资料,需要的朋友可以参考下
    2022-02-02
  • SSM框架通过mybatis-generator自动生成代码(推荐)

    SSM框架通过mybatis-generator自动生成代码(推荐)

    这篇文章主要介绍了SSM框架通过mybatis-generator自动生成代码,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2017-11-11

最新评论