Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
| powershell_util [2019/02/24 19:06] – [Notifications] nekan | powershell_util [2021/03/05 16:50] (Version actuelle) – nekan | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| + | <alert type=" | ||
| + | |||
| ====== Fonctions utiles ====== | ====== Fonctions utiles ====== | ||
| Ligne 10: | Ligne 12: | ||
| * Référence ConvertTo-SecureString : [[https:// | * Référence ConvertTo-SecureString : [[https:// | ||
| - | Les cmdlets afférents à SecureString permettent de crypter | + | Les cmdlets afférents à SecureString permettent de chiffrer |
| - | ==== Cryptage | + | ==== Chiffrement |
| - | <code:ps1># On demande à d' | + | <sxh powershell># On demande à d' |
| # On le convertit. | # On le convertit. | ||
| # On sauvegarde le tout dans un fichier. Le nom est purement arbitraire. | # On sauvegarde le tout dans un fichier. Le nom est purement arbitraire. | ||
| Read-Host " | Read-Host " | ||
| - | </code> | + | </sxh> |
| - | A noter que l'on peut renforcer le cryptage | + | A noter que l'on peut renforcer le chiffrement |
| - | <code:ps1>$Key = (3, | + | <sxh powershell>$Key = (3, |
| Read-Host " | Read-Host " | ||
| - | </code> | + | </sxh> |
| - | Évidement, on peut aussi stocker notre table d' | + | Évidement, on peut aussi stocker notre table d' |
| - | ==== Décryptage | + | ==== Déchiffrement |
| - | Crypter, c'est bien beau mais il faut pouvoir | + | Chiffrer, c'est bien beau mais il faut pouvoir |
| - | <code:ps1># Dans le cas d'une encryption simple | + | <sxh powershell># Dans le cas d'une encryption simple |
| $MDPCryptFile = " | $MDPCryptFile = " | ||
| $SecureStringPassword = Get-Content -Path $MDPCryptFile | ConvertTo-SecureString | $SecureStringPassword = Get-Content -Path $MDPCryptFile | ConvertTo-SecureString | ||
| Ligne 43: | Ligne 45: | ||
| # Dans les deux cas, le mot de passe crypté précédemment sera décrypté et stocké dans la variable $SecureStringPassword sous la forme d'un objet SecureString | # Dans les deux cas, le mot de passe crypté précédemment sera décrypté et stocké dans la variable $SecureStringPassword sous la forme d'un objet SecureString | ||
| - | </code> | + | </sxh> |
| A noter aussi qu'un objet SecureString peut être crypté à l'aide d'un certificat, ce qui renforce d' | A noter aussi qu'un objet SecureString peut être crypté à l'aide d'un certificat, ce qui renforce d' | ||
| Ligne 53: | Ligne 55: | ||
| * Référence : [[https:// | * Référence : [[https:// | ||
| - | <code:ps1># On prépare d' | + | <sxh powershell># On prépare d' |
| # L' | # L' | ||
| $From = " | $From = " | ||
| Ligne 72: | Ligne 74: | ||
| # fichiers .htm et additionner les chaînes de caractère ou écrire un chaine de caractère contenant les balises HTML | # fichiers .htm et additionner les chaînes de caractère ou écrire un chaine de caractère contenant les balises HTML | ||
| # et les variables. | # et les variables. | ||
| - | # Si le corps et en HTML, on rajoutera le paramètre -BodyAsHtml | + | # Si le corps est en HTML, on rajoutera le paramètre -BodyAsHtml |
| # Le serveur SMTP | # Le serveur SMTP | ||
| Ligne 97: | Ligne 99: | ||
| # Finalement, on ajoute tous nos arguments à la cmdlet | # Finalement, on ajoute tous nos arguments à la cmdlet | ||
| Send-MailMessage -From $From -To $To -Subject $Subject -Body $Body -BodyAsHtml -SmtpServer $SMTP -Port $Port -UseSsl -Credential $Credential -Attachments $Attachment -Encoding $Encoding | Send-MailMessage -From $From -To $To -Subject $Subject -Body $Body -BodyAsHtml -SmtpServer $SMTP -Port $Port -UseSsl -Credential $Credential -Attachments $Attachment -Encoding $Encoding | ||
| - | </code> | + | </sxh> |
| ===== Notifications ===== | ===== Notifications ===== | ||
| - | Tout comme les mails, les notifications à l' | + | Tout comme les mails, les notifications à l' |
| - | <code:ps1># On charge les Assenbly Windows | + | <sxh powershell># On charge les Assenbly Windows |
| Add-Type -AssemblyName System.Windows.Forms | Add-Type -AssemblyName System.Windows.Forms | ||
| Ligne 125: | Ligne 127: | ||
| # On règle la durée d' | # On règle la durée d' | ||
| $balloon.ShowBalloonTip(5000) | $balloon.ShowBalloonTip(5000) | ||
| - | </code> | + | </sxh> |
| On peut aussi utiliser ce code : | On peut aussi utiliser ce code : | ||
| - | <code:ps1># On charge les Assembly Windows | + | <sxh powershell># On charge les Assembly Windows |
| [reflection.assembly]:: | [reflection.assembly]:: | ||
| [reflection.assembly]:: | [reflection.assembly]:: | ||
| Ligne 144: | Ligne 146: | ||
| # On lance la notification. La aussi, on définira l' | # On lance la notification. La aussi, on définira l' | ||
| $notify.showballoontip(10, | $notify.showballoontip(10, | ||
| - | </code> | + | </sxh> |
| - | Une autre solution est d' | + | Une autre solution est d' |
| * Référence : [[https:// | * Référence : [[https:// | ||
| - | <code:ps1># D' | + | <sxh powershell># D' |
| Install-Module BurntToast | Install-Module BurntToast | ||
| # Ensuite, on peut l' | # Ensuite, on peut l' | ||
| - | # Le notificateur (celui qui envoie la notification, | ||
| - | $Notificateur = " | ||
| - | |||
| # L' | # L' | ||
| $Logo = .\logo.png | $Logo = .\logo.png | ||
| Ligne 164: | Ligne 163: | ||
| # On envoie la notification | # On envoie la notification | ||
| - | New-BurntToastNotification | + | New-BurntToastNotification -AppLogo $Logo -Text $Text |
| - | </code> | + | </sxh> |
| --- // | --- // | ||
| + | |||
| + | ~~DISCUSSION~~ | ||