Dell Command PowerShell Provider 安全密碼功能

Zusammenfassung: Dell Command | PowerShell Provider (DCPP) 安全密碼功能, ConvertTo-SecureString, ConvertFrom-SecureString, Dell Command | PowerShell Provider (DCPP) Secure Password feature

Dieser Artikel gilt für Dieser Artikel gilt nicht für Dieser Artikel ist nicht an ein bestimmtes Produkt gebunden. In diesem Artikel werden nicht alle Produktversionen aufgeführt.

Weisungen

受影響的產品:

  • Dell Command | PowerShell Provider

安全密碼背後的概念是,在生產腳本中,它們不應將重要密碼作為純視圖傳遞。此動作嚴重缺乏安全性。因此,使用 PowerShell 可以保護密碼或至少降低密碼可見性。首先,讓我們討論安全字串的一般方面,然後討論 DCPP 如何利用 PowerShell 的固有功能來保護密碼。

假設您要在主控台讀取使用者的使用者名稱和密碼。眾所周知,使用者名通常不需要任何安全性,並且所有人都可以看到。但是對於密碼,您不想讓陌生人知道用戶的密碼。可以使用以下命令來滿足此要求:

$user = Read-Host "Enter Username"

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

以上概述如何為密碼等更安全的關鍵資訊添加更多安全性。在上方範例中,變數 $pass 的類型為 System.Security.SecureString。接下來,您將瞭解 PowerShell 提供的另外兩個廣泛使用的 cmdlet,以便在涉及 DCPP 的各個方面之前促進安全欄位。

這兩個命令是 ConvertTo-SecureStringConvertFrom-SecureStringConvertTo-SecureString 會將純文字轉換為類型 System.Security.SecureString。範例如以下所示:

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

在上方範例中,純文字 P@assword1 已轉換為類型 System.Security.SecureString。這更像是參考資訊,不一定會受到廣泛使用。

下一個 cmdlet ConvertFrom-SecureString 是使用更廣泛的 cmdlet,用於將安全字串轉換為加密的標準字串。主要限制 ConvertTo-SecureString 是它的輸出不能直接寫入檔以供將來使用。您必須使用 ConvertFrom-SecureString 轉換 System.Security.SecureString 轉換為加密的標準字串,可以方便地保存到檔中,以克服此限制。

您正在轉換純文字 P@ssword1 以保護字串,然後將其輸出管道傳輸到 ConvertFrom-SecureString 以取得可以安全且方便地儲存至檔案中的加密字串。

例如,假設在計算機上設置了管理員密碼並且必須保存到檔中。此動作會使用下列方法完成:

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

此命令可將此管理員密碼擷取回至變數中作為安全物件,例如:

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

現在來想想該如何使用 DCPP 的安全密碼。在 DCPP 中,如果使用者的電腦已設定系統或管理員密碼,則針對所有 set 命令中必須傳遞相應的密碼。因此,以純文字形式提供此密碼會違反安全性。您必須將密碼傳遞為 System.Security.SecureString。此外,當您通過 SecureString 密碼,您必須使用 -PasswordSecure 切換值來傳送,而非一般 –Password 切換值。下面顯示了使用者嘗試設置的範例 AdvancedBatteryChargeCfg 的輸出傳送至 Disabled 並傳送 SecureString 密碼:

Set-item AdvancedBatteryChargeCfg disabled –PasswordSecure $pass

此處 $pass 存有系統和管理員密碼,且類型為 System.Security.SecureString。與上面的討論類似,您可以閱讀 $pass 如:

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

您可以儲存 $pass 如果需要,到檔案中,作為:

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

Weitere Informationen

Betroffene Produkte

Dell Command | Powershell Provider
Artikeleigenschaften
Artikelnummer: 000146459
Artikeltyp: How To
Zuletzt geändert: 09 Juni 2026
Version:  10
Antworten auf Ihre Fragen erhalten Sie von anderen Dell NutzerInnen
Support Services
Prüfen Sie, ob Ihr Gerät durch Support Services abgedeckt ist.