Angular 9应用使用Azure App Configuration时返回401错误的问题咨询
Azure App Configuration 401无效凭据问题排查方案
你遇到的错误信息如下:
www-authenticate: HMAC-SHA256 error="invalid_token", error_description="Invalid Credential"
可以按照以下步骤逐一排查:
- 连接字符串有效性校验
确认从Azure门户复制的连接字符串没有多余的空格、换行符,不要对连接字符串中的Secret部分做任何转义处理,+、/、=这类特殊字符如果被误转义会直接导致签名失败。连接字符串标准格式为Endpoint=https://<配置存储实例名>.azconfig.io;Id=<身份ID>;Secret=<访问密钥>,三个字段缺一不可。 - 本地系统时间同步校验
HMAC-SHA256签名对时间差敏感度极高,只要你发起请求的设备时间和Azure官方服务器时间差超过15分钟,就会直接返回无效凭据错误。先将本地系统时间同步到互联网标准时间,再重新发起请求验证。 - 请求头规范校验(针对Postman手动请求场景)
不要手动修改Host请求头,Host值必须和连接字符串中的Endpoint域名完全一致,不能额外加端口、替换为IP。签名必须的Date或x-ms-date头必须是GMT标准格式的当前时间,不要手动填写固定时间值,可通过Postman预请求脚本自动生成符合要求的时间头。 - SDK版本校验
确认你安装的@azure/app-configuration是最新正式版本,过时的预览版SDK存在签名逻辑已知bug,升级到最新正式版即可解决兼容问题。
内容的提问来源于stack exchange,提问作者Keith Waddell
相关产品推荐
相关产品推荐

