使用 Azure 托管标识连接到 Exchange Online PowerShell

使用 Exchange Online PowerShell V3 模块,可以使用用户分配的或系统分配的 Azure 托管标识连接到 Exchange Online PowerShell。 有关托管标识的详细信息,请参阅 什么是 Azure 资源的托管标识?

与使用 Exchange Online PowerShell 模块的其他连接方法不同,不能在本地计算机上的 Windows PowerShell 会话中运行连接命令。 相反,可以在与托管标识关联的 Azure 资源的上下文中进行连接, (例如 Azure 自动化帐户或 Azure 虚拟机) 。

本文的其余部分介绍如何使用托管标识进行连接,以及使用 Azure 中的托管标识创建和配置适当资源的要求。

注意

在 Exchange Online PowerShell 中,无法将本文中的过程与以下 Microsoft 365 组 cmdlet 配合使用:

可以使用 Microsoft Graph 替换这些 cmdlet 中的大多数功能。 有关详细信息,请参阅 在 Microsoft Graph 中使用组

V3 模块中的 REST API 连接需要 PowerShellGet 和 PackageManagement 模块。 有关详细信息,请参阅 PowerShellGet for 基于 REST 的连接在 Windows 中

使用系统分配的托管标识连接到 Exchange Online PowerShell

创建并配置系统分配的托管标识后,使用以下语法连接到 Exchange Online PowerShell:

Connect-ExchangeOnline -ManagedIdentity -Organization <YourDomain>.onmicrosoft.com

例如:

Connect-ExchangeOnline -ManagedIdentity -Organization contoso.onmicrosoft.com

本部分的其余部分介绍如何使用支持的 Azure 资源进行连接。 例如:

  • Azure 自动化帐户上的 PowerShell Runbook,其中包含系统分配的托管标识。
  • 具有系统分配的托管标识的 Azure VM。

连接资源后,Exchange Online PowerShell cmdlet 和参数将基于在步骤 5:将 Microsoft Entra 角色分配给托管标识中分配的 RBAC 角色可用

使用具有系统分配的托管标识的 Azure 自动化帐户连接到 Exchange Online PowerShell

在自动化帐户上创建 PowerShell Runbook。 有关说明,请参阅 在 Azure 自动化中管理 Runbook

PowerShell Runbook 中的第一个命令必须是 Connect-ExchangeOnline... 本部分开头所述的命令。 例如:

Connect-ExchangeOnline -ManagedIdentity -Organization contoso.onmicrosoft.com

之后,作为测试,可以从 Runbook 中简单的低影响命令开始,然后再转到更复杂的命令或脚本。 例如:

Get-AcceptedDomain | Format-Table Name

成功创建、保存和发布 PowerShell Runbook 后,请执行以下步骤以在将来运行它:

  1. 在 的 “自动化帐户 ”页上 https://portal.azure.com/#view/HubsExtension/BrowseResource/resourceType/Microsoft.Automation%2FAutomationAccounts,选择自动化帐户。
  2. 在打开的详细信息浮出控件中,开始在“搜索”图标中键入“Runbook”。搜索框,然后从结果中选择 Runbook
  3. 在打开 的 Runbook 浮 出控件上,选择 Runbook。
  4. 在 Runbook 的详细信息页上,选择“ 启动”。

使用具有系统分配的托管标识的 Azure VM 连接到 Exchange Online PowerShell

在 Azure VM 的 Windows PowerShell 窗口中,按照本部分开头所述使用 命令。 例如:

Connect-ExchangeOnline -ManagedIdentity -Organization contoso.onmicrosoft.com

使用用户分配的托管标识连接到 Exchange Online PowerShell

创建并配置用户分配的托管标识后,使用以下语法连接到 Exchange Online PowerShell:

Connect-ExchangeOnline -ManagedIdentity -Organization <YourDomain>.onmicrosoft.com -ManagedIdentityAccountId <UserAssignedManagedIdentityClientIdValue>

从步骤 3:将<用户分配的托管标识存储在变量中获取 UserAssignedManagedIdentityClientIdValue> 值。

本部分的其余部分介绍如何使用支持的 Azure 资源进行连接。 例如:

  • Azure 自动化帐户上的 PowerShell Runbook,其中包含用户分配的托管标识。
  • 具有用户分配的托管标识的 Azure VM。

连接资源后,Exchange Online PowerShell cmdlet 和参数将根据你在 步骤 6:将 Microsoft Entra 角色分配给托管标识中分配的 RBAC 角色提供。

使用具有用户分配的托管标识的 Azure 自动化帐户连接到 Exchange Online PowerShell

在自动化帐户上创建 PowerShell Runbook。 有关说明,请参阅 在 Azure 自动化中管理 Runbook

PowerShell Runbook 中的第一个命令必须是 Connect-ExchangeOnline... 本部分开头所述的命令。 例如:

Connect-ExchangeOnline -ManagedIdentity -Organization contoso.onmicrosoft.com -ManagedIdentityAccountId bf6dcc76-4331-4942-8d50-87ea41d6e8a1

可以从 步骤 3:将用户分配的托管标识存储在变量中获取 ManagedIdentityAccount 值。

之后,作为测试,可以从 Runbook 中简单的低影响命令开始,然后再转到更复杂的命令或脚本。 例如:

Get-AcceptedDomain | Format-Table Name

成功创建 PowerShell Runbook 后,执行以下步骤以在将来运行它:

  1. 在 的 “自动化帐户 ”页上 https://portal.azure.com/#view/HubsExtension/BrowseResource/resourceType/Microsoft.Automation%2FAutomationAccounts,选择自动化帐户。
  2. 在打开的详细信息浮出控件中,开始在“搜索”图标中键入“Runbook”。搜索框,然后从结果中选择 Runbook
  3. 在打开 的 Runbook 浮 出控件上,选择 Runbook。
  4. 在 Runbook 的详细信息页上,选择“ 启动”。

使用具有系统分配的托管标识的 Azure VM 连接到 Exchange Online PowerShell

在 Azure VM 的 Windows PowerShell 窗口中,按照本部分开头所述使用 命令。 例如:

$MI_ID = (Get-AzUserAssignedIdentity -Name "ContosoMI1" -ResourceGroupName "ContosoRG2").ClientId

Connect-ExchangeOnline -ManagedIdentity -Organization contoso.onmicrosoft.com -ManagedIdentityAccountId $MI_ID

创建和配置系统分配的托管标识

步骤如下:

  1. (可选) 使用系统分配的托管标识创建资源
  2. 将系统分配的托管标识存储在变量中
  3. 将 Exchange Online PowerShell 模块添加到托管标识
  4. 为托管标识授予 Exchange.ManageAsApp API 权限以调用 Exchange Online
  5. 将Microsoft Entra 角色分配给托管标识

完成这些步骤后,即可 使用系统分配的托管标识连接到 Exchange Online PowerShell

步骤 1:使用系统分配的托管标识创建资源

如果要使用已配置了系统分配的托管标识的现有资源,可以跳到 下一步。 支持以下资源类型:

  • Azure 自动化帐户
  • azure 虚拟机 (VM)

使用系统分配的托管标识创建 Azure 自动化帐户

按照 快速入门:使用 Azure 门户创建自动化帐户中的说明,创建为系统分配的托管标识配置的自动化帐户。

若要在 Azure PowerShell 中使用系统分配的托管标识创建自动化帐户,请执行以下步骤:

  1. 通过运行以下命令连接到 Azure Az PowerShell

    Connect-AzAccount
    
  2. 如有必要,请运行以下命令,创建用于自动化帐户的 Azure 资源组:

    New-AzResourceGroup -Name "<ResourceGroupName>" -Location "<Location>"
    
    • <ResourceGroupName> 是新资源组的唯一名称。
    • <Location> 是命令中的有效值: Get-AzLocation | Format-Table Name

    例如:

    New-AzResourceGroup -Name "ContosoRG" -Location "West US"
    

    有关完整说明,请参阅 创建资源组

  3. 使用以下语法创建具有系统分配的托管标识的自动化帐户:

    New-AzAutomationAccount -Name "<AutomationAccountName>" -ResourceGroupName "<ResourceGroupName>" -Location "<Location>" -AssignSystemIdentity
    
    • <AutomationAccountName> 是新自动化帐户的唯一名称。
    • <ResourceGroupName> 是要使用的现有资源组的名称。 有效值在命令的输出中可见: Get-AzResourceGroup
    • <Location> 是命令中的有效值: Get-AzLocation | Format-Table Name

    例如:

    New-AzAutomationAccount -Name "ContosoAzAuto1" -ResourceGroupName "ContosoRG" -Location "West US" -AssignSystemIdentity
    

    有关详细语法和参数信息,请参阅 New-AzAutomationAccount

使用系统分配的托管标识配置 Azure VM

有关说明,请参阅以下文章:

步骤 2:将系统分配的托管标识存储在变量中

使用以下语法将托管标识的 ID (GUID) 值存储在变量中,你将在 Azure Az PowerShell 中的后续步骤中使用该变量。

$MI_ID = (Get-AzADServicePrincipal -DisplayName "<ResourceName>").Id

其中 <,ResourceName> 是 Azure 自动化帐户或 Azure VM 的名称。 例如:

$MI_ID = (Get-AzADServicePrincipal -DisplayName "ContosoAzAuto1").Id

若要验证变量是否已成功捕获,请运行 命令 $MI_ID。 输出应为 GUID 值, (例如 9f164909-3007-466e-a1fe-28d20b16e2c2) 。

有关详细语法和参数信息,请参阅 Get-AzADServicePrincipal

步骤 3:将 Exchange Online PowerShell 模块添加到托管标识

使用系统分配的托管标识将 Exchange Online PowerShell 模块添加到 Azure 自动化帐户

提示

如果 Azure 门户中的以下过程不起作用,请尝试 Azure PowerShell 中的 New-AzAutomationModule 命令,该命令在 Azure 门户过程之后进行介绍。

  1. 在 的 “自动化帐户 ”页上 https://portal.azure.com/#view/HubsExtension/BrowseResource/resourceType/Microsoft.Automation%2FAutomationAccounts,选择自动化帐户。

  2. 在打开的详细信息浮出控件中,开始在“搜索”图标中键入“模块”。搜索框,然后从结果中选择“模块”。

  3. 在打开的 “模块 ”浮出控件上,选择“ 添加模块”图标。添加模块

  4. 在打开 的“添加模块 ”页上,配置以下设置:

    • 上传模块文件:选择“ 从库中浏览”。
    • PowerShell 模块文件:选择 “单击此处以从库中浏览”:
      1. 在打开的“浏览库”页中,开始在“搜索”图标中键入“ExchangeOnlineManagement”。搜索框,按 Enter,然后从结果中选择 ExchangeOnlineManagement
      2. 在打开的详细信息页上,选择“ 选择” 以返回到 “添加模块 ”页。
    • 运行时版本:选择 5.17.1 (预览版) 。 若要添加这两个版本,请重复本部分中的步骤,为模块添加并选择其他运行时版本。

    完成后,选择“ 导入”。

    在 Azure 门户中将模块添加到自动化帐户的屏幕截图。

  5. 返回“模块”浮出控件,开始在“搜索”图标中键入“ExchangeOnlineManagement”。用于查看“状态”值的搜索框。 模块导入完成后,值为 Available

若要将模块添加到 Azure PowerShell 中的自动化帐户,请使用以下语法:

New-AzAutomationModule -ResourceGroupName "<ResourceGroupName>" -AutomationAccountName "<AutomationAccountName>" -Name ExchangeOnlineManagement -ContentLinkUri https://www.powershellgallery.com/packages/ExchangeOnlineManagement/<LatestModuleVersion>
  • <ResourceGroupName> 是已分配给自动化帐户的资源组的名称。
  • <AutomationAccountName> 是自动化帐户的名称。
  • <LatestModuleVersion> 是 ExchangeOnlineManagement 模块的当前版本。 若要查看最新的正式发布版 (正式发布;非预览) 版本的模块,请在 Windows PowerShell 中运行以下命令: Find-Module ExchangeOnlineManagement。 若要查看最新的预览版,请运行以下命令: Find-Module ExchangeOnlineManagement -AllowPrerelease
  • 目前,PowerShell 过程无法让你选择运行时版本, (它是 5.1) 。

例如:

New-AzAutomationModule -ResourceGroupName "ContosoRG" -AutomationAccountName "ContosoAzAuto1" -Name ExchangeOnlineManagement -ContentLinkUri https://www.powershellgallery.com/packages/ExchangeOnlineManagement/3.1.0

若要验证模块是否已成功导入,请运行以下命令:

Get-AzAutomationModule -ResourceGroupName ContosoRG -AutomationAccountName ContosoAzAuto1 -Name ExchangeOnlineManagement

在导入过程中,ProvisioningState 属性将具有值 Creating。 模块导入完成后,值将更改为 Succeeded。

有关详细语法和参数信息,请参阅 New-AzAutomationModule

使用系统分配的托管标识将 Exchange Online PowerShell 模块添加到 Azure VM

在 Azure VM 中安装 Exchange Online PowerShell 模块。 有关说明,请参阅 安装和维护 Exchange Online PowerShell 模块

步骤 4:为托管标识授予 Exchange.ManageAsApp API 权限以调用 Exchange Online

此步骤中的过程需要 Microsoft Graph PowerShell SDK。 有关安装说明,请参阅 安装 Microsoft Graph PowerShell SDK

  1. 运行以下命令,使用所需权限连接到 Microsoft Graph PowerShell:

    Connect-MgGraph -Scopes AppRoleAssignment.ReadWrite.All,Application.Read.All
    

    如果打开“ 请求的权限 ”对话框,请选择“ 代表组织同意”,然后单击“ 接受”。

  2. 运行以下命令,验证 Office 365 Exchange Online 资源是否在 Entra ID Microsoft中可用:

    Get-MgServicePrincipal -Filter "AppId eq '00000002-0000-0ff1-ce00-000000000000'"
    

    如果命令未返回任何结果,则下一步将不起作用。 在继续操作之前,请参阅本部分末尾的子部分以解决问题。

  3. 运行以下命令,授予托管标识调用 Exchange Online 的 Exchange.ManageAsApp API 权限:

    $AppRoleID = "dc50a0fb-09a3-484d-be87-e023b12c6440"
    
    $ResourceID = (Get-MgServicePrincipal -Filter "AppId eq '00000002-0000-0ff1-ce00-000000000000'").Id
    
    New-MgServicePrincipalAppRoleAssignment -ServicePrincipalId $MI_ID -PrincipalId $MI_ID -AppRoleId $AppRoleID -ResourceId $ResourceID
    
    • $MI_ID步骤 2 中存储在变量中的托管标识的 ID (GUID) 值。
    • $AppRoleID 是每个组织中相同 Exchange.ManageAsApp API 权限的 ID (GUID) 值。
    • $ResourceID 是 Office 365 Exchange Online 资源的 ID (GUID) 值,Microsoft Entra ID。 AppId 值在每个组织中都是相同的,但 Id 值在每个组织中都是不同的。

有关详细的语法和参数信息,请参阅以下文章:

如果 Office 365 Exchange Online 资源在 Microsoft Entra ID 中不可用,该怎么办

如果以下命令未返回任何结果:

Get-MgServicePrincipal -Filter "AppId eq '00000002-0000-0ff1-ce00-000000000000'"

执行以下步骤:

  1. 按照步骤 1:在 Entra ID 中注册应用程序中所述,Microsoft Entra ID Microsoft 中注册应用程序
  2. 使用“修改应用程序清单”方法向应用程序分配 Office 365 Exchange Online > Exchange.ManageAsApp API 权限,如 步骤 2:向应用程序分配 API 权限中所述。

执行这些步骤后,请再次运行 Get-MgServicePrincipal 命令,以确认 Office 365 Exchange Online 资源在 entra ID Microsoft中可用。

有关详细信息,请运行以下命令,验证 Office 365 Exchange Online 资源中是否提供 Exchange.ManageAsApp api 权限 (dc50a0fb-09a3-484d-be87-e023b12c6440) :

Get-MgServicePrincipal -Filter "AppId eq '00000002-0000-0ff1-ce00-000000000000'" | Select-Object -ExpandProperty AppRoles | Format-Table Value,Id

Office 365 Exchange Online 资源可用后,请返回到本节中的步骤 4.3。

步骤 5:将 Microsoft Entra 角色分配给托管标识

以下列表中介绍了支持的 Microsoft Entra 角色:

¹ 全局管理员和 Exchange 管理员角色为 Exchange Online PowerShell 中的任何任务提供所需的权限。 例如:

  • 收件人管理。
  • 安全和保护功能。 例如,反垃圾邮件、反恶意软件、反钓鱼和关联的报表。

安全管理员角色没有适用于这些相同任务的所需权限。

² Microsoft建议使用权限最少的角色。 使用权限较低的帐户有助于提高组织的安全性。 全局管理员是一种高特权角色,在无法使用现有角色时,应仅限于紧急情况。

