Интернет-справка ESET

Поиск Русский
Выберите тему

Образцы сценариев PowerShell

Ниже приведены два образца сценариев PowerShell, которые используются для доставки одноразового пароля с помощью настраиваемого решения для отправки по электронной почте (приложения).

Сценарий PowerShell с использованием Send-MailMessage, мы назвали этот файл sendmail.ps1

param

(

 [string] $toAddress,

 [string] $otp

)

$smtpServer = "<server>"

$smtpPort = "<port>"

$smtpUsername = "<username>"

$smtpPassword = "<password>"

 

$fromAddress = "esa@localhost"

$subject = "ESA OTP"

$body = "Your OTP: $otp"

 

$smtpPassword_sec = ConvertTo-SecureString $smtpPassword -AsPlainText -Force

$credential = New-Object System.Management.Automation.PSCredential ($smtpUsername, $smtpPassword_sec)

 

Send-MailMessage -SmtpServer $smtpServer -Port $smtpPort -Credential $credential -UseSsl -From $fromAddress -To $toAddress -Subject $subject -Body $body

Сценарий PowerShell с использованием System.Net.Mail, мы назвали этот файл sendmail.ps1

param

(

 [string] $toAddress,

 [string] $otp

)

$smtpServer = "<server>"

$smtpPort = "<port>"

$smtpUsername = "<username>"

$smtpPassword = "<password>"

 

$fromAddress = "esa@localhost"

$subject = "ESA OTP"

$body = "Your OTP: $otp"

 

$mailMessage = New-Object System.Net.Mail.MailMessage($fromAddress, $toAddress, $subject, $body)

$smtpClient = New-Object System.Net.Mail.SmtpClient($smtpServer, $smtpPort)

$smtpClient.EnableSsl = $true

$smtpClient.Credentials = New-Object System.Net.NetworkCredential($smtpUsername, $smtpPassword);

$smtpClient.Send($mailMessage)

 


note

Замена заполнителей

В примерах сценариев выше замените заполнители <server> (<сервер>), <port> (<порт>), <username> (<имя пользователя>) и <password> (<пароль>) на соответствующие данные SMTP.

Проверка и использование

1.Сохраните сценарий в нужном месте, например c:\work\sendmail.ps1.

2.Проверьте сценарий вне программы ESET Secure Authentication (ESA) с помощью командной строки Windows:

a.Нажмите комбинацию клавиш Windows + R.

b.Введите cmd.EXE и нажмите ВВОД.

c.В окне командной строки выполните следующее:

powershell c:\scripts\sendmail.ps1 test@address.com 123456

Где test@address.com следует заменить на действительный адрес электронной почты, к входящим письмам которого у вас есть доступ.

d.Если проверка прошла успешно, перейдите к следующему шагу.

3.В разделе Delivery Options (Параметры доставки) решения ESA создайте ссылку на сценарий следующим образом:

powershell c:\scripts\sendmail.ps1 [E-mail-Addresses] [OTP]