On Behalf Of流程AADSTS50013错误:租户2签名验证失败排查
导致AADSTS50013错误的租户间可能差异点
以下是排查租户1正常、租户2报签名验证失败错误的核心差异方向:
应用注册的证书/密钥配置不匹配
租户2的应用注册中,缺少错误提示中指纹为xxx的证书或密钥:- 检查租户2应用注册的「证书和密码」选项卡,确认是否存在指纹完全匹配
xxx的证书(若使用证书认证),或对应的有效客户端密钥; - 注意:若为证书,需确保证书未过期、上传的是完整的公钥证书(或包含私钥的PFX文件,视配置方式而定)。
- 检查租户2应用注册的「证书和密码」选项卡,确认是否存在指纹完全匹配
证书信任链不一致
租户2的AAD可能限制了证书信任范围:- 租户1允许自签名证书或特定CA颁发的证书,但租户2的AAD仅信任官方CA颁发的证书,导致指纹
xxx的证书无法被验证。
- 租户1允许自签名证书或特定CA颁发的证书,但租户2的AAD仅信任官方CA颁发的证书,导致指纹
后端代码的凭据配置错误
后端代码在租户2环境中可能使用了错误的凭据:- 例如硬编码了租户1的证书路径/密钥信息,未适配租户2的应用注册配置,导致签名时使用的证书指纹与租户2应用注册中存在的不匹配。
租户级AAD安全策略差异
租户2启用了更严格的令牌验证规则:- 比如开启了条件访问策略限制证书签名算法、或禁用了某些旧签名算法,而租户1未启用这些限制,导致签名验证失败。
应用注册的权限配置遗漏
虽然错误是签名验证问题,但租户2的应用注册可能未正确配置委托权限的on-behalf-of流程:- 需确认租户2的应用注册已添加必要的Graph委托权限,且已获得管理员同意(部分权限需管理员同意才能使用)。
内容的提问来源于stack exchange,提问作者Tim H
相关产品推荐
相关产品推荐