有关在 Microsoft Entra ID 中分配角色的一般说明,请参阅 向用户分配 Microsoft Entra 角色

  1. 在 Microsoft Entra 管理中心https://portal.azure.com/的 中,开始在页面顶部的“搜索”框中键入角色和管理员,然后从“服务”部分的结果中选择“Microsoft Entra 角色和管理员”。

    显示 Azure 门户主页上的 搜索结果中Microsoft Entra 角色和管理员的屏幕截图。

    或者,若要直接转到 “Microsoft Entra 角色和管理员 ”页,请使用 https://portal.azure.com/#view/Microsoft_AAD_IAM/AllRolesBlade

  2. “角色和管理员 ”页上,通过 单击角色的名称 (而不是结果中) 复选框来查找并选择其中一个受支持的角色。 例如,查找并选择 Exchange 管理员 角色。

    通过单击角色名称来查找并选择受支持的 Exchange Online PowerShell 角色。

  3. 在打开 的“作业 ”页上,选择“ 添加作业”。

    在 Exchange Online PowerShell 的角色分配页上选择“添加分配”。

  4. 在打开 的“添加分配” 浮出控件中,查找并选择在 步骤 1 中创建或标识的托管标识。

    完成后,选择“添加”。

  5. 返回“ 分配 ”页,验证角色是否已分配给托管标识。

若要在 Microsoft Graph PowerShell 中向托管标识分配角色,请执行以下步骤:

  1. 运行以下命令,使用所需权限连接到 Microsoft Graph PowerShell:

    Connect-MgGraph -Scopes RoleManagement.ReadWrite.Directory
    

    如果打开“ 请求的权限 ”对话框,请选择“ 代表组织同意”,然后单击“ 接受”。

  2. 使用以下语法将所需的 Microsoft Entra 角色分配给托管标识:

    $RoleID = (Get-MgRoleManagementDirectoryRoleDefinition -Filter "DisplayName eq '<Role Name>'").Id
    
    New-MgRoleManagementDirectoryRoleAssignment -PrincipalId $MI_ID -RoleDefinitionId $RoleID -DirectoryScopeId "/"
    
    • <角色名称> 是本节前面列出的Microsoft Entra 角色的名称。
    • $MI_ID步骤 2 中存储在变量中的托管标识的 ID (GUID) 值。

    例如:

    $RoleID = (Get-MgRoleManagementDirectoryRoleDefinition -Filter "DisplayName eq 'Exchange Administrator'").Id
    
    New-MgRoleManagementDirectoryRoleAssignment -PrincipalId $MI_ID -RoleDefinitionId $RoleID -DirectoryScopeId "/"
    

有关详细的语法和参数信息,请参阅以下文章:

创建和配置用户分配的托管标识

步骤如下:

  1. (可选) 创建用户分配的托管标识
  2. (可选) 使用用户分配的托管标识创建资源
  3. 将用户分配的托管标识存储在变量中
  4. 将 Exchange Online PowerShell 模块添加到托管标识
  5. 为托管标识授予 Exchange.ManageAsApp API 权限以调用 Exchange Online
  6. 将Microsoft Entra 角色分配给托管标识

完成这些步骤后,即可 使用用户分配的托管标识连接到 Exchange Online PowerShell

步骤 1:创建用户分配的托管标识

如果已有要使用的用户分配托管标识,则可以跳到 下一步 ,使用用户分配的托管标识创建资源。

否则,请按照创建用户分配的托管标识中的说明在 Azure 门户中 创建用户分配的托管标识

若要在 Azure PowerShell 中创建用户分配的托管标识,请执行以下步骤:

  1. 通过运行以下命令连接到 Azure Az PowerShell

    Connect-AzAccount
    
  2. 如有必要,请运行以下命令,创建用于用户分配的托管标识的 Azure 资源组:

    New-AzResourceGroup -Name "<ResourceGroupName>" -Location "<Location>"
    
    • <ResourceGroupName> 是新资源组的唯一名称。
    • <Location> 是命令中的有效值: Get-AzLocation | Format-Table Name

    例如:

    New-AzResourceGroup -Name "ContosoRG2" -Location "West US"
    

    有关完整说明,请参阅 创建资源组

  3. 使用以下语法创建用户分配的托管标识:

    New-AzUserAssignedIdentity -Name "<UserAssignedManagedIdentityName>" -ResourceGroupName "<ResourceGroupName>" -Location "<Location>"
    
    • <UserAssignedManagedIdentityName> 是用户分配的托管标识的唯一名称。
    • <ResourceGroupName> 是要使用的现有资源组的名称。 有效值在命令的输出中可见: Get-AzResourceGroup
    • <Location> 是命令中的有效值: Get-AzLocation | Format-Table Name

    例如:

    New-AzUserAssignedIdentity -Name "ContosoMI1" -ResourceGroupName "ContosoRG2" -Location "West US"
    

    有关详细语法和参数信息,请参阅 New-AzUserAssignedIdentity

