Azure AD应用注册登录重定向URL丢失端口致AADSTS50011错误
Azure AD登录失败:重定向URI丢失端口号导致AADSTS50011错误
问题详情
已在Azure AD应用注册中配置以下重定向URL:
https://localhost:7133/signin-oidchttps://mydomain:81/signin-oidc
Azure应用注册设置截图:
尝试登录时,重定向URI丢失端口号,触发以下错误:
AADSTS50011: 请求中指定的重定向URI 'XXXX/signin-oidc' 与应用程序 'XXXX-XXXX' 配置的重定向URI不匹配。请确保请求中发送的重定向URI与Azure门户中为应用添加的URI一致。
登录错误截图:
排查与修复方案
1. 检查应用代码中的重定向URI配置
确认应用内的回调地址配置完整包含端口号:
- 若使用配置文件(如
appsettings.json),确保AzureAd节点下的配置能让框架自动拼接出带端口的完整URI:"AzureAd": { "Instance": "https://login.microsoftonline.com/", "Domain": "yourdomain.com", "TenantId": "your-tenant-id", "ClientId": "your-client-id", "CallbackPath": "/signin-oidc" } - 若手动配置认证选项,确保代码中未人为截断端口信息:
options.CallbackPath = new PathString("/signin-oidc");
2. 检查反向代理/负载均衡配置(若有)
如果应用部署在代理或负载均衡后,需确保:
- 代理服务器正确传递原始请求的Host和端口信息到后端应用,避免应用获取到错误的端口值。
- 在应用中开启信任代理配置,以ASP.NET Core为例:
app.UseForwardedHeaders(new ForwardedHeadersOptions { ForwardedHeaders = ForwardedHeaders.XForwardedFor | ForwardedHeaders.XForwardedProto | ForwardedHeaders.XForwardedHost });
3. 验证Azure应用注册的重定向URI格式
确认Azure端配置的重定向URI:
- 协议(http/https)与应用访问协议完全一致
- 端口号明确标注,无多余空格或特殊字符
- 自定义域名需确保解析正常,端口未被防火墙/安全组拦截
4. 清除浏览器缓存与Cookie
浏览器缓存的旧重定向规则可能引发问题,清除相关缓存后重新尝试登录。
内容的提问来源于stack exchange,提问作者josagyemang
相关产品推荐
相关产品推荐

