Passer au contenu principal
  • Passer des commandes rapidement et facilement
  • Afficher les commandes et suivre l’état de votre expédition
  • Profitez de récompenses et de remises réservées aux membres
  • Créez et accédez à une liste de vos produits
  • Gérer vos sites, vos produits et vos contacts au niveau des produits Dell EMC à l’aide de la rubrique Gestion des informations de l’entreprise.

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

Résumé: Команда Dell | Функція безпечного пароля постачальника PowerShell, ConvertTo-SecureString, ConvertFrom-SecureString

Cet article a peut-être été traduit automatiquement. Si vous avez des commentaires concernant sa qualité, veuillez nous en informer en utilisant le formulaire au bas de cette page.

Contenu de l’article


Symptômes

Продукти, що зазнали впливу:

  • Команда Dell | Постачальник PowerShell

Cause

Не зазначалося

Résolution

Концепція безпечних паролів полягає в тому, що у виробничих сценаріях ми не повинні передавати важливі паролі як звичайний вигляд. Це серйозний недолік безпеки. Таким чином, використовуючи 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@assword1System.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 пароль, ми повинні передати його перемикачем, а не звичайним –Password перемикачем-PasswordSecure. Нижче показано приклад, де користувач намагається встановити 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

Informations supplémentaires

Propriétés de l’article


Produit concerné

Dell Command | Powershell Provider

Dernière date de publication

11 sept. 2023

Version

7

Type d’article

Solution