Identityserver4 Identity Server 4/OpenID连接默认重定向URL

Identityserver4 Identity Server 4/OpenID连接默认重定向URL,identityserver4,Identityserver4,我开始使用Identity Server 4(在ASP.NET核心下)使用隐式流来保护Angular 2前端(到Web API服务) 使用,我可以成功地从示例的默认页面重定向到登录页面,让用户进行身份验证,然后重定向(通过/connect/authorize)返回Angular站点的回调 如果用户直接浏览到我的身份验证登录页面(而不是Angular主页),我就可以进行身份验证,但无处可重定向。如果手动重定向到auth服务器的/connect/authorize页面,OIDC客户端将报告“在存储中

我开始使用Identity Server 4(在ASP.NET核心下)使用隐式流来保护Angular 2前端(到Web API服务)

使用,我可以成功地从示例的默认页面重定向到登录页面,让用户进行身份验证,然后重定向(通过/connect/authorize)返回Angular站点的回调

如果用户直接浏览到我的身份验证登录页面(而不是Angular主页),我就可以进行身份验证,但无处可重定向。如果手动重定向到auth服务器的/connect/authorize页面,OIDC客户端将报告“在存储中未找到匹配状态”。(大概,OIDC客户机正在本地持久化某些内容,以根据原始请求验证响应?)


一个显而易见的解决方案是,Auth服务器重定向任何请求,而不向Angular客户端指定重定向,然后客户端可以像正常情况一样重定向回Auth服务器。但这感觉像是很多往返旅行。

是的,因为这不是它的工作方式。身份验证流从客户端应用程序开始,而不是从身份提供程序开始

OpenID连接提供程序通常有不止一个客户端,因此它需要上下文信息(也称为有效的OIDC授权请求)


如果你想让旅程从供应商开始,你需要做一些你建议的事情——但一旦你有了第二个客户,你需要更聪明一些(例如选择屏幕等)。

感谢你花时间确认我不太清楚。(现实情况是,一些用户总是将登录页面添加书签,因此从这个角度来看,这就是它的工作方式,至少有时是这样。)谷歌(例如)几乎按照你说的做,并将重定向到帐户管理页面作为默认设置。非常感谢你的评论;谢谢