Dell Command PowerShell Provider 安全密码功能

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

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。接下来,在涉及 DCPP 的各个方面之前,将介绍 PowerShell 为促进字段安全而提供的其他两个广泛使用的 cmdlet。

这两个命令是 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.