You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure颁发可验证凭据时无法访问Key Vault报403错误问题咨询

Azure可验证凭据Key Vault 403错误排查方案

错误场景

基于Node.js版Azure可验证凭据示例完成官方教程配置、搭建好预览环境后,执行run.sh启动服务,使用Microsoft Authenticator扫描生成的QR码时,SDK抛出如下异常:

INFO/DID_SDK/: HttpError: 403 body: {"requestId":"myRequestId", "date":"currentDate", "mscv":"myMscv", "error":{"code":"Forbidden", "message":"Unable to access Keyvault resource with given credentials."}}

按以下优先级逐一排查即可解决:

  • 核对Key Vault访问权限配置
    先确认运行run.sh时服务使用的认证身份:本地调试通常是Azure CLI登录的个人账号,部署到Azure后通常是应用注册的服务主体、或是资源托管标识,必须给这个身份分配对应Key Vault的操作权限:
    • 若Key Vault使用访问策略模式:进入Key Vault访问策略页,给对应身份添加密钥权限下的get、sign权限,证书权限下的get权限,漏给sign签名权限是这类问题的最高发原因
    • 若Key Vault使用Azure RBAC授权模式:给对应身份分配Key Vault Crypto User内置角色即可,仅分配Reader角色没有签名操作权限,必然报403
  • 检查Key Vault网络防火墙规则
    如果开启了Key Vault的「选定网络」访问限制,必须把运行示例服务的设备出口IP、服务所在VNet子网加入Key Vault允许访问列表;仅开“允许受信任Microsoft服务访问”的开关不会放行本地调试的公网出口请求,网络层拦截时也会返回403错误
  • 核对示例配置文件参数
    打开示例目录下的配置文件(config.json或.env),逐一核对字段:
    • Key Vault名称是否和实际实例名完全一致,无拼写错误、无多余后缀
    • 配置中填写的签名密钥标识符是否对应Key Vault中实际存在的密钥,确认密钥处于启用状态、未过期、未被禁用
    • 若使用客户端ID+客户端密钥的服务主体认证方式,确认客户端密钥未过期,客户端ID、租户ID填写正确无错位
  • 处理权限同步延迟
    刚配置完访问策略就测试的话,Azure侧权限同步通常有1-2分钟延迟,等待2分钟后重启run.sh脚本重新生成QR码测试即可;如果等待后仍报错,可以删除对应访问策略重新添加一次,强制触发权限同步刷新

内容的提问来源于stack exchange,提问作者ksadjad

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.01 14:01:25