受控識別和使用者提供資源的 Azure 作員 Nexus 叢集支援
為了改善作員 Nexus 平臺的安全性,作員 Nexus 叢集現在支援受控識別。 受控識別可為應用程式提供安全的方式來存取其他 Azure 資源,並免除使用者管理認證的需求。 此外,作員 Nexus 現在具有使用者提供的資源模型。 除了改善安全性之外,此班次還提供跨平臺的一致用戶體驗。
受控識別會與作員 Nexus 叢集上提供的下列用戶資源搭配使用:
- 用於裸機執行命令輸出的記憶體帳戶。
- 用於認證輪替的 金鑰保存庫。
- 用來擷取某些計量的Log Analytics工作區。
若要深入瞭解 Azure 中的受控識別,請參閱 適用於 Azure 資源的受控識別。 作員 Nexus 叢集支援多個使用者指派的受控識別 (UAMI) 或一個系統指派的受控識別 (SAMI)。
雖然使用者可以選擇使用任一受控識別類型,但建議使用UAMIS。 其可讓使用者在建立或更新作員 Nexus 叢集之前預先設定具有 UAMI 適當存取權的資源。 相同的UAMI可用於所有資源,或如果使用者想要更細緻的存取,他們可以為每個資源定義UAMIS。
新增之後,您目前只能透過 API 呼叫移除身分識別。 如需使用 API 更新叢集受控識別的資訊,請參閱 更新叢集身分識別。 本節包含刪除受控識別的相關信息。
必要條件
- 安裝 Azure CLI。
- 安裝適當的 Azure CLI 延伸模組最新版。
注意
Log Analytics 工作區和 金鑰保存庫 的受控識別功能與 2024-10-01-preview API 一起存在,並可供 2025-02-01 GA API 使用。
作員 Nexus 叢集與使用者指派的受控識別 (UAMI)
最好先定義所有使用者提供的資源(記憶體帳戶、法律及 金鑰保存庫)、與這些資源相關聯的受控識別,然後將受控識別指派給資源的適當存取權。 如果在建立叢集之前未完成這些步驟,則必須在叢集部署之前完成這些步驟。
針對新的叢集部署時間未設定這些資源的影響如下:
- 記憶體帳戶: run-* 命令輸出無法寫入記憶體帳戶。
- LAW: 叢集部署失敗,因為法律需要在部署期間安裝軟體延伸模組。
- 金鑰保存庫:認證輪替失敗,因為有檢查可確保在執行認證輪替之前,先 金鑰保存庫 用戶寫入存取權。
您可以隨時更新叢集。 變更LAW設定可能會導致將計量傳送至LAW的短暫中斷,因為可能需要重新安裝使用LAW的延伸模組。
應遵循下列步驟,以搭配 Nexus 叢集和相關聯的資源使用 UAMIS。
建立 UAMI 或 UAMIS
- 為有問題的資源建立UAMI或UMI。 如需建立受控識別的詳細資訊,請參閱 管理使用者指派的受控識別。
建立資源,並將UAMI指派給資源
記憶體帳戶設定
- 建立記憶體帳戶,或識別您想要使用的現有記憶體帳戶。 請參閱 建立 Azure 記憶體帳戶。
- 在記憶體帳戶中建立 Blob 記憶體容器。 請參閱 建立容器。
- 將
Storage Blob Data Contributor
角色指派給使用者和需要存取 run-* 命令輸出的 UAMI。 請參閱指派 Azure 角色以存取 blob 資料。 - 若要將記憶體帳戶的存取限制為一組選取的IP或虛擬網路,請參閱設定 Azure 儲存體 防火牆和虛擬網路。
- 執行 run-* 命令之所有使用者的 IP 必須新增至記憶體帳戶的
Virtual Networks
和/或Firewall
清單。 - 確定
Allow Azure services on the trusted services list to access this storage account.
已選取底下Exceptions
。
- 執行 run-* 命令之所有使用者的 IP 必須新增至記憶體帳戶的
Log Analytics 工作區設定
- 建立 Log Analytics 工作區 (LAW),或識別您想要使用的現有 LAW。 請參閱 建立Log Analytics工作區。
- 將
Log Analytics Contributor
角色指派給Log Analytics工作區的UAMI。 請參閱 管理 Log Analytics 工作區的存取權。
金鑰保存庫 設定
- 建立 金鑰保存庫,或識別您想要使用的現有 金鑰保存庫。 請參閱建立 金鑰保存庫。
- 啟用角色型 存取控制 (RBAC) 的 金鑰保存庫。 請參閱在 金鑰保存庫 上啟用 Azure RBAC 許可權。
- 將
Operator Nexus Key Vault Writer Service Role (Preview)
角色指派給 金鑰保存庫的UAMI。 請參閱 指派角色。- 運算子 Nexus 金鑰保存庫 寫入器服務角色的角色定義識別碼為
44f0a1a8-6fea-4b35-980a-8ff50c487c97
。 如果使用 Azure 命令行來執行角色指派,則需要此格式。
- 運算子 Nexus 金鑰保存庫 寫入器服務角色的角色定義識別碼為
- 使用UAMI存取 金鑰保存庫時,必須針對 Nexus 平臺布建該身分識別的存取權。 具體而言,
Microsoft.ManagedIdentity/userAssignedIdentities/assign/action
必須將許可權新增至 Microsoft Entra 標識碼的使用者AFOI-NC-MGMT-PME-PROD
指派身分識別。 這是未來將解決之平臺的已知限制。- 開啟 Azure 入口網站,並找出有問題的使用者指派身分識別。
- 在 [訪問控制][IAM] 底下,選取 [新增角色指派]。
- 選取 [角色:受控識別作員]。 (請參閱角色提供 Managed-identity-operator的許可權。
- 指派存取權給: 使用者、群組或服務主體。
- 選取 成員:AFOI-NC-MGMT-PME-PROD 應用程式。
- 檢閱並指派。
- 若要將存取 金鑰保存庫 限制為一組選取的IP或虛擬網路,請參閱設定 Azure 金鑰保存庫 防火牆和虛擬網路。
- 需要存取 金鑰保存庫 之所有使用者的IP必須新增至 金鑰保存庫 和
Virtual Networks
/或Firewall
清單。 -
Allow trusted Microsoft services to bypass this firewall.
確定已選取底下Exceptions
。
- 需要存取 金鑰保存庫 之所有使用者的IP必須新增至 金鑰保存庫 和
建立或更新 Nexus 叢集以使用使用者指派的受控識別和使用者提供的資源
在叢集上定義 UAMI(S)
使用使用者指派的受控識別建立或更新叢集時,請使用 --mi-user-assigned
參數以及UAMI的資源識別碼。 如果您想要指定多個 UAMI,請列出 UAMI 的資源識別碼,其間有空格。 此清單中必須提供用於 金鑰保存庫、LAW 或記憶體帳戶的每個 UAMI。
建立叢集時,您可以在 中 --mi-user-assigned
指定UAMIS,同時定義資源設定。 更新叢集以變更 UAMI 時,您應該先更新叢集來設定 --mi-user-assigned
值,然後更新叢集以修改資源設定以使用它。
記憶體帳戶設定
數據 --command-output-settings
建構可用來定義寫入執行命令輸出的記憶體帳戶。 包含下列欄位:
-
container-url
:所指定身分識別所要使用的記憶體帳戶容器 URL。 -
identity-resource-id
:使用者指派的受控識別資源標識符。 與系統指派的身分識別類型互斥。 -
identity-type
:正在選取的受控識別類型。 使用UserAssignedIdentity
。
Log Analytics 工作區設定
數據 --analytics-output-settings
建構可用來定義傳送計量的 LAW。 包含下列欄位:
-
analytics-workspace-id
:所指定身分識別所要使用的分析工作區資源標識符。 -
identity-resource-id
:使用者指派的受控識別資源標識符。 與系統指派的身分識別類型互斥 -
identity-type
:正在選取的受控識別類型。 使用UserAssignedIdentity
。
金鑰保存庫 設定
數據--secret-archive-settings
建構可用來定義寫入輪替認證的 金鑰保存庫。 包含下列欄位:
-
identity-resource-id
:使用者指派的受控識別資源標識符。 -
identity-type
:正在選取的受控識別類型。 使用UserAssignedIdentity
。 -
vault-uri
:做為秘密封存的密鑰保存庫 URI。
叢集建立命令範例
範例 1:此範例是縮寫的叢集建立命令,它會在記憶體帳戶、法律及 金鑰保存庫 之間使用一個 UAMI。
az networkcloud cluster create --name "clusterName" -g "resourceGroupName" \
...
--mi-user-assigned "/subscriptions/subscriptionId/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myUAMI" \
--command-output-settings identity-type="UserAssignedIdentity" \
identity-resource-id="/subscriptions/subscriptionId/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myUAMI" \
container-url="https://myaccount.blob.core.windows.net/mycontainer?restype=container" \
--analytics-output-settings analytics-workspace-id="/subscriptions/subscriptionId/resourceGroups/resourceGroupName/providers/microsoft.operationalInsights/workspaces/logAnalyticsWorkspaceName" \
identity-type="UserAssignedIdentity" \
identity-resource-id="/subscriptions/subscriptionId/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myUAMI" \
--secret-archive-settings vault-uri="https://mykv.vault.azure.net/"
identity-type="UserAssignedIdentity" \
identity-resource-id="/subscriptions/subscriptionId/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myUAMI" \
範例 2: 此範例是使用兩個 UAMIS 的縮寫叢集建立命令。 記憶體帳戶和 LAW 會使用第一個 UAMI,而 金鑰保存庫 則使用第二個 UAMI。
az networkcloud cluster create --name "clusterName" -g "resourceGroupName" \
...
--mi-user-assigned "/subscriptions/subscriptionId/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myFirstUAMI" "/subscriptions/subscriptionId/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/mySecondUAMI" \
--command-output-settings identity-type="UserAssignedIdentity" \
identity-resource-id="/subscriptions/subscriptionId/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myFirstUAMI" \
container-url="https://myaccount.blob.core.windows.net/mycontainer?restype=container" \
--analytics-output-settings analytics-workspace-id="/subscriptions/subscriptionId/resourceGroups/resourceGroupName/providers/microsoft.operationalInsights/workspaces/logAnalyticsWorkspaceName" \
identity-type="UserAssignedIdentity" \
identity-resource-id="/subscriptions/subscriptionId/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myFirstUAMI" \
--secret-archive-settings vault-uri="https://mykv.vault.azure.net/"
identity-type="UserAssignedIdentity" \
identity-resource-id="/subscriptions/subscriptionId/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/mySecondUAMI"
叢集更新範例
更新叢集是兩個步驟的程式。 如果您需要變更資源的 UAMI,您必須先更新叢集以將它--mi-user-assigned
包含在欄位中,然後更新記憶體帳戶、法律或 金鑰保存庫 的對應--identity-resource-id
。
如果有多個使用中的UAM,更新時必須在欄位中指定 --mi-user-assigned
完整的UAM清單。 如果在叢集上使用 SAMI,而且您要新增 UAMI,則必須包含在 --mi-system-assigned
更新命令中。 無法包含現有的受控識別會導致移除它們。
針對 LAW 和 金鑰保存庫,從現有的數據建構轉換成使用受控識別的新建構,可以透過叢集更新來完成。
範例 1: 將 UAMI 新增至叢集。 然後將UAMI指派給秘密封存設定(金鑰保存庫)。 如果此叢集已定義 SAMI,則會移除 SAMI。
叢集更新以新增 UAMI myUAMI
。
az networkcloud cluster update --name "clusterName" --resource-group "resourceGroupName" \
--mi-user-assigned "/subscriptions/subscriptionId/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myUAMI" \
要指派 myUAMI
給秘密封存設定的叢集更新。
az networkcloud cluster update --name "clusterName" --resource-group "resourceGroupName" \
--secret-archive-settings identity-type="UserAssignedIdentity" \
identity-resource-id="/subscriptions/subscriptionId/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myUAMI" \
vault-uri="https://keyvaultname.vault.azure.net/"
範例 2: 將 UAMI mySecondUAMI
新增至已 myFirstUAMI
保留的叢集。 然後更新叢集以指派 mySecondUAMI
給命令輸出設定 (記憶體帳戶)。
叢集更新以在保留 myFirstUAMI
時新增UAMImySecondUAMI
。
az networkcloud cluster update --name "clusterName" --resource-group "resourceGroupName" \
--mi-user-assigned "/subscriptions/subscriptionId/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myFirstUAMI" "/subscriptions/subscriptionId/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/mySecondUAMI" \
要指派 mySecondUAMI
給命令輸出設定的叢集更新。
az networkcloud cluster update --name "clusterName" --resource-group "resourceGroupName" \
--command-output-settings identity-type="UserAssignedIdentity" \
identity-resource-id="/subscriptions/subscriptionId/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/mySecondUAMI" \
container-url="https://myaccount.blob.core.windows.net/mycontainer?restype=container"
範例 3: 更新已經有 SAMI 並新增 UAMI 的叢集。 會保留SAMI。 然後將UAMI指派給記錄分析輸出設定 (LAW)。
警告
變更LAW設定可能會導致將計量傳送至LAW的短暫中斷,因為可能需要重新安裝使用LAW的延伸模組。
叢集更新以新增 UAMI mUAMI
。
az networkcloud cluster update --name "clusterName" --resource-group "resourceGroupName" \
--mi-user-assigned "/subscriptions/subscriptionId/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myUAMI" \
--mi-system-assigned
要指派 myUAMI
給記錄分析輸出設定的叢集更新。
az networkcloud cluster update --name "clusterName" --resource-group "resourceGroupName" \
--analytics-output-settings analytics-workspace-id="/subscriptions/subscriptionId/resourceGroups/resourceGroupName/providers/microsoft.operationalInsights/workspaces/logAnalyticsWorkspaceName" \
identity-type="UserAssignedIdentity" \
identity-resource-id="/subscriptions/subscriptionId/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myUAMI"
檢視使用者指派受控識別的主要標識碼
您可以在身分識別資源上選取 [JSON 檢視] 來找到識別資源標識符;標識元位於出現的面板頂端。 您可以在容器資源的 [設定 -> 屬性] 索引標籤上找到容器 URL。
CLI 也可以用來檢視叢集中的身分識別和相關聯的主體標識符數據。
範例:
az networkcloud cluster show --ids /subscriptions/<Subscription ID>/resourceGroups/<Cluster Resource Group Name>/providers/Microsoft.NetworkCloud/clusters/<Cluster Name>
輸出:
"identity": {
"type": "UserAssigned",
"userAssignedIdentities": {
"/subscriptions/subscriptionID/resourcegroups/<resourceGroupName>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<userAssignedIdentityName>": {
"clientId": "00001111-aaaa-2222-bbbb-3333cccc4444",
"principalId": "bbbbbbbb-cccc-dddd-2222-333333333333"
}
}
},
具有系統指派受控識別的作員 Nexus 叢集
使用系統指派的受控識別 (SAMI) 會遵循與 UAM 不同的模式。 雖然使用者提供的資源(記憶體帳戶、法律及 金鑰保存庫)可以在建立叢集之前建立,但 SAMI 在建立叢集之前並不存在。 使用者需要查詢叢集以取得 SAMI、為每個資源指派正確的 SAMI 許可權,然後使用指定系統指派身分識別的資源設定來更新叢集。
針對新的叢集,必須在叢集部署之前完成這些步驟。 針對新的叢集部署時間未設定這些資源的影響如下:
- 記憶體帳戶: run-* 命令輸出無法寫入記憶體帳戶。
- LAW: 叢集部署失敗,因為法律需要在部署期間安裝軟體延伸模組。
- 金鑰保存庫:認證輪替失敗,因為有檢查可確保在執行認證輪替之前,先 金鑰保存庫 用戶寫入存取權。
您可以隨時更新叢集。 變更LAW設定可能會導致將計量傳送至LAW的短暫中斷,因為可能需要重新安裝使用LAW的延伸模組。
應遵循下列步驟,以搭配 Nexus 叢集和相關聯的資源使用 UAMIS。
- 使用 SAMI 建立或更新叢集
- 查詢叢集以取得SAMI
- 建立資源,並將SAMI指派給資源
- 使用使用者提供的資源資訊更新叢集
- 部署叢集 (如果新增)
使用 SAMI 建立或更新叢集
使用系統指派的受控識別建立或更新叢集時,請使用 --mi-system-assigned
參數。 叢集建立或更新程式會產生 SAMI 資訊。
範例 1: 此範例是指定 SAMI 的縮寫叢集 create 命令。
az networkcloud cluster create --name "clusterName" -g "resourceGroupName" \
...
--mi-system-assigned
範例 2: 此範例會更新叢集以新增 SAMI。 系統會移除叢集上定義的任何UAM。
az networkcloud cluster update --name "clusterName" -g "resourceGroupName" \
--mi-system-assigned
範例 3:此範例會更新叢集以新增 SAMI,並保留現有的 UAMI。 myUAMI
az networkcloud cluster update --name "clusterName" -g "resourceGroupName" \
--mi-user-assigned "/subscriptions/subscriptionId/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myUAMI" \
--mi-system-assigned
查詢叢集以取得SAMI
您可以在 Azure 入口網站 的身分識別資源上選取 [JSON 檢視] 來找到身分識別資源識別碼。
CLI 也可以用來檢視叢集中的身分識別和相關聯的主體標識符數據。
請注意, principalId
授與資源存取權時所使用的身分識別。
範例:
az networkcloud cluster show --ids /subscriptions/<Subscription ID>/resourceGroups/<Cluster Resource Group Name>/providers/Microsoft.NetworkCloud/clusters/<Cluster Name>
系統指派的身分識別範例:
"identity": {
"principalId": "aaaaaaaa-bbbb-cccc-1111-222222222222",
"tenantId": "aaaabbbb-0000-cccc-1111-dddd2222eeee",
"type": "SystemAssigned"
},
建立資源,並將SAMI指派給資源
記憶體帳戶設定
- 建立記憶體帳戶,或識別您想要使用的現有記憶體帳戶。 請參閱 建立 Azure 記憶體帳戶。
- 在記憶體帳戶中建立 Blob 記憶體容器。 請參閱 建立容器。
- 將
Storage Blob Data Contributor
角色指派給使用者和需要存取 run-* 命令輸出的 SAMI。 請參閱指派 Azure 角色以存取 blob 資料。 -
- 若要將記憶體帳戶的存取限制為一組選取的IP或虛擬網路,請參閱設定 Azure 儲存體 防火牆和虛擬網路。
- 執行 run-* 命令之所有使用者的 IP 必須新增至記憶體帳戶的
Virtual Networks
和/或Firewall
清單。 - 確定
Allow Azure services on the trusted services list to access this storage account.
已選取底下Exceptions
。
Log Analytics 工作區設定
- 建立 Log Analytics 工作區 (LAW),或識別您想要使用的現有 LAW。 請參閱 建立Log Analytics工作區。
- 將
Log Analytics Contributor
角色指派給記錄分析工作區的 SAMI。 請參閱 管理 Log Analytics 工作區的存取權。
金鑰保存庫 設定
- 建立 金鑰保存庫,或識別您想要使用的現有 金鑰保存庫。 請參閱建立 金鑰保存庫。
- 啟用角色型 存取控制 (RBAC) 的 金鑰保存庫。 請參閱在 金鑰保存庫 上啟用 Azure RBAC 許可權。
- 將
Operator Nexus Key Vault Writer Service Role (Preview)
角色指派給 金鑰保存庫的 SAMI。 請參閱 指派角色。- 作員 Nexus 金鑰保存庫 寫入器服務角色的角色定義識別碼為
44f0a1a8-6fea-4b35-980a-8ff50c487c97
。 如果使用 Azure 命令行來執行角色指派,則需要此格式。
- 作員 Nexus 金鑰保存庫 寫入器服務角色的角色定義識別碼為
- 若要將存取 金鑰保存庫 限制為一組選取的IP或虛擬網路,請參閱設定 Azure 金鑰保存庫 防火牆和虛擬網路。
- 需要存取 金鑰保存庫 之所有使用者的IP必須新增至 金鑰保存庫 和
Virtual Networks
/或Firewall
清單。 -
Allow trusted Microsoft services to bypass this firewall.
確定已選取底下Exceptions
。
- 需要存取 金鑰保存庫 之所有使用者的IP必須新增至 金鑰保存庫 和
使用使用者提供的資源資訊更新叢集
記憶體帳戶設定
數據 --command-output-settings
建構可用來定義寫入執行命令輸出的記憶體帳戶。 包含下列欄位:
-
container-url
:所指定身分識別所要使用的記憶體帳戶容器 URL。 -
identity-resource-id
:使用 SAMI 時不需要 -
identity-type
:正在選取的受控識別類型。 使用SystemAssignedIdentity
。
Log Analytics 工作區設定
數據 --analytics-output-settings
建構可用來定義傳送計量的 LAW。 包含下列欄位:
-
analytics-workspace-id
:所指定身分識別所要使用的分析工作區資源標識符。 -
identity-resource-id
:使用 SAMI 時不需要 -
identity-type
:正在選取的受控識別類型。 使用SystemAssignedIdentity
。
金鑰保存庫 設定
數據--secret-archive-settings
建構可用來定義寫入輪替認證的 金鑰保存庫。 包含下列欄位:
-
identity-resource-id
:使用 SAMI 時不需要 -
identity-type
:正在選取的受控識別類型。 使用SystemAssignedIdentity
。 -
vault-uri
:做為秘密封存的密鑰保存庫 URI。
叢集更新範例
更新叢集會遵循與建立相同的模式。 如果您需要變更資源的 UAMI,您必須在 欄位和對應--identity-resource-id
記憶體--mi-user-assigned
帳戶、LAW 或 金鑰保存庫 中包含它。 如果有多個使用中的UAM,更新時必須在欄位中指定 --mi-user-assigned
完整的UAM清單。
針對 LAW 和 金鑰保存庫,從現有的數據建構轉換成使用 UAMI 的新建構,可以透過叢集更新來完成。
重要
使用 UAMI 或 UAMIS 更新叢集時,您必須在新增 SAMI 或更新時,在 --mi-user-assigned
身分識別清單中包含現有的 UAM。 如果在叢集上使用 SAMI,而且您要新增 UAMI,則必須包含在 --mi-system-assigned
更新命令中。 無法這麼做會導致移除個別的受控識別。
範例 1: 新增或更新叢集的命令輸出設定(記憶體帳戶)。
az networkcloud cluster update --name "clusterName" --resource-group "resourceGroupName" \
--command-output-settings identity-type="SystemAssignedIdentity" \
container-url="https://myaccount.blob.core.windows.net/mycontainer?restype=container"
範例 2: 新增或更新叢集的記錄分析輸出設定 (LAW)。
警告
變更LAW設定可能會導致將計量傳送至LAW的短暫中斷,因為可能需要重新安裝使用LAW的延伸模組。
az networkcloud cluster update --name "clusterName" --resource-group "resourceGroupName" \
--analytics-output-settings analytics-workspace-id="/subscriptions/subscriptionId/resourceGroups/resourceGroupName/providers/microsoft.operationalInsights/workspaces/logAnalyticsWorkspaceName" \
identity-type="SystemAssignedIdentity" \
範例 3:新增或更新叢集的秘密封存設定(金鑰保存庫)。
az networkcloud cluster update --name "clusterName" --resource-group "resourceGroupName" \
--secret-archive-settings identity-type="SystemAssignedIdentity" \
vault-uri="https://keyvaultname.vault.azure.net/"
範例 4: 此範例會將使用 SAMI 的所有三個資源合併成一個更新。
az networkcloud cluster update --name "clusterName" --resource-group "resourceGroupName" \
--command-output-settings identity-type="SystemAssignedIdentity" \
container-url="https://myaccount.blob.core.windows.net/mycontainer?restype=container"
--analytics-output-settings analytics-workspace-id="/subscriptions/subscriptionId/resourceGroups/resourceGroupName/providers/microsoft.operationalInsights/workspaces/logAnalyticsWorkspaceName" \
identity-type="SystemAssignedIdentity" \
--secret-archive-settings identity-type="SystemAssignedIdentity" \
vault-uri="https://keyvaultname.vault.azure.net/"
透過 API 更新叢集身分識別
叢集受控識別可透過 CLI 指派。 您可以透過 API 呼叫來取消指派身分識別。
請注意, <APIVersion>
是 API 版本 2024-07-01 或更新版本。
若要移除所有受控識別,請執行:
az rest --method PATCH --url /subscriptions/$SUB_ID/resourceGroups/$CLUSTER_RG/providers/Microsoft.NetworkCloud/clusters/$CLUSTER_NAME?api-version=<APIVersion> --body "{\"identity\":{\"type\":\"None\"}}"
如果已新增使用者指派和系統指派的受控識別,則可以藉由將 更新
type
為SystemAssigned
來移除使用者指派:az rest --method PATCH --url /subscriptions/$SUB_ID/resourceGroups/$CLUSTER_RG/providers/Microsoft.NetworkCloud/clusters/$CLUSTER_NAME?api-version=<APIVersion> --body @~/uai-body.json
要求本文 (uai-body.json) 範例:
{ "identity": { "type": "SystemAssigned" } }
如果已新增使用者指派和系統指派的受控識別,則可以藉由將 更新
type
為UserAssigned
來移除系統指派:az rest --method PATCH --url /subscriptions/$SUB_ID/resourceGroups/$CLUSTER_RG/providers/Microsoft.NetworkCloud/clusters/$CLUSTER_NAME?api-version=<APIVersion> --body @~/uai-body.json
要求本文 (uai-body.json) 範例:
{ "identity": { "type": "UserAssigned", "userAssignedIdentities": { "/subscriptions/$SUB_ID/resourceGroups/$UAI_RESOURCE_GROUP/providers/Microsoft.ManagedIdentity/userAssignedIdentities/$UAI_NAME": {} } } }
如果已新增多個使用者指派的受控識別,則可以執行下列其中一項來移除:
az rest --method PATCH --url /subscriptions/$SUB_ID/resourceGroups/$CLUSTER_RG/providers/Microsoft.NetworkCloud/clusters/$CLUSTER_NAME?api-version=<APIVersion> --body @~/uai-body.json
要求本文 (uai-body.json) 範例:
{ "identity": { "type": "UserAssigned", "userAssignedIdentities": { "/subscriptions/$SUB_ID/resourceGroups/$UAI_RESOURCE_GROUP/providers/Microsoft.ManagedIdentity/userAssignedIdentities/$UAI_NAME": null } } }