步骤 2:使用用户分配的托管标识创建资源

如果要使用已配置了用户分配的托管标识的现有资源,可以跳到 下一步。 支持以下资源类型:

  • Azure 自动化帐户
  • azure 虚拟机 (VM)

使用用户分配的托管标识创建 Azure 自动化帐户

按照 快速入门:使用 Azure 门户创建自动化帐户中的说明,创建为用户分配的托管标识配置的自动化帐户。

若要在 Azure PowerShell 中使用用户分配的托管标识创建自动化帐户,请执行以下步骤:

  1. 通过运行以下命令连接到 Azure Az PowerShell

    Connect-AzAccount
    
  2. 使用以下语法创建具有用户分配的托管标识的自动化帐户:

    $UAMI = (Get-AzUserAssignedIdentity -Name "<UserAssignedMI>" -ResourceGroupName "<MIResourceGroupName>").Id
    
    New-AzAutomationAccount -Name "<AutomationAccountName>" -ResourceGroupName "<ResourceGroupName>" -Location "<Location>" -AssignUserIdentity $UAMI
    
    • <UserAssignedMI> 是要使用的用户分配的托管标识的名称。
    • <MIResourceGroupName> 是分配给用户分配的托管标识的资源组的名称。 有效值在命令的输出中可见: Get-AzResourceGroup
    • <AutomationAccountName> 是新自动化帐户的唯一名称。
    • <ResourceGroupName> 是要使用的资源组的名称,其值可能与 <MIResourceGroupName> 相同。
    • <Location> 是命令中的有效值: Get-AzLocation | Format-Table Name

    例如:

    $UAMI = (Get-AzUserAssignedIdentity -Name "ContosoMI1" -ResourceGroupName "ContosoRG2").Id
    
    New-AzAutomationAccount -Name "ContosoAzAuto2" -ResourceGroupName "ContosoRG2" -Location "West US" -AssignUserIdentity $UAMI
    

    有关详细语法和参数信息,请参阅 New-AzAutomationAccount

使用用户分配的托管标识配置 Azure VM

有关说明,请参阅以下文章:

步骤 3:将用户分配的托管标识存储在变量中

Azure Az PowerShell 中使用以下语法将用户分配的托管标识的 ClientId 值存储在变量中,你将在后续步骤中使用该值:

$MI_ID = (Get-AzUserAssignedIdentity -Name "<UserAssignedMI>" -ResourceGroupName "<MIResourceGroupName>").ClientId
  • <UserAssignedMI> 是用户分配的托管标识的名称。
  • <MIResourceGroupName> 是与用户分配的托管标识关联的资源组的名称。

例如:

$MI_ID = (Get-AzUserAssignedIdentity -Name "ContosoMI1" -ResourceGroupName "ContosoRG2").ClientId

若要验证变量是否已成功捕获,请运行 命令 $MI_ID。 输出应为 GUID 值 (例如,bf6dcc76-4331-4942-8d50-87ea41d6e8a1) 。

有关详细语法和参数信息,请参阅 Get-AzUserAssignedIdentity

步骤 4:将 Exchange Online PowerShell 模块添加到托管标识

用户分配的托管标识的步骤与 系统分配的托管标识步骤 3 中的步骤相同。

注意

请确保对资源组名称和自动化帐户名称使用正确的值!

步骤 5:授予托管标识的 Exchange.ManageAsApp API 权限以调用 Exchange Online

用户分配的托管标识的步骤与 系统分配的托管标识步骤 4 中的步骤相同。

尽管用户分配的托管标识值与系统分配的托管标识值的获取方式不同,但我们在命令 () $MI_ID 使用相同的变量名称,因此该命令适用于这两种类型的托管标识。

步骤 6:将Microsoft Entra 角色分配给托管标识

用户分配的托管标识的步骤与 系统分配的托管标识步骤 5 中的步骤基本相同。

在 Azure 门户中,请务必选择 用户分配的托管标识 作为托管标识,以便将Microsoft Entra 角色分配给 (而不是自动化帐户本身) 。

PowerShell 命令适用于用户分配的托管标识和系统分配的托管标识。 尽管用户分配的托管标识值与系统分配的获取方式不同,但我们在命令 ($MI_ID) 使用相同的变量名称。