使用 PowerShell 向托管标识分配对资源的访问权限

Azure 资源的托管标识是 Microsoft Entra ID 的一项功能。 支持 Azure 资源的托管标识的每个 Azure 服务都受其自己的时间线限制。 在开始之前,请务必查看资源的托管标识的可用性状态以及已知问题

为 Azure 资源配置托管标识后,便可以授予该托管标识对其他资源的访问权限,这一点与安全主体一样。 本示例展示了如何使用 PowerShell 为 Azure 虚拟机的托管标识提供对 Azure 存储帐户的访问权限。

注意

建议使用 Azure Az PowerShell 模块与 Azure 交互。 请参阅安装 Azure PowerShell 以开始使用。 若要了解如何迁移到 Az PowerShell 模块,请参阅 将 Azure PowerShell 从 AzureRM 迁移到 Az

先决条件

使用 Azure RBAC 授予托管标识对另一资源的访问权限

  1. 在 Azure 资源上启用托管标识,如 Azure VM

  2. 此示例要授予 Azure VM 对存储帐户的访问权限。 首先,我们使用 Get-AzVM 获取名为 myVM 的 VM 的服务主体,该 VM 是在启用托管标识时创建的。 然后,使用 New-AzRoleAssignment 向 VM 提供对名为 myStorageAcct 的存储帐户的“读者”访问权限:

    $spID = (Get-AzVM -ResourceGroupName myRG -Name myVM).identity.principalid
    New-AzRoleAssignment -ObjectId $spID -RoleDefinitionName "Reader" -Scope "/subscriptions/<mySubscriptionID>/resourceGroups/<myResourceGroup>/providers/Microsoft.Storage/storageAccounts/<myStorageAcct>"
    

后续步骤