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.

Funkce zabezpečeného hesla v nástroji Dell Command PowerShell Provider

Résumé: Dell Command | Funkce zabezpečeného hesla poskytovatele powershellu, 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

Dotčené produkty:

  • Dell Command | PowerShell Provider

Cause

Není k dispozici

Résolution

Koncept zabezpečených hesel spočívá v tom, že ve výrobních skriptech bychom neměli předávat důležitá hesla běžným způsobem. Jde o vážný nedostatek zabezpečení. Pomocí prostředí PowerShell tedy můžeme zabezpečit heslo nebo alespoň snížit viditelnost hesla. Nejprve probereme obecné aspekty zabezpečeného řetězce a potom probereme, jak nástroj Dell Command PowerShell Provider (DCPP) využívá k zabezpečení hesla hlavní funkci prostředí PowerShell.

Zvažte, že chceme od uživatele v konzoli přečíst uživatelské jméno a heslo. Víme, že uživatelské jméno obecně nevyžaduje žádné zabezpečení a může být viditelné pro všechny. V případě hesla bychom však neměli cizím lidem sdělovat heslo uživatele. Tento požadavek můžeme usnadnit pomocí následujících příkazů:

$user = Read-Host "Enter Username"

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

Výše uvedený přehled vysvětluje, jak můžeme zvýšit zabezpečení v případě, že je nutné zabezpečit důležité informace jako heslo. Ve výše uvedeném příkladu je proměnná $pass typu System.Security.SecureString. Před dotykem na aspekty dcpp získáme úvod do dvou dalších široce používaných rutin prostředí PowerShell, které usnadňují zabezpečení polí.

Dva příkazy jsou ConvertTo-SecureString a ConvertFrom-SecureString. ConvertTo-SecureString Převádí na text System.Security.SecureStringv prostém textu. Níže je uveden příklad:

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

Ve výše uvedeném příkladu je běžný text P@assword1 převeden na text System.Security.SecureString. Jedná se o více informací a může, ale nemusí být široce používán.

Další rutina ConvertFrom-SecureString je obecnější rutina, která se používá k převodu zabezpečených řetězců na šifrované standardní řetězce. Hlavním omezením ConvertTo-SecureString je to, že jeho výstup nelze přímo zapsat do souboru pro budoucí použití. K překonání System.Security.SecureString tohoto omezení je nutné použít ConvertFrom-SecureString zašifrovaný standardní řetězec, který lze pohodlně uložit do souboru.

Převádíme prostý text na zabezpečený řetězec P@ssword1 a poté jeho výstupem ConvertFrom-SecureString vytváříme šifrovaný řetězec, který lze bezpečně a pohodlně uložit do souboru.

Například můžeme na počítači uvést, zda bylo nastaveno heslo správce a je nutné jej uložit do souboru. To lze provést pomocí:

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

Toto heslo správce můžeme načíst do proměnné jako zabezpečený objekt jako:

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

Nyní zvažte, jak využít zabezpečené heslo pro nástroj DCPP. Pokud je v počítači uživatele v nástroji DCPP nastaveno systémové heslo nebo heslo správce, je nutné u všech set příkazů předat příslušné heslo. Pokud tedy toto heslo poskytnutím tohoto hesla dojde k narušení bezpečnosti pomocí prostého textu. Proto je nutné heslo předávat jako System.Security.SecureString. Také při předávání SecureString hesla je nutné je -PasswordSecure předat přepínači, nikoli normálnímu –Password přepínači. Níže je uveden příklad, kde se uživatel pokouší nastavit AdvancedBatteryChargeCfgDisabled a předávat SecureString heslo:

Set-item AdvancedBatteryChargeCfg disabled –PasswordSecure $pass

Zde $pass obsahuje systémové heslo a heslo správce a je typu System.Security.SecureString. Podobně jako ve výše uvedené diskusi si můžeme přečíst $pass následující:

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

V případě potřeby můžeme uložit $pass soubor jako:

$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