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.

Funkcja Bezpieczne hasło modułu Dell Command PowerShell Provider

Summary: Aplikacja Dell Command | Funkcja bezpiecznego hasła dostawcy PowerShell (DCPP), ConvertTo-SecureString, ConvertFrom-SecureString, PowerShell Provider (DCPP) Secure Password feature, ConvertTo-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

Dotyczy produktów:

  • Aplikacja Dell Command | PowerShell Provider

Koncepcja bezpiecznych haseł polega na tym, że w skryptach produkcyjnych nie powinniśmy przekazywać ważnych haseł jako zwykłego widoku. Jest to poważny brak bezpieczeństwa. Tak więc za pomocą PowerShell możemy zabezpieczyć hasło lub przynajmniej zmniejszyć widoczność hasła. Najpierw omówimy ogólne aspekty bezpiecznego ciągu, a następnie omówimy, w jaki sposób Dell Command PowerShell Provider (DCPP) wykorzystuje wrodzoną funkcję PowerShell do zabezpieczania hasła.

Weź pod uwagę, że chcemy odczytać nazwę użytkownika i hasło użytkownika w konsoli. Wiemy, że nazwa użytkownika na ogół nie wymaga żadnych zabezpieczeń i może być widoczna dla wszystkich. Ale w przypadku hasła nie powinniśmy ujawniać nieznajomym hasła użytkownika. Możemy ułatwić to wymaganie za pomocą poniższych poleceń:

$user = Read-Host "Enter Username"

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

Powyżej przedstawiono sposoby zwiększenia bezpieczeństwa, gdy konieczne jest zabezpieczenie krytycznych informacji, takich jak hasło. W powyższym przykładzie zmienna $pass jest typu System.Security.SecureString. Zapoznamy się z wprowadzeniem do dwóch innych powszechnie używanych poleceń cmdlet programu PowerShell, które ułatwiają bezpieczne pola, zanim przejdziemy do aspektów DCPP.

Te dwa polecenia to ConvertTo-SecureString i ConvertFrom-SecureString. ConvertTo-SecureString konwertuje zwykły tekst na tekst System.Security.SecureString. Poniżej przedstawiono przykład:

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

W powyższym przykładzie zwykły tekst P@assword1 jest konwertowany na typ System.Security.SecureString. Jest to raczej informacja i może, ale nie musi być szeroko stosowana.

Następne polecenie cmdlet ConvertFrom-SecureString jest szerzej używanym poleceniem cmdlet, które służy do konwertowania bezpiecznych ciągów na zaszyfrowane ciągi standardowe. Główne ograniczenie ConvertTo-SecureString jest to, że jego dane wyjściowe nie mogą być bezpośrednio zapisane w pliku do wykorzystania w przyszłości. Musimy użyć ConvertFrom-SecureString który konwertuje System.Security.SecureString do zaszyfrowanego standardowego ciągu, który można wygodnie zapisać w pliku, aby przezwyciężyć to ograniczenie.

Konwertujemy zwykły tekst P@ssword1 , aby zabezpieczyć ciąg, a następnie przesłać jego dane wyjściowe do ConvertFrom-SecureString aby uzyskać zaszyfrowany ciąg znaków, który można bezpiecznie i wygodnie zapisać w pliku.

Załóżmy na przykład, że na komputerze ustawiono hasło administratora i musimy zapisać je do pliku. Możemy to zrobić za pomocą:

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

Możemy odzyskać to hasło administratora do zmiennej jako bezpieczny obiekt w następujący sposób:

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

Zastanówmy się teraz, jak wykorzystać bezpieczne hasło dla DCPP. W DCPP, jeśli komputer użytkownika ma ustawione hasło systemowe lub hasło administratora, dla wszystkich set komendy musimy przekazać odpowiednie hasło. Tak więc podanie tego hasła w postaci zwykłego tekstu narusza bezpieczeństwo. Musimy przekazać hasło jako System.Security.SecureString. Ponadto, gdy przejdziemy SecureString haslo musimy je przekazać za pomocą -PasswordSecure przełącznik, a nie normalny –Password przełącznik. Poniżej pokazano przykład, w którym użytkownik próbuje ustawić AdvancedBatteryChargeCfg na Disabled i przechodzenie SecureString hasło:

Set-item AdvancedBatteryChargeCfg disabled –PasswordSecure $pass

W tym miejscu $pass przechowuje hasło systemowe i hasło administratora oraz jest typu System.Security.SecureString. Podobnie do powyższej dyskusji możemy przeczytać $pass gdy:

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

Możemy zaoszczędzić $pass do pliku, jeśli jest to wymagane, 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