如何调试Blazor应用中Identity Server的无效重定向URI未授权客户端错误
Blazor应用复制部署后重定向URI错误排查与解决
操作背景
- 复制生产可用的Blazor应用:将
c:/inetpub/wwwroot/下的/BQM目录复制为/BQM.DEV,/BQM.API复制为/BQM.DEV.API,目标是搭建指向DEV数据库的新实例(原实例指向QA数据库) - IIS站点配置:
- 新建
BQM.DEV.API站点,路径c:/inetpub/wwwroot/BQM.DEV.API,端口44383(原API端口44382) - 新建
BQM.DEV站点,路径c:/inetpub/wwwroot/BQM.DEV,端口44371(原应用端口44370)
- 新建
- 配置文件修改:
- 修改
appsettings.json中AzureAD.RedirectUri端口为44371 - 修改
BQMApplicationLocation端口为44371 - 修改
ConnectionStrings.DefaultConnection的数据库为BQM_DEV
- 修改
错误表现
访问https://localhost:44371时,未加载登录界面,直接返回错误:
unauthorized client Invalid redirect_uri
(中文翻译:未授权客户端:无效的重定向URI)
核心原因与解决步骤
该错误是因为身份验证服务(Azure AD/Okta)的应用注册中,未将新站点的重定向URI加入允许列表,需按以下步骤更新配置:
1. 更新Azure AD应用注册配置
- 登录Azure门户,定位到对应应用注册(ClientId:
268428b8-be88-xxxx-9e48-19d20294fe23) - 进入「身份验证」选项卡
- 在「平台配置」中添加新的重定向URI:
https://localhost:44371/signin-oidc - 保存所有更改
2. 更新Okta应用配置
- 登录Okta管理后台(域名:
https://dev-422955.okta.com/),找到对应客户端应用(ClientId:0oa22wxxxxrNblp86357) - 进入「常规」页面的「登录」设置区域
- 添加新的「登录重定向URI」:
https://localhost:44371/signin-oidc - 保存配置
3. 额外验证项
- 确认
appsettings.json中的RedirectUri与身份服务中添加的URI完全一致(协议、域名/IP、端口、路径均不能有误) - 若实际访问使用的是域名(如
https://adcdev028.mycompany.com:44371/),需同时将该域名对应的https://adcdev028.mycompany.com:44371/signin-oidc也添加到允许列表 - 测试前清理浏览器缓存或使用无痕窗口,避免旧的会话缓存干扰
内容的提问来源于stack exchange,提问作者Paul T. Rykiel
相关产品推荐
相关产品推荐

