Passer au contenu principal
  • Passer des commandes rapidement et facilement
  • Afficher les commandes et suivre l’état de votre expédition
  • Profitez de récompenses et de remises réservées aux membres
  • Créez et accédez à une liste de vos produits
  • Gérer vos sites, vos produits et vos contacts au niveau des produits Dell EMC à l’aide de la rubrique Gestion des informations de l’entreprise.

Fonctionnalité de mot de passe sécurisé du fournisseur Dell Command PowerShell

Résumé: Dell Command | Fonctionnalité de mot de passe sécurisé du fournisseur PowerShell, ConvertTo-SecureString, ConvertFrom-SecureString

Cet article a peut-être été traduit automatiquement. Si vous avez des commentaires concernant sa qualité, veuillez nous en informer en utilisant le formulaire au bas de cette page.

Contenu de l’article


Symptômes

Produits concernés :

  • Dell Command | PowerShell Provider

Cause

Sans objet

Résolution

Le concept qui sous-tend les mots de passe sécurisés est que dans les scripts de production, nous ne devons pas passer des mots de passe importants comme des mots de passe simples. Il s’agit d’un sérieux manque de sécurité. Avec PowerShell, nous pouvons sécuriser un mot de passe ou au moins réduire la visibilité des mots de passe. Nous abordons d’abord les aspects généraux de la chaîne sécurisée, puis nous discutons de la façon dont Dell Command PowerShell Provider (DCPP) tire parti de la fonction innate de PowerShell pour sécuriser le mot de passe.

Tenez compte du fait que nous voulons lire le nom d’utilisateur et le mot de passe de l’utilisateur sur la console. Nous savons que le nom d’utilisateur ne nécessite généralement aucune sécurité et qu’il peut être visible par tous. Mais pour le mot de passe, nous ne devons pas informer les inconnus du mot de passe de l’utilisateur. Nous pouvons faciliter cette exigence avec les commandes ci-dessous:

$user = Read-Host "Enter Username"

$pass = Read-Host "Enter Password" -AsSecureString

Vous trouverez ci-dessus une vue d’ensemble de la façon dont nous pouvons augmenter la sécurité lorsque nous devons sécuriser les informations critiques comme un mot de passe. Dans l’exemple ci-dessus, la variable $pass est de type System.Security.SecureString. Nous obtenons une introduction à deux autres applets de commande largement utilisés que PowerShell fournit pour faciliter les champs sécurisés avant d’aborder les aspects de DCPP.

Les deux commandes sont ConvertTo-SecureString et ConvertFrom-SecureString. ConvertTo-SecureString convertit un texte brut en texte brut pour le saisir System.Security.SecureString. Un exemple est présenté ci-dessous :

"P@ssword1" | ConvertTo-SecureString -AsPlainText -Force

Dans l’exemple ci-dessus, le texte P@assword1 brut est converti en type System.Security.SecureString. Il s’agit davantage d’informations et peut être ou non largement utilisée.

La cmdlet suivante est une cmdlet ConvertFrom-SecureString plus largement utilisée qui est utilisée pour convertir des chaînes sécurisées en chaînes standard chiffrées. La principale limitation de ConvertTo-SecureString est que sa sortie ne peut pas être directement écrite dans un fichier pour une utilisation ultérieure. Nous devons utiliser ConvertFrom-SecureString qui se convertit System.Security.SecureString en chaîne standard chiffrée qui peut être facilement enregistrée dans un fichier, pour surmonter cette limite.

Nous convertissons du texte P@ssword1 brut en chaîne sécurisée, puis nous faisons passer sa sortie pour ConvertFrom-SecureString obtenir une chaîne chiffrée qui peut être enregistrée en toute sécurité et facilement dans un fichier.

Par exemple, sur un ordinateur, si le mot de passe admin a été défini et que nous devons l’enregistrer dans un fichier. Pour ce faire, procédez comme suit:

Read-Host "Enter Admin Password" -AsSecureString |
ConvertFrom-SecureString | Out-File "C:\Scripts\AdminPassword.txt"

Nous pouvons récupérer ce mot de passe admin dans une variable en tant qu’objet sécurisé comme suit:

$pass = Get-Content "C:\Scripts\AdminPassword.txt" | ConvertTo-SecureString

À présent, réfléchissez à la façon d’utiliser un mot de passe sécurisé pour DCPP. Dans DCPP, si le mot de passe système ou admin est défini sur l’ordinateur de l’utilisateur, pour toutes les set commandes, nous devons transmettre le mot de passe correspondant. Le fait de fournir ce mot de passe en texte brut constitue une faille de sécurité. Nous devons donc passer le mot de passe en tant que System.Security.SecureString. En outre, lorsque nous passons un SecureString mot de passe, nous devons le transmettre avec un -PasswordSecure commutateur et non avec le commutateur normal –Password . Un exemple est illustré ci-dessous, où l’utilisateur tente de définir AdvancedBatteryChargeCfgDisabled et de passer SecureString le mot de passe:

Set-item AdvancedBatteryChargeCfg disabled –PasswordSecure $pass

Ici, $pass contient le mot de passe système et admin et est de type System.Security.SecureString. À l’instar de la discussion ci-dessus, nous pouvons lire $pass ce qui suit:

$pass = Read-Host "Enter system/admin password" –AsSecureString

Nous pouvons enregistrer $pass dans un fichier, si nécessaire, en tant que:

$pass| ConvertFrom-SecureString | Out-File "C:\Scripts\AdminPassword.txt

Informations supplémentaires

Propriétés de l’article


Produit concerné

Dell Command | Powershell Provider

Dernière date de publication

11 sept. 2023

Version

7

Type d’article

Solution