Skip to main content
  • Place orders quickly and easily
  • View orders and track your shipping status
  • Create and access a list of your products

Функция безопасного пароля Dell Command PowerShell Provider

Summary: Функция безопасного пароля Dell Command | PowerShell Provider (DCPP), ConvertTo-SecureString, ConvertFrom-SecureString, Dell Command | PowerShell Provider (DCPP) Secure Password feature ...

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

Затронутые продукты:

  • Dell Command | PowerShell Provider

Концепция безопасных паролей заключается в том, что в производственных сценариях мы не должны передавать важные пароли в открытом виде. Это серьезный недостаток безопасности. Таким образом, с помощью PowerShell можно защитить пароль или хотя бы снизить видимость пароля. Сначала мы обсудим общие аспекты безопасной строки, а затем рассмотрим, как Dell Command PowerShell Provider (DCPP) использует врожденную функцию PowerShell для защиты пароля.

Обратите внимание, что нам необходимо считать имя пользователя и пароль от пользователя на консоли. Известно, что имя пользователя, как правило, не требует защиты и может быть видимым для всех. Но пользовательский пароль не должен быть известен посторонним лицам. Это требование можно выполнить с помощью команд, приведенных ниже.

$user = Read-Host "Enter Username"

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

Выше представлен обзор того, как можно повысить уровень безопасности, когда необходимо обеспечить защиту критически важной информации, например пароля. В приведенном выше примере переменная «$pass» имеет тип System.Security.SecureString. Мы представим два других широко используемых командлета PowerShell, которые позволяют упростить защиту полей, прежде чем переходить к аспектам DCPP.

Эти две команды: ConvertTo-SecureString и ConvertFrom-SecureString. ConvertTo-SecureString преобразовывает простой текст в тип System.Security.SecureString. Пример показан ниже:

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

В приведенном выше примере простой текст P@assword1 преобразован в тип System.Security.SecureString. Это представляет собой информацию, которая может использоваться или не использоваться широко.

Следующий командлет ConvertFrom-SecureString более распространен и используется для преобразования защищенных строк в зашифрованные стандартные строки. Основное ограничение 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

Additional Information

Affected Products

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