Функція надійного пароля Dell Command PowerShell Provider
요약: Команда Dell | Функція безпечного пароля PowerShell Provider (DCPP), ConvertTo-SecureString, ConvertFrom-SecureString
지침
Продукти, на які вплинули:
- 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
추가 정보
Статті по темі: