快速入門:使用 Azure PowerShell 從 Azure Key Vault 設定及擷取憑證
在本快速入門中,您會在 Azure Key Vault 中使用 Azure PowerShell 建立金鑰保存庫。 Azure Key Vault 是一項雲端服務,可作為安全的祕密存放區。 您也可以安全地儲存金鑰、密碼、憑證和其他祕密。 如需 Key Vault 的詳細資訊,您可以檢閱概觀。 Azure PowerShell 可供使用命令列或指令碼來建立和管理 Azure 資源。 之後,您可儲存憑證。
必要條件
如果您沒有 Azure 訂用帳戶,請在開始前建立免費帳戶。
- 如果您選擇在本機使用 Azure PowerShell:
- 安裝最新版的 Az PowerShell 模組。
- 使用 Connect-AzAccount Cmdlet 連線至 Azure 帳戶。
- 如果您選擇使用 Azure Cloud Shell:
- 請參閱 Azure Cloud Shell 概觀 以取得詳細資訊。
建立資源群組
資源群組是在其中部署與管理 Azure 資源的邏輯容器。 使用 Azure PowerShell New-AzResourceGroup Cmdlet,在 eastus 位置中建立名為 myResourceGroup 的資源群組。
New-AzResourceGroup -Name "myResourceGroup" -Location "EastUS"
建立金鑰保存庫
使用 Azure PowerShell New-AzKeyVault Cmdlet,在上一個步驟的資源群組中建立 Key Vault。 您需要提供一些資訊:
金鑰保存庫名稱:由 3 到 24 個字元組成的字串,只能包含數字 (0-9)、字母 (a-z、A-Z) 和連字號 (-)
重要
每個金鑰保存庫必須有唯一的名稱。 在下列範例中,將 <your-unique-keyvault-name> 取代為您的金鑰保存庫名稱。
資源群組名稱:myResourceGroup。
位置:EastUS。
New-AzKeyVault -Name "<your-unique-keyvault-name>" -ResourceGroupName "myResourceGroup" -Location "EastUS"
此 Cmdlet 的輸出會顯示新建立金鑰保存庫的屬性。 記下這兩個屬性:
- 保存庫名稱:您提供給 -Name 參數的名稱。
- 保存庫 URI:在此範例中,URI 為 https://<your-unique-keyvault-name>.vault.azure.net/。 透過其 REST API 使用保存庫的應用程式必須使用此 URI。
此時,您的 Azure 帳戶是唯一獲得授權在此新保存庫上執行任何作業的帳戶。
授與用戶帳戶許可權,以管理 金鑰保存庫 中的憑證
若要透過角色型存取控制 (RBAC) 取得金鑰保存庫的權限,請使用 Azure PowerShell cmdlet New-AzRoleAssignment 將角色指派給「使用者主體名稱」(UPN)。
New-AzRoleAssignment -SignInName "<upn>" -RoleDefinitionName "Key Vault Certificate Officer" -Scope "/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.KeyVault/vaults/<your-unique-keyvault-name>"
以實際值取代 <upn>、<subscription-id>、<resource-group-name> 和 <your-unique-keyvault-name>。 您 UPN 的格式通常是電子郵件地址 (例如,username@domain.com)。
在 Key Vault 中新增憑證
現在可以將憑證新增至保存庫。 應用程式可以使用此憑證。
輸入這些命令以建立具有名為 ExampleCertificate 的原則的自我簽署憑證:
$Policy = New-AzKeyVaultCertificatePolicy -SecretContentType "application/x-pkcs12" -SubjectName "CN=contoso.com" -IssuerName "Self" -ValidityInMonths 6 -ReuseKeyOnRenewal
Add-AzKeyVaultCertificate -VaultName "<your-unique-keyvault-name>" -Name "ExampleCertificate" -CertificatePolicy $Policy
透過使用其 URI,您現在可以參照您新增至 Azure Key Vault 的憑證。 使用 https://<your-unique-keyvault-name>.vault.azure.net/certificates/ExampleCertificate
來取得最新版本。
若要檢視先前儲存的憑證:
Get-AzKeyVaultCertificate -VaultName "<your-unique-keyvault-name>" -Name "ExampleCertificate"
疑難排解:
作業傳回無效狀態碼 'Forbidden'
如果您收到此錯誤,存取 Azure Key Vault 的帳戶沒有建立憑證的適當權限。
執行下列 Azure PowerShell 命令以指派適當的權限:
Set-AzKeyVaultAccessPolicy -VaultName <KeyVaultName> -ObjectId <AzureObjectID> -PermissionsToCertificates get,list,update,create
清除資源
此集合中的其他快速入門和教學課程會以本快速入門為基礎。 如果您打算繼續進行其他快速入門和教學課程,您可以讓這些資源留在原處。
當不再需要時,您可以使用 Azure PowerShell Remove-AzResourceGroup Cmdlet 來移除資源群組和所有相關資源。
Remove-AzResourceGroup -Name "myResourceGroup"
下一步
在本快速入門中,您已建立 Key Vault 並在其中儲存憑證。 若要深入了解 Key Vault 以及要如何將其與應用程式整合,請繼續閱讀下列文章。
- 閱讀 Azure Key Vault 概觀
- 請參閱 Azure PowerShell Key Vault Cmdlet 的參考
- 請參閱 Key Vault 安全性概觀