Powershell参数:接受用户名和密码或凭证对象

时间:2015-08-18 09:28:00

标签: security powershell credentials

我有一个从vCenter服务器读取统计信息的脚本。要连接到vCenter,我从我的脚本中发出Connect-VIServer cmdlet。此cmdlet接受-User和-Password或-Credential。 Connect-VIServer cmdlet还允许使用-SaveCredentials参数。

现在我想在我的脚本中使用完全相同的行为,接受-User& -Password或PSCredential对象。如果未指定任何一个,则提示输入用户名和密码。并指定-SaveCredentials,将指定的凭据保存在本地凭据存储中。

任何想法或代码段都非常感谢!

干杯,恩斯特

1 个答案:

答案 0 :(得分:1)

离开我的头顶你可能会做...

[CmdletBinding()]
Param(
[Parameter(Mandatory=$false,Position=1)]
[string]$user,

[Parameter(Mandatory=$false,Position=2)]
[string]$pass,

[parameter(Mandatory=$false,Position=1)]
[credential]$creds
)

然后检查每个参数并确定使用哪个,或者使用保存选项提示某些信用