====== PowerShell ====== ===== Envoyer un email ===== $SMTP_HOST = "mail.domain.ltd" $SMTP_PORT = 25 $SMTP_SSL = $False $SMTP_USER = "username" $SMTP_PWD = "*****" $MAIL_ATTACHMENT = "" # Paramètres système $ErrorActionPreference = "Stop" [Console]::OutputEncoding = [System.Text.Encoding]::UTF8 Function Main { param( [string] $From = "from@example.com", [string] $To = "to@example.com", [string] $Subject = "SMTP Client Submission - $(Get-Date -Format g)", [string] $Body = "This is a test email using SMTP Client Submission" ) Send-Mail -From $From -To $To -Subject $Subject -Body $Body } Function Send-Mail { param( [string] $From = "from@example.com", [string] $To = "to@example.com", [string] $Subject = "SMTP Client Submission - $(Get-Date -Format g)", [string] $Body = "This is a test email using SMTP Client Submission" ) $mailParams = @{ SmtpServer = $SMTP_HOST Port = $SMTP_PORT From = $From To = $To Subject = $Subject Body = $Body UseSSL = $SMTP_SSL DeliveryNotificationOption = "OnFailure", "OnSuccess" } if ((Get-Variable SMTP_USER -Scope Script -ErrorAction "Ignore") -and (Get-Variable SMTP_PWD -Scope Script -ErrorAction "Ignore")) { $mailParams.Credential = New-Object System.Management.Automation.PSCredential($SMTP_USER, $(ConvertTo-SecureString $SMTP_PWD -AsPlainText -Force)) } if ($MAIL_ATTACHMENT -ne "") { $mailParams.Attachment = $MAIL_ATTACHMENT } Send-MailMessage @mailParams } # Traitement Main @args mail.ps1 -From "sender@domain.tld" -To "receiver@domain.tld" -Subject "test" -Body "test" ===== Active Directory ===== ==== Supprimer un object protégé contre la suppression accidentelle ==== Get-ADObject -Server localhost:389 -Identity 'OU=xxx,DC=yyy,DC=zzz' | Set-ADObject -ProtectedFromAccidentalDeletion:$false -PassThru | Remove-ADOrganizationalUnit -Confirm:$false