Přeskočit na hlavní obsah

Dell Command PowerShell Provider Secure Password-functie

Shrnutí: Dell Command | PowerShell Provider (DCPP) Secure Password-functie, ConvertTo-SecureString, ConvertFrom-SecureString

Tento článek se vztahuje na Tento článek se nevztahuje na Tento článek není vázán na žádný konkrétní produkt. V tomto článku nejsou uvedeny všechny verze produktu.

Pokyny

Betreffende producten:

  • Dell Command | PowerShell Provider

Het concept achter veilige wachtwoorden is dat we in productiescripts belangrijke wachtwoorden niet als plain view moeten doorgeven. Dit is een ernstig gebrek aan veiligheid. Met PowerShell kunnen we dus een wachtwoord beveiligen of op zijn minst de zichtbaarheid van wachtwoorden verminderen. We bespreken eerst de algemene aspecten van Secure String en vervolgens hoe Dell Command PowerShell Provider (DCPP) gebruikmaakt van de ingebouwde functie van PowerShell om wachtwoorden te beveiligen.

Houd er rekening mee dat we de gebruikersnaam en het wachtwoord van de gebruiker aan de console willen lezen. We weten dat de gebruikersnaam over het algemeen geen beveiliging vereist en voor iedereen zichtbaar kan zijn. Maar voor een wachtwoord mogen we vreemden het wachtwoord van de gebruiker niet laten weten. We kunnen deze vereiste vergemakkelijken met de onderstaande opdrachten:

$user = Read-Host "Enter Username"

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

Het bovenstaande is een overzicht van hoe we meer beveiliging kunnen toevoegen wanneer we kritieke informatie zoals een wachtwoord moeten beveiligen. In het bovenstaande voorbeeld is de variabele $pass van het type System.Security.SecureStringte installeren. We krijgen een inleiding tot twee andere veelgebruikte cmdlets die PowerShell biedt om beveiligde velden te vergemakkelijken voordat we aspecten van DCPP aanraken.

De twee commando's zijn: ConvertTo-SecureString als ConvertFrom-SecureStringte installeren. ConvertTo-SecureString Converteert tekst zonder opmaak naar tekst System.Security.SecureStringte installeren. Hieronder ziet u een voorbeeld:

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

In het bovenstaande voorbeeld wordt de tekst zonder opmaak P@assword1 wordt geconverteerd naar type System.Security.SecureStringte installeren. Dit is meer informatie en kan al dan niet op grote schaal worden gebruikt.

De volgende cmdlet ConvertFrom-SecureString is een meer algemeen gebruikte cmdlet die wordt gebruikt om beveiligde tekenreeksen om te zetten in versleutelde standaardtekenreeksen. De belangrijkste beperking van ConvertTo-SecureString is dat de uitvoer ervan niet rechtstreeks in een bestand kan worden geschreven voor toekomstig gebruik. We moeten gebruik maken van ConvertFrom-SecureString die converteert System.Security.SecureString in een gecodeerde standaardtekenreeks die gemakkelijk kan worden opgeslagen in een bestand, om deze beperking te omzeilen.

We converteren tekst zonder opmaak P@ssword1 om de snaar vast te zetten en vervolgens de uitvoer naar ConvertFrom-SecureString om een gecodeerde string te krijgen die veilig en gemakkelijk in een bestand kan worden opgeslagen.

Laten we als voorbeeld zeggen op een computer als het beheerderswachtwoord is ingesteld en we dit moeten opslaan in een bestand. Dit doen we met behulp van:

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

We kunnen dit beheerderswachtwoord terughalen in een variabele als een beveiligd object als:

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

Nu gaan we kijken hoe u een veilig wachtwoord voor DCPP kunt gebruiken. Als in DCPP een systeem- of beheerderswachtwoord is ingesteld op de computer van de gebruiker, geldt voor alle set commando's die we hebben om het respectievelijke wachtwoord door te geven. Het verstrekken van dit wachtwoord als platte tekst is dus in strijd met de beveiliging. We moeten het wachtwoord doorgeven als System.Security.SecureStringte installeren. Ook als we een SecureString wachtwoord, moeten we het doorgeven met een -PasswordSecure schakelaar en niet de normale –Password schakelaar. Hieronder wordt een voorbeeld getoond waarin de gebruiker probeert in te stellen AdvancedBatteryChargeCfg Aan Disabled en het passeren SecureString wachtwoord:

Set-item AdvancedBatteryChargeCfg disabled –PasswordSecure $pass

Hier bevat $pass het systeem- en beheerderswachtwoord en is van het type System.Security.SecureStringte installeren. Vergelijkbaar met de bovenstaande discussie kunnen we lezen $pass als:

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

We kunnen besparen $pass naar een bestand, indien nodig, als:

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

Další informace

Dotčené produkty

Dell Command | Powershell Provider
Vlastnosti článku
Číslo článku: 000146459
Typ článku: How To
Poslední úprava: 18 čvc 2024
Verze:  8
Najděte odpovědi na své otázky od ostatních uživatelů společnosti Dell
Služby podpory
Zkontrolujte, zda se na vaše zařízení vztahují služby podpory.