Node.js应用集成AzureAD SSO遇AADSTS65005错误求助
解决Azure AD多租户SSO中的AADSTS65005错误
这个access_denied伴随AADSTS65005的错误,核心原因是用户所在的enfintechnologies.com租户处于非托管状态——简单说就是微软还未确认该域名的合法所有权,因此限制了这类租户的用户访问你的多租户应用。下面是具体的解决办法:
根本解决方案:让租户管理员完成域名验证
这是最稳妥的解决方式,完成后租户会转为托管状态,用户就能正常登录:
- 联系
enfintechnologies.com的管理员,让其登录Azure门户并切换到对应租户(如果还未创建租户,需先创建一个) - 进入「Azure Active Directory」→「自定义域名」
- 添加域名
enfintechnologies.com,按照页面提示获取对应的DNS验证记录(一般是TXT或MX类型) - 到域名服务商的后台添加这条DNS记录,返回Azure门户点击「验证」
- 验证通过后,该租户就会转为托管状态,用户再尝试登录你的
Talscout-Live应用就不会报错了
临时替代方案(仅适合低权限场景)
如果暂时等不及管理员完成验证,且你的应用仅需要低风险权限,可以调整应用的同意设置:
- 登录Azure门户,找到你的多租户应用「Talscout-Live」
- 进入「API权限」→「用户同意设置」
- 将设置调整为「允许用户同意针对其自己的低风险权限」(注意:高权限仍需管理员同意,且该设置存在一定安全风险,谨慎使用)
补充说明
非托管租户通常是用户用工作/学校邮箱注册微软服务,但未完成域名验证导致的。微软限制这类租户访问多租户应用,是为了防止恶意应用利用未验证域名进行欺诈或滥用,因此优先推荐第一种域名验证的方案,既解决问题也符合安全规范。
内容的提问来源于stack exchange,提问作者Deepdil S
相关产品推荐
相关产品推荐

