Omitir para ir al contenido principal
  • Hacer pedidos rápida y fácilmente
  • Ver pedidos y realizar seguimiento al estado del envío
  • Cree y acceda a una lista de sus productos
  • Administre sus sitios, productos y contactos de nivel de producto de Dell EMC con Administración de la empresa.

Dell Command PowerShell Provider – Sichere Kennwortfunktion

Resumen: Dell Command | PowerShell Provider Secure Password-Funktion, ConvertTo-SecureString, ConvertFrom-SecureString

Es posible que este artículo se traduzca automáticamente. Si tiene comentarios sobre su calidad, háganoslo saber mediante el formulario en la parte inferior de esta página.

Contenido del artículo


Síntomas

Betroffene Produkte:

  • Dell Command | PowerShell Provider

Causa

Nicht zutreffend

Resolución

Das Konzept hinter sicheren Passwörtern besteht darin, dass wir in Produktionsskripten keine wichtigen Passwörter als einfache Ansicht weitergeben sollten. Dies ist ein schwerwiegender Mangel an Sicherheit. Mit PowerShell können wir also ein Passwort sichern oder zumindest die Transparenz von Passwörtern reduzieren. Wir besprechen zunächst allgemeine Aspekte der sicheren Zeichenfolge und besprechen dann, wie Dell Command PowerShell Provider (DCPP) die integrierte Funktion von PowerShell nutzt, um das Kennwort zu sichern.

Beachten Sie, dass wir den Benutzernamen und das Kennwort vom Benutzer in der Konsole lesen möchten. Wir sind uns bewusst, dass der Benutzername in der Regel keine Sicherheit erfordert und für alle sichtbar sein kann. Für das Passwort sollten wir Fremdbenutzer jedoch nicht über das Passwort des Benutzers informieren. Wir können diese Anforderung mit den folgenden Befehlen vereinfachen:

$user = Read-Host "Enter Username"

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

Im Obigen finden Sie eine Übersicht darüber, wie wir mehr Sicherheit hinzufügen können, wenn wir wichtige Informationen wie ein Passwort sichern müssen. Im obigen Beispiel ist die Variable $pass vom Typ System.Security.SecureString. Wir erhalten eine Einführung in zwei weitere weit verbreitete Cmdlets, die PowerShell bietet, um sichere Felder zu vereinfachen, bevor wir Aspekte von DCPP ansprechen.

Die beiden Befehle sind ConvertTo-SecureString und ConvertFrom-SecureString. ConvertTo-SecureString konvertiert einen Klartext in den Typ System.Security.SecureString. Ein Beispiel ist im folgenden dargestellt:

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

Im obigen Beispiel wird der Klartext P@assword1 in den Typ System.Security.SecureStringkonvertiert. Hierbei handelt es sich eher um Informationen, die möglicherweise weit verbreitet sind.

Das nächste Cmdlet ConvertFrom-SecureString ist ein weiter verbreitetes Cmdlet, das verwendet wird, um sichere Zeichenfolgen in verschlüsselte Standardzeichenfolgen zu konvertieren. Die größte Einschränkung von ConvertTo-SecureString ist, dass die Ausgabe nicht für die zukünftige Verwendung direkt in eine Datei geschrieben werden kann. Wir müssen verwenden ConvertFrom-SecureString , was in eine verschlüsselte Standardzeichenfolge konvertiert System.Security.SecureString , die bequem in einer Datei gespeichert werden kann, um diese Einschränkung zu überwinden.

Wir konvertieren Klartext P@ssword1 in eine sichere Zeichenfolge und übertragen dann die Ausgabe, um eine verschlüsselte Zeichenfolge zu ConvertFrom-SecureString erhalten, die sicher und bequem in einer Datei gespeichert werden kann.

Lassen Sie uns beispielsweise auf einem Computer sagen, ob das Administratorkennwort festgelegt wurde und wir es in einer Datei speichern müssen. Wir können dies tun, indem wir Folgendes tun:

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

Wir können dieses Administratorkennwort in einer Variablen als sicheres Objekt abrufen wie:

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

Überlegen Sie nun, wie Sie ein sicheres Kennwort für DCPP nutzen können. Wenn auf dem Computer des Benutzers in DCPP entweder das System- oder das Administratorkennwort festgelegt ist, müssen wir für alle set Befehle das entsprechende Kennwort übergeben. Die Angabe dieses Passworts als Klartext verstößt also gegen die Sicherheit. Daher müssen wir das Passwort als System.Security.SecureStringübergeben. Wenn wir ein SecureString Passwort übergeben, müssen wir es auch mit einem -PasswordSecure Switch und nicht mit dem normalen –Password Switch übergeben. Unten wird ein Beispiel gezeigt, in dem der Benutzer versucht, das Passwort festzulegen AdvancedBatteryChargeCfgDisabled und zu übergeben SecureString :

Set-item AdvancedBatteryChargeCfg disabled –PasswordSecure $pass

Hier $pass das System- und Administratorkennwort enthält und vom Typ System.Security.SecureStringist. Ähnlich wie bei der obigen Diskussion können wir Folgendes lesen $pass :

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

Wir können in einer Datei speichern $pass , falls erforderlich, wie folgt:

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

Información adicional

Propiedades del artículo


Producto comprometido

Dell Command | Powershell Provider

Fecha de la última publicación

11 sept 2023

Versión

7

Tipo de artículo

Solution