訓練
認證
Microsoft Certified: Identity and Access Administrator Associate - Certifications
示範 Microsoft Entra ID 的功能,以現代化身分識別解決方案、實作混合式解決方案,以及實作身分識別治理。
注意
Key Vault 支援兩種類型的資源:保存庫和受控 HSM。 本文討論受控 HSM。 如果您想要了解如何管理保存庫,請參閱使用 Azure CLI 來管理 Key Vault。
如需受控 HSM 的概觀,請參閱什麼是受控 HSM?。 如尚未擁有 Azure 訂用帳戶,請在開始之前先建立免費帳戶。
本文說明如何管理受控 HSM 資料平面的角色。 若要了解受控 HSM 存取控制模型,請參閱受控 HSM 存取控制。
若要允許安全性主體 (例如使用者、服務主體、群組或受控識別) 執行受控 HSM 資料平面作業,他們必須被指派允許執行這些作業的角色。 例如,如果您想要允許應用程式使用金鑰執行簽署作業,則必須為其指派以 "Microsoft.KeyVault/managedHSM/keys/sign/action" 作為其中一個資料動作的角色。 角色可指派於特定範圍。 受控 HSM 本機 RBAC 支援兩個範圍:HSM 範圍 (/
或 /keys
) 和每個金鑰 (/keys/<keyname>
)。
如需所有受控 HSM 內建角色及其允許之作業的清單,請參閱受控 HSM 內建角色。
若要使用本文中的 Azure CLI 命名,您必須具有下列項目:
az --version
以尋找版本。 如果您需要安裝或升級,請參閱安裝 Azure CLI 模組。Azure Cloud Shell 是裝載於 Azure 中的互動式殼層環境,可在瀏覽器中使用。 您可以使用 Bash 或 PowerShell 搭配 Cloud Shell,與 Azure 服務共同使用。 您可以使用 Cloud Shell 預先安裝的命令,執行本文提到的程式碼,而不必在本機環境上安裝任何工具。
要啟動 Azure Cloud Shell:
選項 | 範例/連結 |
---|---|
選取程式碼或命令區塊右上角的 [試試看]。 選取 [試試看] 並不會自動將程式碼或命令複製到 Cloud Shell 中。 | ![]() |
請前往 https://shell.azure.com,或選取 [啟動 Cloud Shell] 按鈕,在瀏覽器中開啟 Cloud Shell。 | ![]() |
選取 Azure 入口網站右上方功能表列上的 [Cloud Shell] 按鈕。 | ![]() |
若要使用 Azure Cloud Shell:
啟動 Cloud Shell。
選取程式碼區塊 (或命令區塊) 上的 [複製] 按鈕以複製程式碼或命令。
透過在 Windows 和 Linux 上選取 Ctrl+Shift+V;或在 macOS 上選取 Cmd+Shift+V,將程式碼或命令貼到 Cloud Shell 工作階段中。
選取 Enter 鍵執行程式碼或命令。
若要使用 CLI 登入 Azure,您可以輸入:
az login
若要進一步了解透過 CLI 的登入選項,請參閱使用 Azure CLI 進行登入
使用 az keyvault role assignment create
命令,針對 ContosoHSM 中的所有金鑰 (範圍 /keys
),將受控 HSM 密碼編譯人員角色指派給使用者主體名稱 user2@contoso.com 所識別的使用者。
az keyvault role assignment create --hsm-name ContosoMHSM --role "Managed HSM Crypto User" --assignee user2@contoso.com --scope /keys
使用 az keyvault role assignment create
命令,針對名為 myrsakey 的特定金鑰,將受控 HSM 密碼編譯金鑰角色指派給使用者主體名稱 user2@contoso.com 所識別的使用者。
az keyvault role assignment create --hsm-name ContosoMHSM --role "Managed HSM Crypto User" --assignee user2@contoso.com --scope /keys/myrsakey
使用 az keyvault role assignment list
列出角色指派。
在範圍 / (未指定 --scope 時的預設值) 為所有使用者 (未指定 --assignee 時的預設值) 進行的所有角色指派
az keyvault role assignment list --hsm-name ContosoMHSM
在 HSM 層級為特定使用者 user1@contoso.com 進行的所有角色指派。
az keyvault role assignment list --hsm-name ContosoMHSM --assignee user@contoso.com
注意
當範圍是 / (或 /keys) 時,list 命令只會列出最上層的所有角色指派,而不會顯示個別金鑰層級的角色指派。
針對特定金鑰 myrsakey 的特定使用者 user2@contoso.com 進行的所有角色指派。
az keyvault role assignment list --hsm-name ContosoMHSM --assignee user2@contoso.com --scope /keys/myrsakey
針對特定金鑰 myrsakey 的特定使用者 user2@contoso.com 進行的受控 HSM 密碼編譯人員角色的特定角色指派
az keyvault role assignment list --hsm-name ContosoMHSM --assignee user2@contoso.com --scope /keys/myrsakey --role "Managed HSM Crypto Officer"
使用 az keyvault role assignment delete
命令,刪除指派給金鑰 myrsakey2 的使用者 user2@contoso.com 的受控 HSM 密碼編譯人員角色。
az keyvault role assignment delete --hsm-name ContosoMHSM --role "Managed HSM Crypto Officer" --assignee user2@contoso.com --scope /keys/myrsakey2
使用 az keyvault role definition list
命令列出所有角色定義。
az keyvault role definition list --hsm-name ContosoMHSM
受控 HSM 有數個內建 (預先定義的) 角色適合用於最常見的使用案例。 您可以使用允許角色執行的特定動作清單來定義您自己的角色。 然後,您可以將此角色指派給主體,以向其授與指定動作的權限。
針對名為 My Custom Role 的角色使用 az keyvault role definition create
命令 (使用 JSON 字串)。
az keyvault role definition create --hsm-name ContosoMHSM --role-definition '{
"roleName": "My Custom Role",
"description": "The description of the custom rule.",
"actions": [],
"notActions": [],
"dataActions": [
"Microsoft.KeyVault/managedHsm/keys/read/action"
],
"notDataActions": []
}'
從名為 my-custom-role-definition.json 的檔案 (包含角色定義的 JSON 字串) 針對角色使用 az keyvault role definition create
命令。 請參閱上面的範例。
az keyvault role definition create --hsm-name ContosoMHSM --role-definition @my-custom-role-definition.json
使用 az keyvault role definition show
命令以名稱 (GUID) 查看特定角色定義的詳細資料。
az keyvault role definition show --hsm-name ContosoMHSM --name xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
使用 az keyvault role definition update
命令來更新名為 My Custom Role 的角色 (使用 JSON 字串)。
az keyvault role definition create --hsm-name ContosoMHSM --role-definition '{
"roleName": "My Custom Role",
"name": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"id": "Microsoft.KeyVault/providers/Microsoft.Authorization/roleDefinitions/xxxxxxxx-
xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"description": "The description of the custom rule.",
"actions": [],
"notActions": [],
"dataActions": [
"Microsoft.KeyVault/managedHsm/keys/read/action",
"Microsoft.KeyVault/managedHsm/keys/write/action",
"Microsoft.KeyVault/managedHsm/keys/backup/action",
"Microsoft.KeyVault/managedHsm/keys/create"
],
"notDataActions": []
}'
使用 az keyvault role definition delete
命令以名稱 (GUID) 查看特定角色定義的詳細資料。
az keyvault role definition delete --hsm-name ContosoMHSM --name xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
注意
無法刪除內建角色。 刪除自訂角色時,所有使用該自訂角色的角色指派都會失效。
訓練
認證
Microsoft Certified: Identity and Access Administrator Associate - Certifications
示範 Microsoft Entra ID 的功能,以現代化身分識別解決方案、實作混合式解決方案,以及實作身分識別治理。