Отправить почту через gmail с помощью PowerShell V4

Я использовал этот PowerShell script, чтобы отправить мне электронное письмо при открытии.

$EmailFrom = "[email protected]"
$EmailTo = "[email protected]" 
$Subject = "sample subject" 
$Body = "sample body" 
$SMTPServer = "smtp.gmail.com" 
$SMTPClient = New-Object Net.Mail.SmtpClient($SmtpServer, 587) 
$SMTPClient.EnableSsl = $true 
$SMTPClient.Credentials = New-Object System.Net.NetworkCredential("YOURUSERNAME", "YOURPASSWORD"); 
$SMTPClient.Send($EmailFrom, $EmailTo, $Subject, $Body)

Я изменил $EmailTo на свой адрес электронной почты, а YOURUSERNAME/YOURPASSWORD - на правильную регистрационную информацию.

Я знаю как факт, что это работало в прошлом месяце. Недавно я изменил свой пароль Gmail, и, очевидно, этот script перестает работать. Однако я изменил YOURPASSWORD на правильный новый, и теперь по какой-то причине я получаю сообщение об ошибке при открытии:

$SMTPClient.Send($EmailFrom, $EmailTo, $Subject, $Body)
Exception calling "Send" with "4" argument(s): "The SMTP server requires a secure connection or the client was not 
authenticated. The server response was: 5.5.1 Authentication Required. Learn more at"
At line:9 char:1
+ $SMTPClient.Send($EmailFrom, $EmailTo, $Subject, $Body)
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [], MethodInvocationException
    + FullyQualifiedErrorId : SmtpException

Я на Windows 7 Ultimate 64bit, и я считаю, что я был на PowerShell V2, но сегодня обновлен до V4 из-за того, что я думал, что это могло быть проблемой.

Я также включил незащищенные приложения в настройках Gmail, так как кто-то сказал, что это может быть проблемой. Это не так, и по сей день я все еще получаю ошибку.

Знаете ли вы, что еще можно отправить Gmails через PowerShell? Или я просто что-то пропустил? Спасибо за вашу помощь!

Ответ 1

У меня была такая же проблема, но Gmail отправил мне письмо со ссылкой на "Меньше защищенное приложение", я положил его на ON, тогда он сработал. Здесь ссылка просто изменит USERNAME с вашим именем пользователя для google.

https://accounts.google.com/[email protected]&continue=https://www.google.com/settings/security/lesssecureapps?rfn%3D27%26rfnc%3D1%26eid%3D3301110864727181130%26et%3D0%26asae%3D2