使用Bastion通过Key Vault密码连接VM时遇权限问题求助
解决Bastion通过Key Vault密码连接虚拟机的权限问题
核心问题分析
你遇到的"you do not have access to List secrets for this resource"报错,本质不是用户权限不足(你已配置Get/List权限),而是Key Vault的网络访问限制拦截了请求:移除家庭动态IP后,你的客户端(浏览器)发起的Key Vault机密列表请求不在允许范围内,导致权限校验失败。
可行解决方案
方案1:开启Key Vault的信任服务主体绕过功能
这是最简便的方法,让微软托管的Bastion服务直接绕过Key Vault防火墙限制:
- 进入Key Vault的网络设置页面
- 在“防火墙和虚拟网络”选项卡中,勾选**“允许受信任的Microsoft服务绕过此防火墙”**选项
- 保存设置后,重新通过Bastion的“Password from Key Vault”选项尝试连接,此时请求会通过Bastion的可信服务身份被允许访问Key Vault
方案2:给Key Vault配置私有端点(更安全)
如果不想放宽防火墙规则,可通过私有端点让Key Vault仅在虚拟网络内可访问,Bastion所在VNet能直接访问:
- 在Key Vault的私有端点连接页面,点击“添加”
- 选择Bastion所在的虚拟网络和子网,创建私有端点
- 部署完成后,回到Key Vault的网络设置,将“允许访问来源”设置为**“专用端点和选定的网络”**(或仅专用端点)
- 确保虚拟机和Bastion在同一VNet,此时通过Bastion访问时,机密请求走私有链路,无需家庭IP在允许列表
额外验证步骤
- 确认你的用户账户在Key Vault的访问策略中,确实配置了
机密权限下的Get和List(Key Vault访问策略独立于管理员角色,需单独配置) - 清除浏览器缓存后再尝试连接,避免旧IP缓存导致的问题
内容的提问来源于stack exchange,提问作者Reidy0588
相关产品推荐
相关产品推荐

