Azure存储账户无法关联客户托管密钥:系统分配身份无密钥保管库权限
针对你遇到的storage123存储账户无法关联客户托管密钥,且已分配Key Vault Crypto Service Encryption User角色仍报错的情况,按以下步骤排查:
验证系统身份对象ID的准确性:
进入存储账户的「安全 + 网络 > 标识」页面,复制系统分配身份的对象ID。前往密钥保管库的「访问控制(IAM)」,确认该对象ID已被授予Key Vault Crypto Service Encryption User角色——避免误将存储账户名称作为授权主体(名称不唯一,对象ID才是唯一标识)。检查角色分配的生效状态:
- 角色分配可能存在5-10分钟的延迟,等待后重试操作;
- 确保角色是直接分配给存储账户的系统身份,而非通过用户组间接分配;
- 确认角色分配的范围是整个密钥保管库,而非某一特定子资源。
配置密钥保管库的网络规则:
如果密钥保管库启用了防火墙/虚拟网络限制,需:- 勾选「允许受信任的Microsoft服务访问此密钥保管库」选项;
- 或将存储账户所在的虚拟网络添加至密钥保管库的允许列表。
补充密钥级别的权限:
除IAM角色外,需在密钥保管库的「密钥」页面,为存储账户的系统身份分配以下密钥权限:Get(获取密钥)Wrap Key(包装密钥)Unwrap Key(解包密钥)
这些是存储账户使用客户托管密钥进行加密的核心权限。
确认系统身份的启用状态:
再次检查存储账户的「标识」页面,确保系统分配身份的状态为「启用」。若刚启用身份,需等待几分钟让身份完全创建后再执行授权和关联操作。
错误提示原文:
Your system-assigned identity does not have access to the key vault. You can request access to the key vault by sending your admin the object ID from Identity under Security + networking when system-assigned status is enabled
内容的提问来源于stack exchange,提问作者learner

