我刚刚使用了与powershell发送邮件的美味功能。 我使用-credentials参数登录我的Windows帐户。现在我希望程序自动发送邮件而不输入密码。 有密码参数吗?还是不安全? 你们有办法把密码放在安全的文件中吗?
这就是我刚用过的东西:
Send-Mailmessage -to "$recipients" -from "$sender" -Subject "Deployment Announcer" -body "Testmail" -SMTPserver "xxx.xx.xxx.xx" -Credential "Administrator"
答案 0 :(得分:2)
如this link所示,您可以使用您的帐户名和密码创建PSCredential对象,如下所示,然后将创建的对象用作-Credential
之后的值
$secpasswd = ConvertTo-SecureString "PlainTextPassword" -AsPlainText -Force
$mycreds = New-Object System.Management.Automation.PSCredential ("username", $secpasswd)
如果您想先将密码存储到文件中,然后脚本会读取文件而不是提示您输入密码Using PowerShell credentials without being prompted for a password
,您会发现此链接很有用。答案 1 :(得分:0)
credentials参数接受psCredential对象,该对象可以包含用户名(包括域)和密码(安全存储)。如果您想重复使用凭证,请尝试
$cred = Get-Credential
Send-Mailmessage -to "$recipients" -from "$sender" -Subject "Deployment Announcer" -body "Testmail" -SMTPserver "xxx.xx.xxx.xx" -Credential $cred
Get-Credential将提示您输入用户名和密码,无需以纯文本格式存储密码。