PowerShell远程执行脚本时,如果当前用户没有权限,则需要用户名和密码才能在远程服务器执行脚本。如果在PowerShell脚本中保存明文密码,密码丢失的风险会非常高。PowerShell提供创建加密密码文件功能,能够将明文密码加密为密文密码,经过加密的密码文件能够重复使用。
注意:密码文件只能由创建它的帐户读取和使用。
#生成密码文件 "<YourPassword>" | ConvertTo-SecureString -AsPlainText -Force | ConvertFrom-SecureString | Out-File "C:\Password.txt" #创建认证信息 $UserName = "User Name" $PasswordFile = "C:\Password.txt" $MyCredential = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $UserName, (Get-Content $PasswordFile | ConvertTo-SecureString) #调用认证信息 #示例(XenServer 连接) Connect-XenServer -Url https://192.168.1.1 -Creds $MyCredential -NoWarnCertificates -SetDefaultSession