Esempi di script PowerShell
Seguono due esempi di script PowerShell da utilizzare per l’invio delle OTP (Password monouso) tramite una soluzione e-mail personalizzata (applicazione).
Script PowerShell che utilizza Send-MailMessage: il file viene denominato 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 |
Script PowerShell che utilizza System.Net.Mail: il file viene denominato 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) |
Sostituire i segnaposto Negli script di esempio indicati in precedenza, sostituire <server>, <port> (Porta), <username> (Nome utente) e <password> con i dettagli SMTP corrispondenti. |
Test e utilizzo
1.Salvare lo script nel punto desiderato, per esempio c:\work\sendmail.ps1
2.Testare lo script fuori da ESET Secure Authentication On-Prem (ESA) utilizzando la riga di comando di Windows:
a.Premere la combinazione di tasti Windows + R.
b.Digitare cmd.EXE e premere Invio.
c.Nella finestra della riga di comando, eseguire:
powershell c:\scripts\sendmail.ps1 test@address.com 123456
mentre test@address.com dovrebbe essere sostituito con un indirizzo e-mail valido, è possibile leggere i messaggi in arrivo.
d.Se il test dà esito positivo, procedere al passaggio successivo.
3.Nella sezione Delivery Options (Opzioni di invio) di ESA, fare riferimento allo script come specificato di seguito:
powershell c:\scripts\sendmail.ps1 [E-mail-Addresses] [OTP]