你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
为了提高运营商关系平台的安全性,运营商关系群集现在支持托管标识。 托管标识为应用程序提供访问其他 Azure 资源的安全方式,并且无需用户管理凭据。 此外,运营商关系现在具有用户提供的资源模型。 除了提高安全性之外,此转变还提供跨平台的一致用户体验。
托管标识用于运营商关系群集上提供的以下用户资源:
- 用于裸机 run-* 命令输出的存储帐户。
- 用于凭据轮换的密钥保管库。
- Log Analytics 工作区(LAW)用于捕获某些指标。
若要了解 Azure 中托管标识的详细信息,请参阅 Azure 资源托管标识。 运营商关系群集支持多个用户分配的托管标识 (UAMI) 或一个系统分配的托管标识 (SAMI)。
虽然用户可以选择使用任一托管标识类型,但建议使用 UAMIS。 UAMIS 允许用户在创建或更新运营商关系群集之前预配置对 UAMI 的适当访问权限。 同一个 UAMI 可用于所有资源,或者如果用户想要精细访问,则可以为每个资源定义 UAMI。
添加后,此时只能通过 API 调用删除该标识。 有关使用 API 更新群集托管标识的信息,请参阅更新群集标识。 本部分包括有关删除托管标识的信息。
先决条件
- 安装 Azure CLI。
- 安装最新版本的相应 Azure CLI 扩展。
注意
Log Analytics 工作区 (LAW) 和密钥保管库的托管标识功能与 2024-10-01-preview API 一起提供,并且适用于 2025-02-01 GA API。
具有用户分配的托管标识的运营商关系群集 (UAMI)
最佳做法是首先定义所有用户提供的资源(存储帐户、LAW 和 Key Vault)、与这些资源关联的托管标识,然后为托管标识分配对资源的适当访问权限。 如果在创建群集之前未完成这些步骤,则需要在群集部署之前完成这些步骤。
未按新群集的部署时间配置这些资源,会造成以下影响:
- 存储帐户:run-* 命令输出无法写入存储帐户。
- LAW: 群集部署失败,因为在部署期间需要 LAW(Log Analytics Workplace)来安装软件扩展。
- Key Vault:凭据轮换失败,因为存在检查,以确保在执行凭据轮换之前对用户提供的 Key Vault 的写入访问权限。
可以随时更新群集。 更改 LAW 设置可能会导致将指标发送到 LAW 的短暂中断,因为可能需要重新安装使用 LAW 的扩展。
应遵循以下步骤,将 UAMI 与运营商关系和关联的资源一起使用。
创建一个或多个 UAMI
- 为有问题的资源创建一个或多个 UAMI。 有关创建托管标识的详细信息,请参阅管理用户分配的托管标识。
创建资源并将 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 工作区的访问权限。
Key Vault 设置
- 创建 Key Vault,或标识要使用的现有 Key Vault。 请参阅创建 Key Vault。
- 为基于角色的访问控制 (RBAC) 启用 Key Vault。 请参阅对 Key Vault 启用 Azure RBAC 权限。
- 将
Operator Nexus Key Vault Writer Service Role (Preview)
角色分配给 Key Vault 的 UAMI。 请参阅分配角色。- 运营商关系 Key Vault 编写器服务角色的角色定义 ID 为
44f0a1a8-6fea-4b35-980a-8ff50c487c97
。 如果使用 Azure 命令行执行角色分配,则此格式为必需项。
- 运营商关系 Key Vault 编写器服务角色的角色定义 ID 为
- 使用 UAMI 访问 Key Vault 时,必须为运营商关系平台预配对该标识的访问权限。 具体而言,需要将
Microsoft.ManagedIdentity/userAssignedIdentities/assign/action
权限添加到AFOI-NC-MGMT-PME-PROD
Microsoft Entra ID 的用户分配的标识。 这是该平台的一个已知限制,将在未来解决。- 打开 Azure 门户并找到相关的用户分配标识。
- 选择“访问控制 (IAM)”下的“添加角色分配”。
- 选择“角色”:托管标识操作员。 (查看托管标识操作员角色提供的权限)。
- 将访问权限分配给:用户、组或服务主体。
- 选择“成员”:AFOI-NC-MGMT-PME-PROD 应用程序。
- 查看并分配。
- 若要将 Key Vault 的访问权限限制为已选择的一组 IP 或虚拟网络,请参阅配置 Azure Key Vault 防火墙和虚拟网络。
- 需要访问 Key Vault 的所有用户的 IP 需要添加到 Key Vault 的
Virtual Networks
和/或Firewall
列表中。 - 确保已选择
Allow trusted Microsoft services to bypass this firewall.
下的Exceptions
。
- 需要访问 Key Vault 的所有用户的 IP 需要添加到 Key Vault 的
创建或更新运营商关系群集以使用用户分配的托管标识和用户提供的资源
在群集上定义 UAMI
使用用户分配的托管标识创建或更新群集时,请使用 --mi-user-assigned
参数以及 UAMI 的资源 ID。 如果想要指定多个 UAMI,请列出 UAMIs 的资源 ID,其中需包含它们之间的空格。 此列表中必须提供用于 Key Vault、LAW 或存储帐户的每个 UAMI。
创建群集时,可以在 --mi-user-assigned
中指定 UAMI,并定义资源设置。 更新群集以更改 UAMI 时,应首先更新群集以设置 --mi-user-assigned
值,然后更新群集以修改资源设置以使用它。
存储帐户设置
数据 --command-output-settings
构造用于定义写入运行命令输出的存储帐户。 它由以下字段组成:
container-url
:要由指定标识使用的存储帐户容器的 URL。identity-resource-id
:要使用的用户分配的托管标识资源 ID。 与系统分配的标识类型互斥。identity-type
:正在选择的托管标识类型。 使用UserAssignedIdentity
。
Log Analytics 工作区设置
--analytics-output-settings
数据构造用于定义发送指标的 LAW。 它由以下字段组成:
analytics-workspace-id
:要由指定标识使用的分析工作区的资源 ID。identity-resource-id
:要使用的用户分配的托管标识资源 ID。 与系统分配的标识类型互斥identity-type
:正在选择的托管标识类型。 使用UserAssignedIdentity
。
Key Vault 设置
--secret-archive-settings
数据构造用于定义写入轮换凭据的 Key Vault。 它由以下字段组成:
identity-resource-id
:要使用的用户分配的托管标识资源 ID。identity-type
:正在选择的托管标识类型。 使用UserAssignedIdentity
。vault-uri
:用作机密存档的 Key Vault 的 URI。
群集创建命令示例
示例 1:此示例是一个缩写的群集创建命令,该命令跨存储帐户、LAW 和 Key Vault 使用一个 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" \
--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:此示例是使用两个 UAMI 的缩写群集创建命令。 存储帐户和 LAW 使用第一个 UAMI,Key Vault 使用第二个 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" \
--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
字段中,然后更新存储帐户、LAW 或 Key Vault 的对应项 --identity-resource-id
。
如果使用多个 UIS,则必须在更新时在 --mi-user-assigned
字段中指定 UAMIS 的完整列表。 如果在群集上使用 SAMI 并且要添加 UAMI,则必须将 --mi-system-assigned
包含在更新命令中。 未能包含现有托管标识会导致系统删除这些标识。
对于 LAW 和 Key Vault,可以通过群集更新从现有数据构造转换到使用托管标识的新构造。
示例 1:将 UAMI 添加到群集。 然后将 UAMI 分配到机密存档设置 (Key Vault)。 如果此群集定义了 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
分配给命令输出设置(存储帐户)。
群集更新以添加 UAMI mySecondUAMI
,同时保留 myFirstUAMI
。
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"
示例 3:更新已具有 SAMI 的群集,并添加 UAMI。 SAMI 将保留。 然后将 UAMI 分配到 Log Analytics 输出设置 (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"
查看用户分配的托管标识的主体 ID
可以通过在标识资源上选择“JSON 视图”来找到标识资源 ID;ID 位于显示的面板顶部。 可以在容器资源的“设置 - > 属性”选项卡上找到容器 URL。
CLI 还可用于查看群集中的标识和关联的主体 ID 数据。
示例:
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"
}
}
},
具有系统分配的托管标识的运营商关系群集
使用系统分配的托管标识 (SAMI) 遵循与 UAMI 不同的模式。 虽然可以在创建群集之前创建用户提供的资源(存储帐户、LAW 和 Key Vault),但 SAMI 在创建群集之前不存在。 用户需要查询群集以获取 SAMI,为每个资源分配正确的 SAMI 权限,然后使用指定系统分配标识的资源设置更新群集。
对于新的群集,需要在群集部署之前完成这些步骤。 未按新群集的部署时间配置这些资源,会造成以下影响:
- 存储帐户:run-* 命令输出无法写入存储帐户。
- LAW:群集部署失败,因为部署期间需要 LAW 才能安装软件扩展。
- Key Vault:凭据轮换失败,因为存在检查,以确保在执行凭据轮换之前对用户提供的 Key Vault 的写入访问权限。
可以随时更新群集。 更改 LAW 设置可能会导致将指标发送到 LAW 的短暂中断,因为可能需要重新安装使用 LAW 的扩展。
应遵循以下步骤,将 UAMI 与运营商关系和关联的资源一起使用。
- 使用 SAMI 创建或更新群集
- 查询群集以获取 SAMI
- 创建资源并将 SAMI 分配给资源
- 使用用户提供的资源信息更新群集
- 部署群集(如果为新建群集)
使用 SAMI 创建或更新群集
使用系统分配的托管标识创建或更新群集时,请使用参数 --mi-system-assigned
。 群集创建或更新过程会生成 SAMI 信息。
示例 1:此示例是指定 SAMI 的缩写群集创建命令。
az networkcloud cluster create --name "clusterName" -g "resourceGroupName" \
...
--mi-system-assigned
示例 2:此示例更新群集以添加 SAMI。 系统会删除群集上定义的任何 UAMI。
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 视图”来找到标识资源 ID。
CLI 还可用于查看群集中的标识和关联的主体 ID 数据。
请注意授予资源访问权限时使用的标识 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
角色分配给 Log Analytics 工作区的 SAMI。 请参阅管理对 Log Analytics 工作区的访问权限。
Key Vault 设置
- 创建 Key Vault,或标识要使用的现有 Key Vault。 请参阅创建 Key Vault。
- 为基于角色的访问控制 (RBAC) 启用 Key Vault。 请参阅对 Key Vault 启用 Azure RBAC 权限。
- 将
Operator Nexus Key Vault Writer Service Role (Preview)
角色分配给 Key Vault 的 SAMI。 请参阅分配角色。- 运营商关系 Key Vault 编写器服务角色的角色定义 ID 为
44f0a1a8-6fea-4b35-980a-8ff50c487c97
。 如果使用 Azure 命令行执行角色分配,则此格式为必需项。
- 运营商关系 Key Vault 编写器服务角色的角色定义 ID 为
- 若要将 Key Vault 的访问权限限制为已选择的一组 IP 或虚拟网络,请参阅配置 Azure Key Vault 防火墙和虚拟网络。
- 需要访问 Key Vault 的所有用户的 IP 需要添加到 Key Vault 的
Virtual Networks
和/或Firewall
列表中。 - 确保已选择
Allow trusted Microsoft services to bypass this firewall.
下的Exceptions
。
- 需要访问 Key Vault 的所有用户的 IP 需要添加到 Key Vault 的
使用用户提供的资源信息更新群集
存储帐户设置
数据 --command-output-settings
构造用于定义写入运行命令输出的存储帐户。 它由以下字段组成:
container-url
:要由指定标识使用的存储帐户容器的 URL。identity-resource-id
:使用 SAMI 时不需要identity-type
:正在选择的托管标识类型。 使用SystemAssignedIdentity
。
Log Analytics 工作区设置
--analytics-output-settings
数据构造用于定义发送指标的 LAW。 它由以下字段组成:
analytics-workspace-id
:要由指定标识使用的分析工作区的资源 ID。identity-resource-id
:使用 SAMI 时不需要identity-type
:正在选择的托管标识类型。 使用SystemAssignedIdentity
。
Key Vault 设置
--secret-archive-settings
数据构造用于定义写入轮换凭据的 Key Vault。 它由以下字段组成:
identity-resource-id
:使用 SAMI 时不需要identity-type
:正在选择的托管标识类型。 使用SystemAssignedIdentity
。vault-uri
:用作机密存档的 Key Vault 的 URI。
群集更新示例
更新群集遵循与创建相同的模式。 如果需要更改资源的 UAMI,则必须在 --mi-user-assigned
字段中以及存储帐户、LAW 或 Key Vault 对应的 --identity-resource-id
中包括该资源。 如果使用多个 UIS,则必须在更新时在 --mi-user-assigned
字段中指定 UAMIS 的完整列表。
对于 LAW 和 Key Vault,可以通过群集更新从现有数据构造转换到使用 UAMI 的新构造。
重要
如果使用 UAMI 或 UMI 更新群集,在添加 SAMI 或更新时,必须在 --mi-user-assigned
标识列表中包括现有 UAMI 或更新。 如果在群集上使用 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"
示例 2:添加或更新群集的 Log Analytics 输出设置 (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:添加或更新群集的机密存档设置 (Key Vault)。
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"
--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 } } }
字段弃用和替换
本部分是有关已弃用的资源字段及其替换项的参考。 除了用于已弃用的密钥保管库方法的群集管理器托管标识之外,所有字段均可在群集资源上找到。 此列表还假定在与资源的托管标识相对应的群集上定义了关联的托管标识。
identity-resource-id
仅当使用 UAMI 时才必需。 如果使用 SAMI 作为资源,则不应指定。
存储帐户
已弃用的字段: N/A
替换字段:
command-output-settings:
container-url
identity-type
identity-resource-id
笔记: 弃用的字段为 N/A,因为群集管理器存储帐户是今天自动创建的,不需要用户输入。
Key Vault(密钥保管库)
已弃用的字段:
cluster-secret-archive:
use-key-vault
key-vault-id
群集管理器托管标识
替换字段:
secret-archive-settings:
vault-uri
identity-type
identity-resource-id
注意:secret-archive-settings
中的 vault-uri
是指定的密钥保管库的 URI,而不是为 key-vault-id
指定的 ARM 资源 ID。 为群集管理器指定的托管标识可以在群集上使用。
Log Analytics 工作区
已弃用的字段:analytics-workspace-id
替换字段:
analytics-output-settings:
analytics-workspace-id
identity-type
identity-resource-id
注意: 输入格式(LAW ARM 资源 ID)在已弃用 analytics-workspace-id
的字段和 analytics-workspace-id
内部 analytics-output-settings
字段之间是相同的。