我有一个powershell脚本,可以在其中将VPN添加到本地计算机。它提示输入用户凭据,然后创建VPN连接并添加凭据。当我在自己的计算机上尝试执行此操作时,效果很好,但是当我在另一台计算机上尝试执行此操作时,出现错误,提示“ Set-VpnConnectionUsernamePassword不是命令”。
有人知道是什么原因或如何解决此问题。
$creds = $host.ui.PromptForCredential("Need credentials", "Voer de inloggegevens in van de VPN gebruiker", "", "")
$name = "name of vpn"
$username = $creds.username
$plainpassword = $creds.password
Add-VpnConnection -Name $name -ServerAddress $name -RememberCredential -TunnelType Pptp
Set-VpnConnectionUsernamePassword -connectionname $name -username $username -password $plainpassword
答案 0 :(得分:2)
该错误消息表明在另一台计算机上未安装模块VPNCredentialsHelper。
除此之外,还有您的代码
$plainpassword = $creds.password
变量$plainpassword
的密码为System.Security.SecureString
,但是代码需要纯文本字符串(因此为变量名)。
您应该将其更改为
$plainpassword = $creds.GetNetworkCredential().Password