Funzione password di protezione di Dell Command PowerShell Provider

Summary: Funzione password di protezione di Dell Command | PowerShell Provider (DCPP), ConvertTo-SecureString, ConvertFrom-SecureString

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Instructions

Prodotti interessati:

  • Dell Command | PowerShell Provider

Il concetto alla base delle password sicure è che negli script di produzione non devono passare password importanti come visualizzazione normale. Questa è un problema di sicurezza grave. Quindi, l'uso di PowerShell può proteggere una password o almeno ridurne la visibilità. Innanzitutto, discutiamo gli aspetti generali della stringa protetta e poi discutiamo di come DCPP sfrutta la funzionalità innata di PowerShell per proteggere le password.

Si consiglia di leggere il nome utente e la password dell'utente nella console. È noto che il nome utente generalmente non richiede alcuna sicurezza e può essere visibile a tutti. Ma per la password non vuoi far conoscere a estranei la password dell'utente. Questo requisito può essere facilitato con i comandi seguenti:

$user = Read-Host "Enter Username"

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

Quanto sopra è una panoramica di come è possibile aggiungere maggiore sicurezza per informazioni critiche più sicure come una password. Nell'esempio precedente, la variabile $pass è di tipo System.Security.SecureString. Successivamente, viene fornita un'introduzione ad altri due cmdlet ampiamente utilizzati forniti da PowerShell per facilitare i campi protetti prima di toccare gli aspetti di DCPP.

I due comandi sono ConvertTo-SecureString e ConvertFrom-SecureString. ConvertTo-SecureString converte un testo normale in tipo System.Security.SecureString. Di seguito viene mostrato un esempio:

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

Nell'esempio precedente, il testo normale P@assword1 viene convertito in tipo System.Security.SecureString. Questa è più di un'informazione e potrebbe o meno essere ampiamente utilizzata.

Il cmdlet successivo ConvertFrom-SecureString è un cmdlet utilizzato più ampiamente, che consente di convertire stringhe di protezione in stringhe standard crittografate. La limitazione principale di ConvertTo-SecureString è che il relativo output non può essere scritto direttamente in un file per un uso futuro. È necessario utilizzare ConvertFrom-SecureString che converte System.Security.SecureString in una stringa standard crittografata che può essere comodamente salvata in un file, per superare questa limitazione.

Stai convertendo testo normale P@ssword1 in stringa di protezione e indirizzando il relativo output a ConvertFrom-SecureString per ottenere una stringa crittografata che può essere salvata in modo sicuro e comodo in un file.

Ad esempio, supponiamo su un computer se la password amministratore è stata impostata e deve essere salvata in un file. Questa operazione viene eseguita utilizzando:

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

Questo comando può recuperare la password amministratore in una variabile come oggetto protetto, ad esempio:

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

Ora, consideriamo come utilizzare una password di protezione per DCPP. In DCPP, se sul computer dell'utente è impostata una password di sistema o di amministratore, per tutti i comandi set comandi, è necessario passare la rispettiva password. Pertanto, se forniamo questa password come testo normale violiamo la sicurezza. È necessario passare la password come System.Security.SecureString. Inoltre, quando si supera un SecureString password è necessario passarla con un -PasswordSecure e non il normale switch –Password . Di seguito è riportato un esempio in cui l'utente sta tentando di impostare AdvancedBatteryChargeCfg su Disabled e passando la password SecureString :

Set-item AdvancedBatteryChargeCfg disabled –PasswordSecure $pass

Qui $pass contiene la password di sistema e amministratore ed è di tipo System.Security.SecureString. Analogamente alla discussione precedente, puoi leggere $pass come:

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

È possibile risparmiare $pass in un file, se necessario, come:

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

Additional Information

Affected Products

Dell Command | Powershell Provider
Article Properties
Article Number: 000146459
Article Type: How To
Last Modified: 09 Jun 2026
Version:  10
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.