有PowerShell腳本,您必須在PowerShell中對密碼進行身份驗證和存儲密碼。有時,您想獲得憑據提示,以填寫憑據並運行腳本。另一次,您想自動化任務並以加密格式安全地保存密碼。在本文中,您將學習如何使用PowerShell安全存儲憑證。
互動與非相互作用
- 交互的方法需要用戶交互,例如提示用戶輸入用戶名和密碼。它在提供必要的信息時進一步進行。
- 非相互作用方法在腳本執行過程中不需要用戶輸入,並且通常依賴於預先配置的設置,自動化過程或預先提供的數據。
重要的:始終安全地填寫密碼,而永遠不要用純文本填寫密碼。
將憑據存儲在PowerShell中以進行用戶交互(Interactive)
如果您希望腳本提示使用用戶名和密碼,請按照以下方法之一中的一種步驟操作。
方法1。 get-credential
- 運行出色的CMDLET將您的憑據安全存儲在$信譽多變的
$Creds = Get-Credential
- Windows Powershell憑據請求出現在您必須填寫的地方證書

- 運行$信譽Powershell變量
$Creds
- 輸出顯示使用者名稱和密碼顯示為安全的字符串
UserName Password
-------- --------
myusername System.Security.SecureString
方法2。 pscredential
- 在下面運行命令以將您的憑據安全地存儲在$信譽多變的
$Creds = [System.Management.Automation.PSCredential]::new((Read-Host -Prompt "Enter username"), (Read-Host -Prompt "Enter password" -AsSecureString))
- 輸入使用者名稱和密碼
Enter username: myusername
Enter password: ****************
- 運行$信譽Powershell變量
$Creds
- 輸出顯示使用者名稱和密碼顯示為安全的字符串
UserName Password
-------- --------
myusername System.Security.SecureString
當您具有交互性運行的腳本時,這非常好,並且您每次都可以輸入憑據。但是,如果您不在計算機後面,並且想通過計劃的任務自動化腳本?然後,您必須使用其他方法。
要將憑據存儲在系統上,以便每次運行PowerShell腳本時加載,您需要按照以下步驟操作:
- 運行出色的CMDLET將您的憑據安全存儲在$信譽多變的
$Creds = Get-Credential
- 輸入您的憑據
- 將憑據導出到加密的XML文件
$Creds | Export-CliXml -Path "C:credscredential.xml"
筆記:這導出clixmlCMDLET通過使用Windows Data Protection API來加密憑據對象。加密可確保只有您的用戶帳戶才能解密憑據對象的內容。導出的clixml文件不能在另一台計算機或其他用戶上使用。
- 導航到路徑並驗證XML文件


- 打開XML文件並檢查密碼是否已加密


- 在您的PowerShell腳本中,您現在可以運行import-clixmlcmdlet並將其指向存在XML文件的路徑,以便加載用戶名和加密密碼
$Creds = Import-CliXml -Path "C:credscredential.xml"
就是這樣!
結論
您學會瞭如何使用PowerShell安全存儲憑證。在PowerShell中保存憑據有不同的方法。檢查它是交互式還是非相互作用腳本,並應用正確的方法。始終確保密碼被安全地填充,而不會在清晰的文本中填充。
更多閱讀:
您喜歡這篇文章嗎?您可能還喜歡如何連接到Microsoft Graph PowerShell。不要忘記關注我們並分享這篇文章。