使用MSAL进行集成Windows认证时联合服务返回403错误原因排查
你遇到的错误码0x8004882c和0x80045b00对应联合身份服务拒绝WS-Trust的IWA认证请求,常见故障原因如下:
- 联合身份服务(AD FS)配置异常
- AD FS的WS-Trust相关端点(
/adfs/services/trust/2005/windowstransport、/adfs/services/trust/13/windowstransport)未启用,或未给域用户组开放访问权限,直接返回403拒绝访问。 - 企业AD FS配置了非交互式认证拦截策略,默认禁止IWA这类无用户交互的认证流请求令牌。
- AD FS的WS-Trust相关端点(
- 域账号配置不符合IWA约束
- 你使用的Windows账号为纯Azure AD托管账号、外部来宾账号,未和本地AD域做联合同步,IWA仅支持本地AD域加入设备上的同步域账号。
- 账号被要求强制启用多因素认证(MFA),IWA属于静默认证流,无法完成MFA挑战,被联合服务直接拒绝。
- 账号处于锁定、过期状态,或配置了登录时段、登录设备限制,当前请求不符合账号登录规则。
- MSAL代码配置问题
- 构造
PublicClientApplication时未指定完整的租户ID,使用了common、organizations这类通用租户标识,导致MSAL无法正确路由到你所属域的WS-Trust端点。 - 请求的
scopes包含了仅支持交互式认证的资源权限,资源侧拒绝通过IWA流下发对应令牌。
- 构造
- 设备与网络配置异常
- 当前设备未加入本地AD域,或与域控制器、AD FS服务器网络不通,无法正常生成和传递Kerberos票据。
- 本地网络存在代理服务器,代理拦截WS-Trust请求后清除或修改了Kerberos认证头,导致联合服务无法识别身份。
- 本地缓存的Kerberos票据过期或损坏,无法完成IWA认证流程。
内容的提问来源于stack exchange,提问作者AvenashKrish
相关产品推荐
相关产品推荐

