Exchange 2013使用PowerShell命令显示凭据

当你在运行命令时, 有几个PowerShellExchange PowerShell命令能够提供一些凭据参数,允许你使用替代组凭据.当你使用手动远程Shell连接,发送邮件,以及工作在cross-forest.在这一节,我们将学习下如何创建一个凭据对象,可以使用支持凭据参数的命令-credential

凭据工作原理

你可以使用Get-Credential命令去创建一个凭据.在下面的示例中,我们把凭据对象存储在变量中,而这个变量可以被Get-Mailbox命令使用

$credential = Get-Credential

Get-Mailbox -Credential $credential

当你运行Get-Credential命令时,会弹出一个框要求输入用户名和密码,在前面的示例中已经演示过了.在输入胡名和密码验证框后,这个凭据就被存储在变量中,然后可以命令使用-Credential参数被其它命令调用.然后命令会使用指定的凭据运行.

提供凭据命令不一定是一个互动的过程,你也可以使用编程的方式创建一个凭据对象,而不使用Get-Credential命令:

$user = "robin\administrator"

$pass = ConvertTo-SecureString -AsPlainText P@ssw0rd01 -Force

$credential = New-Object System.Management.Automation.PSCredential `

-ArgumentList $user,$pass

我们应该注意到,在上面的示例中,我们使用了ConvertTo-SecureString命令去创建一个安全的字符串对象,然后使用New-Object去创建一个凭据对象.

            如果你需要提示用户的凭据,但是你不想调用Windows身份认证对话框,你可以使用替代语法在Shell中提示用

户凭据.

$user = Read-Host "Please enter your username"

$pass = Read-Host "Please enter your password" -AsSecureString

$credential = New-Object System.Management.Automation.PSCredential `

-ArgumentList $user,$pass

技术分享

在这个语法中使用了Read-Host命令来提示用户输入用户名和密码.注意:当创建$pass对象时我们使用Read-Host –AsSecureString参数,来确保对象存储在一个安全的字符串中.创建完凭据后,我么可以通过如下命令来查看:

技术分享

在这里我们可以看到,我们可以获取存储在对象中的凭据的UserNameproperty对象.因为密码属性作为一个安全的字符储存,我们需要使用GetNetworkCredential方法将凭据NetworkCredential对象转为一个简单的字符串.

本文出自 “Robin's Home” 博客,谢绝转载!

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。