配置对 Key Vault 的访问权限(包括保管库访问策略和 Azure 基于角色的访问控制)
Azure 基于角色的访问控制 (Azure RBAC) 是在 Azure 资源管理器基础上构建的授权系统,针对 Azure 资源提供精细的访问权限管理。
Azure RBAC 允许用户管理密钥、机密和证书权限。 它提供了一个可跨所有密钥保管库管理所有权限的位置。
借助 Azure RBAC 模型,可以在不同的范围级别上设置权限:管理组、订阅、资源组或单个资源。 通过适用于密钥保管库的 Azure RBAC,用户还可以对各个密钥、机密和证书拥有单独的权限。
单个密钥、机密和证书角色分配的最佳做法
我们的建议是对每个环境(开发环境、预生产环境和生产环境)的每个应用程序使用一个保管库。
单个密钥、机密和证书权限应仅用于特定场景:
- 在多个应用程序之间共享单个机密,例如,一个应用程序需要访问来自其他应用程序的数据
用于 Key Vault 数据平面操作的 Azure 内置角色
注意
密钥保管库参与者角色仅适用于管理密钥保管库的管理平面操作。 它不允许访问密钥、机密和证书。
内置角色 | 描述 | ID |
---|---|---|
Key Vault 管理员 | 对密钥保管库以及其中的所有对象(包括证书、密钥和机密)执行所有数据平面操作。 无法管理密钥保管库资源或管理角色分配。 仅适用于使用“Azure 基于角色的访问控制”权限模型的密钥保管库。 | 00482a5a-887f-4fb3-b363-3b7fe8e74483 |
Key Vault 证书管理人员 | 对密钥保管库的证书执行任何操作(管理权限除外)。 仅适用于使用“Azure 基于角色的访问控制”权限模型的密钥保管库。 | a4417e6f-fecd-4de8-b567-7b0420556985 |
Key Vault 加密管理人员 | 对密钥保管库的密钥执行任何操作(管理权限除外)。 仅适用于使用“Azure 基于角色的访问控制”权限模型的密钥保管库。 | 14b46e9e-c2b7-41b4-b07b-48a6ebf60603 |
密钥保管库加密服务加密用户 | 读取密钥的元数据并执行包装/展开操作。 仅适用于使用“Azure 基于角色的访问控制”权限模型的密钥保管库。 | e147488a-f6f5-4113-8e2d-b22465e65bf6 |
Key Vault 加密用户 | 使用密钥执行加密操作。 仅适用于使用“Azure 基于角色的访问控制”权限模型的密钥保管库。 | 12338af0-0e69-4776-bea7-57ae8d297424 |
Key Vault 读取者 | 读取密钥保管库及其证书、密钥和机密的元数据。 无法读取机密内容或密钥材料等敏感值。 仅适用于使用“Azure 基于角色的访问控制”权限模型的密钥保管库。 | 21090545-7ca7-4776-b22c-e363652d74d2 |
Key Vault 机密管理人员 | 对密钥保管库的机密执行任何操作(管理权限除外)。 仅适用于使用“Azure 基于角色的访问控制”权限模型的密钥保管库。 | b86a8fe4-44ce-4948-aee5-eccb2c155cd7 |
Key Vault 机密用户 | 读取机密内容,包括带有私钥的证书的机密部分。 仅适用于使用“Azure 基于角色的访问控制”权限模型的密钥保管库。 | 4633458b-17de-408a-b874-0445c86b69e6 |
注意
由于应用程序要求证书的机密部分带有私钥,因此不存在密钥保管库证书用户。 应将密钥保管库机密用户角色用于应用程序以检索证书。
管理内置 Key Vault 数据平面角色分配(预览版)
内置角色 | 描述 | ID |
---|---|---|
密钥保管库数据访问管理员(预览版) | 通过添加或删除 Key Vault 管理员、Key Vault 证书主管、Key Vault 加密管理人员、Key Vault 加密服务加密用户、Key Vault 加密用户、Key Vault 加密用户、Key Vault 读取者、Key Vault 机密主管或 Key Vault 机密用户角色来管理对 Azure Key Vault 的访问。 包括用于约束角色分配的 ABAC 条件。 | 8b54135c-b56d-4d72-a534-26097cfdc8d8 |
对密钥保管库使用 Azure RBAC 机密、密钥和证书权限
用于密钥保管库的新 Azure RBAC 权限模型提供了保管库访问策略权限模型的替代方案。
先决条件
必须拥有 Azure 订阅。 如果尚无 Azure 订阅,请在开始前创建一个免费帐户。
添加角色分配,必须具有 Microsoft.Authorization/roleAssignments/write
和 Microsoft.Authorization/roleAssignments/delete
权限,例如密钥保管库数据访问管理员(预览版)、用户访问管理员或所有者。