Skip to main content
  • Place orders quickly and easily
  • View orders and track your shipping status
  • Create and access a list of your products
  • Manage your Dell EMC sites, products, and product-level contacts using Company Administration.

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

Summary: Aplikace Dell Command | Funkce zabezpečeného hesla PowerShell Provider (DCPP), ConvertTo-SecureString, ConvertFrom-SecureString

This article may have been automatically translated. If you have any feedback regarding its quality, please let us know using the form at the bottom of this page.

Article Content


Instructions

Dotčené produkty:

  • Dell Command | PowerShell Provider

Koncept bezpečných hesel spočívá v tom, že v produkčních skriptech bychom neměli předávat důležitá hesla jako prosté zobrazení. To je vážný nedostatek zabezpečení. Pomocí PowerShellu tedy můžeme zabezpečit heslo nebo alespoň snížit viditelnost hesla. Nejprve probereme obecné aspekty zabezpečeného řetězce a poté to, jak nástroj Dell Command PowerShell Provider (DCPP) využívá vnitřní funkci PowerShellu k zabezpečení hesla.

Představte si, že chceme přečíst uživatelské jméno a heslo od uživatele v konzoli. Víme, že uživatelské jméno obecně nevyžaduje žádné zabezpečení a může být viditelné pro všechny. Ale pokud jde o heslo, neměli bychom cizím lidem sdělovat heslo uživatele. Tento požadavek můžeme usnadnit pomocí níže uvedených příkazů:

$user = Read-Host "Enter Username"

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

Výše uvedené je přehledem toho, jak můžeme zvýšit zabezpečení, když musíme zabezpečit důležité informace, jako je heslo. Ve výše uvedeném příkladu je proměnná $pass typu System.Security.SecureString. Než se dotkneme aspektů DCPP, seznámíme se se dvěma dalšími široce používanými rutinami, které PowerShell poskytuje pro usnadnění zabezpečených polí.

Tyto dva příkazy jsou ConvertTo-SecureString a ConvertFrom-SecureString. ConvertTo-SecureString převede prostý text na text. System.Security.SecureString. Níže je uveden příklad:

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

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

Další rutina ConvertFrom-SecureString je široce používaná rutina, která se používá k převodu zabezpečených řetězců na šifrované standardní řetězce. Hlavní omezení ConvertTo-SecureString je, že jeho výstup nelze přímo zapsat do souboru pro budoucí použití. Musíme použít ConvertFrom-SecureString který převádí System.Security.SecureString do šifrovaného standardního řetězce, který lze pohodlně uložit do souboru, aby se toto omezení překonalo.

Převádíme prostý text P@ssword1 zajistit řetězec a poté přivést jeho výstup do ConvertFrom-SecureString získat šifrovaný řetězec, který lze bezpečně a pohodlně uložit do souboru.

Jako příklad řekněme, že na počítači bylo nastaveno heslo správce a musíme jej uložit do souboru. Můžeme to udělat pomocí:

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

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

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

Nyní se podívejme, jak využít bezpečné heslo pro DCPP. Pokud má v DCPP počítač uživatele nastaveno systémové heslo nebo heslo správce, pak pro všechny set příkazy, které musíme předat příslušnému heslu. Poskytnutím tohoto hesla jako prostého textu tedy narušujete zabezpečení. Heslo musíme předat jako System.Security.SecureString. Také, když předáme SecureString heslo, které musíme předat s a -PasswordSecure přepínač, a ne normální –Password vypínač. Níže je uveden příklad, kdy se uživatel pokouší nastavit AdvancedBatteryChargeCfg na Disabled a pomíjení 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 protože:

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

Můžeme ušetřit $pass do souboru, pokud je to požadováno, jako:

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

Additional Information

Article Properties


Affected Product

Dell Command | Powershell Provider

Last Published Date

18 Jul 2024

Version

8

Article Type

How To