powershell_util

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
powershell_util [2019/11/28 14:10] nekanpowershell_util [2021/03/05 16:50] (Version actuelle) nekan
Ligne 1: Ligne 1:
-~~CLOSETOC~~ +<alert type="danger">Archivage suite à une refonte de la présentation.</alert>
- +
-<note>Archivage suite à une refonte de la présentation.</note>+
  
 ====== Fonctions utiles ====== ====== Fonctions utiles ======
Ligne 18: Ligne 16:
 ==== Chiffrement et stockage ==== ==== Chiffrement et stockage ====
  
-<code:ps1># On demande à d'entrer un mot de passe.+<sxh powershell># On demande à d'entrer un mot de passe.
 # 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 "Entrez le mot de passe" -AsSecureString | ConvertFrom-SecureString | Out-File ".\data.crypt" Read-Host "Entrez le mot de passe" -AsSecureString | ConvertFrom-SecureString | Out-File ".\data.crypt"
-</code>+</sxh>
  
 A noter que l'on peut renforcer le chiffrement au niveau AES-192 en utilisant le paramètre ''-Key'' avec une table de 24 entier compris entre 0 et 255. La syntaxe est alors : A noter que l'on peut renforcer le chiffrement au niveau AES-192 en utilisant le paramètre ''-Key'' avec une table de 24 entier compris entre 0 et 255. La syntaxe est alors :
  
-<code:ps1>$Key = (3,4,2,3,56,34,254,222,1,1,2,23,42,54,33,233,1,34,2,7,6,5,35,43)+<sxh powershell>$Key = (3,4,2,3,56,34,254,222,1,1,2,23,42,54,33,233,1,34,2,7,6,5,35,43)
 Read-Host "Entrez le mot de passe" -AsSecureString | ConvertFrom-SecureString -Key $Key | Out-File ".\data.crypt" Read-Host "Entrez le mot de passe" -AsSecureString | ConvertFrom-SecureString -Key $Key | Out-File ".\data.crypt"
-</code>+</sxh>
  
 Évidement, on peut aussi stocker notre table d'encryption dans un SecureString intermédiaire et la déchiffrer avant de l'utiliser pour chiffrer le mot de passe. Évidement, on peut aussi stocker notre table d'encryption dans un SecureString intermédiaire et la déchiffrer avant de l'utiliser pour chiffrer le mot de passe.
Ligne 37: Ligne 35:
 Chiffrer, c'est bien beau mais il faut pouvoir déchiffrer ensuite pour pouvoir utiliser le contenu protégé. pour cela, on utilisera la cmdlet ConvertTo-SecureString : Chiffrer, c'est bien beau mais il faut pouvoir déchiffrer ensuite pour pouvoir utiliser le contenu protégé. pour cela, on utilisera la cmdlet ConvertTo-SecureString :
  
-<code:ps1># Dans le cas d'une encryption simple+<sxh powershell># Dans le cas d'une encryption simple
 $MDPCryptFile = ".\data.crypt" $MDPCryptFile = ".\data.crypt"
 $SecureStringPassword = Get-Content -Path $MDPCryptFile | ConvertTo-SecureString $SecureStringPassword = Get-Content -Path $MDPCryptFile | ConvertTo-SecureString
Ligne 47: 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'autant plus sa sécurité. A noter aussi qu'un objet SecureString peut être crypté à l'aide d'un certificat, ce qui renforce d'autant plus sa sécurité.
Ligne 57: Ligne 55:
   * Référence : [[https://docs.microsoft.com/en-us/powershell/module/Microsoft.PowerShell.Utility/Send-MailMessage?view=powershell-6|Microsoft]]   * Référence : [[https://docs.microsoft.com/en-us/powershell/module/Microsoft.PowerShell.Utility/Send-MailMessage?view=powershell-6|Microsoft]]
  
-<code:ps1># On prépare d'abord les arguments de la commande+<sxh powershell># On prépare d'abord les arguments de la commande
 # L'expéditeur # L'expéditeur
 $From = "test@shyrkasystem.com" $From = "test@shyrkasystem.com"
Ligne 101: 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 =====
Ligne 107: Ligne 105:
 Tout comme les mails, les notifications à l'écran peuvent être utiles. Personnellement, je ne les utilise pas trop, l'essentiel de mes scripts se faisant sur un serveur sur lequel je n'ai pas constamment les yeux braqués. Je préfère les mails qui ont le bénéfice de laisser une trace. Tout comme les mails, les notifications à l'écran peuvent être utiles. Personnellement, je ne les utilise pas trop, l'essentiel de mes scripts se faisant sur un serveur sur lequel je n'ai pas constamment les yeux braqués. Je préfère les mails qui ont le bénéfice de laisser une trace.
  
-<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 129: Ligne 127:
 # On règle la durée d'affichage en ms # On règle la durée d'affichage en ms
 $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]::loadwithpartialname("System.Windows.Forms" [reflection.assembly]::loadwithpartialname("System.Windows.Forms"
 [reflection.assembly]::loadwithpartialname("System.Drawing") [reflection.assembly]::loadwithpartialname("System.Drawing")
Ligne 148: Ligne 146:
 # On lance la notification. La aussi, on définira l'icône par None, Info, Warning ou Error # On lance la notification. La aussi, on définira l'icône par None, Info, Warning ou Error
 $notify.showballoontip(10,$title,$Message, [system.windows.forms.tooltipicon]::error) $notify.showballoontip(10,$title,$Message, [system.windows.forms.tooltipicon]::error)
-</code>+</sxh>
  
 Une autre solution est d'utiliser le module BurntToast. Une autre solution est d'utiliser le module BurntToast.
Ligne 154: Ligne 152:
   * Référence : [[https://github.com/Windos/BurntToast|GitHub]]   * Référence : [[https://github.com/Windos/BurntToast|GitHub]]
  
-<code:ps1># D'abord, il faut installer le module+<sxh powershell># D'abord, il faut installer le module
 Install-Module BurntToast Install-Module BurntToast
  
Ligne 166: Ligne 164:
 # On envoie la notification # On envoie la notification
 New-BurntToastNotification -AppLogo $Logo -Text $Text New-BurntToastNotification -AppLogo $Logo -Text $Text
-</code>+</sxh>
  
  --- //[[nekan@shyrkasystem.com|Nicolas THOREZ]] 2019/02/24 18:38//  --- //[[nekan@shyrkasystem.com|Nicolas THOREZ]] 2019/02/24 18:38//
  
 ~~DISCUSSION~~ ~~DISCUSSION~~
  • powershell_util.1574946623.txt.gz
  • Dernière modification : 2019/11/28 12:10
  • (modification externe)