使用 Azure PowerShell 分配 Key Vault 访问策略
Key Vault 访问策略确定给定的安全主体(即用户、应用程序或用户组)是否可对 Key Vault 机密、密钥和证书执行不同的操作。 可以使用 Azure 门户、Azure CLI 或 Azure PowerShell(本文)来分配访问策略。
Key Vault 最多支持 1024 个访问策略条目,每个条目可向特定安全主体授予一组不同的权限。 由于此限制,建议你尽可能将访问策略分配给用户组,而不是单个用户。 使用组来管理组织中多个人员的权限要轻松得多。 有关详细信息,请参阅使用 Azure Active Directory 组管理应用和资源访问
有关 Key Vault 访问控制的完整详细信息,请参阅 Azure Key Vault 安全性功能:标识和访问管理。
若要详细了解如何使用 Azure PowerShell 在 Microsoft Entra ID 中创建组,请参阅 New-AzureADGroup 和 Add-AzADGroupMember。
配置 PowerShell 并登录
若要在本地运行命令,请安装 Azure PowerShell(如果尚未这样做)。
仅限本地 PowerShell:
登录 Azure:
Connect-AzAccount -Environment AzureChinaCloud
获取对象 ID
确定要为其分配访问策略的应用程序、组或用户的对象 ID:
应用程序和其他服务主体:使用带有
-SearchString
参数的 Get-AzADServicePrincipal cmdlet 根据所需服务主体的名称筛选结果:Get-AzADServicePrincipal -SearchString <search-string>
组:使用带有
-SearchString
参数的 Get-AzADGroup cmdlet 根据所需组的名称筛选结果:Get-AzADGroup -SearchString <search-string>
在输出中,对象 ID 将作为
Id
列出。用户:使用 Get-AzADUser cmdlet,将用户的电子邮件地址传递给
-UserPrincipalName
参数。Get-AzAdUser -UserPrincipalName <email-address-of-user>
在输出中,对象 ID 将作为
Id
列出。
分配访问策略
使用 Set-AzKeyVaultAccessPolicy cmdlet 分配访问策略:
Set-AzKeyVaultAccessPolicy -VaultName <key-vault-name> -ObjectId <Id> -PermissionsToSecrets <secrets-permissions> -PermissionsToKeys <keys-permissions> -PermissionsToCertificates <certificate-permissions
为这些特定类型分配权限时,只需提供 -PermissionsToSecrets
、-PermissionsToKeys
和 -PermissionsToCertificates
。 <secret-permissions>
、<key-permissions>
和 <certificate-permissions>
的允许值在 Set-AzKeyVaultAccessPolicy - 参数文档中提供。