使用 PowerShell 授予对资源的托管标识访问权限

本文介绍如何使用 PowerShell 为托管身份授予对 Azure 资源的访问权限。 在本文中,我们以 Azure 虚拟机(Azure VM)的托管身份访问 Azure 存储帐户为例。 为 Azure 资源配置托管标识后,便可以授予该托管标识对其他资源的访问权限,这一点与安全主体一样。

先决条件

在 PowerShell 中使用 Azure RBAC 为托管标识分配对其他资源的访问权限

注释

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

通过安装最新版的 Azure PowerShell 在本地运行脚本,然后使用 Connect-AzAccount -Environment AzureChinaCloud 登录到 Azure。

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

  2. 授予 Azure 虚拟机 (VM) 访问存储帐户的权限。

    1. 使用 Get-AzVM 获取名为 myVM 的 VM 的服务主体,该 VM 是在启用托管标识时创建的。
    2. 使用 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>"
    

后续步骤