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.

Funkcja bezpiecznego hasła dostawcy Dell Command PowerShell

Résumé: Aplikacja Dell Command | Funkcja bezpiecznego hasła dostawcy 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

Dotyczy produktów:

  • Aplikacja Dell Command | PowerShell Provider

Cause

Nie dotyczy

Résolution

Koncepcja bezpiecznego hasła polega na tym, że w skryptach produkcyjnych nie należy przekazywać ważnych haseł jako zwykłego widoku. Jest to poważny brak zabezpieczeń. Dzięki programowi PowerShell możemy zabezpieczyć hasło lub przynajmniej ograniczyć widoczność hasła. Najpierw omówimy ogólne aspekty bezpiecznego ciągu znaków, a następnie omówimy, w jaki sposób program Dell Command PowerShell Provider (DCPP) wykorzystuje inną funkcję programu PowerShell w celu zabezpieczenia hasła.

Należy wziąć pod uwagę, że chcemy odczytać nazwę użytkownika i hasło od użytkownika w konsoli. Zdajemy sobie sprawę, że nazwa użytkownika zazwyczaj nie wymaga żadnych zabezpieczeń i może być widoczna dla wszystkich. W przypadku hasła nie należy jednak pomylić osób obcych z hasłem 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 zamieszczono omówienie sposobu ochrony danych krytycznych, takich jak hasło. W powyższym przykładzie typ $pass zmiennej System.Security.SecureString. Wprowadzamy do dwóch innych powszechnie używanych poleceń cmdlet PowerShell, które ułatwiają zabezpieczenie pól przed dotknięciem aspektów DCPP.

Te dwa polecenia toConvertTo-SecureString:ConvertFrom-SecureString ConvertTo-SecureString Konwertuje zwykły tekst na typ 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 więcej informacji i może, ale nie musi, być szeroko stosowana.

Następne polecenie cmdlet ConvertFrom-SecureString jest powszechnie używanym poleceniem cmdlet, które służy do konwertowania bezpiecznych ciągów na zaszyfrowane standardowe ciągi znaków. Głównym ograniczeniem ConvertTo-SecureString jest to, że jego danych wyjściowych nie można bezpośrednio zapisać w pliku do wykorzystania w przyszłości. Aby przezwyciężyć to ograniczenie, należy użyć ConvertFrom-SecureString konwertowania System.Security.SecureString na zaszyfrowany standardowy ciąg znaków, który można wygodnie zapisać w pliku.

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

Na przykład można powiedzieć na komputerze, czy ustawiono hasło administratora i należy je zapisać w pliku. Można to zrobić za pomocą:

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

Hasło administratora można przywrócić do zmiennej jako bezpieczny obiekt jako:

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

Teraz należy zastanowić się, jak wykorzystać bezpieczne hasło do DCPP. Jeśli w programie DCPP na komputerze użytkownika ustawiono hasło systemowe lub hasło administratora, dla wszystkich set poleceń należy przekazać odpowiednie hasło. Dlatego podanie tego hasła jako zwykłego tekstu stanowi naruszenie bezpieczeństwa. W związku z tym należy przekazać hasło jako System.Security.SecureString. Po wprowadzeniu SecureString hasła należy przekazać hasło za pomocą przełącznika, -PasswordSecure a nie normalnego –Password przełącznika. Poniżej przedstawiono przykład, w którym użytkownik próbuje ustawić AdvancedBatteryChargeCfgDisabled hasło:SecureString

Set-item AdvancedBatteryChargeCfg disabled –PasswordSecure $pass

Tutaj $pass zawiera hasło systemowe i hasło administratora oraz jego typ System.Security.SecureString. Podobnie jak w przypadku powyższej dyskusji, możemy przeczytać $pass :

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

W razie potrzeby można zapisać $pass w pliku:

$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