使用 PowerShell 向托管标识分配对资源的访问权限
Azure 资源的托管标识是 Microsoft Entra ID 的一项功能。 支持 Azure 资源的托管标识的每个 Azure 服务都受其自己的时间线限制。 在开始之前,请务必查看资源的托管标识的可用性状态以及已知问题。
为 Azure 资源配置托管标识后,便可以授予该托管标识对其他资源的访问权限,这一点与安全主体一样。 本示例展示了如何使用 PowerShell 为 Azure 虚拟机的托管标识提供对 Azure 存储帐户的访问权限。
注意
建议使用 Azure Az PowerShell 模块与 Azure 交互。 请参阅安装 Azure PowerShell 以开始使用。 若要了解如何迁移到 Az PowerShell 模块,请参阅 将 Azure PowerShell 从 AzureRM 迁移到 Az。
先决条件
- 如果不熟悉 Azure 资源的托管标识,请查阅概述部分。 请务必了解系统分配的托管标识与用户分配的托管标识之间的差异。
- 如果还没有 Azure 帐户,请先注册试用帐户,然后再继续。
- 若要运行示例脚本,可以安装最新版本的 Azure PowerShell,然后使用
Connect-AzAccount
登录到 Azure。
使用 Azure RBAC 授予托管标识对另一资源的访问权限
在 Azure 资源上启用托管标识,如 Azure VM。
此示例要授予 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>"
后续步骤
- Azure 资源托管标识概述
- 若要启用 Azure VM 上的托管标识,请参阅使用 PowerShell 在 VM 上配置 Azure 资源的托管标识。