目前的结构: 我有角度应用程序作为客户端,API作为数据源和身份服务器作为标识源。在角度I中,我针对身份服务器验证用户身份,并使用返回的令牌来针对API授权用户。我应该使用哪种格式类型来验证我的角度应用用户对身份服务器? 根据{{3}},我应该使用隐式授权类型。
问题是,使用隐式授权类型时,没有刷新令牌。所以我的问题是,我应该如何在角度应用程序中保持用户会话活动(访问令牌有效)? - 每次访问令牌过期后都不要求用户对自己进行身份验证。
我的目标是让会话处于活动状态(令牌有效),直到被用户杀死(已注销)
答案 0 :(得分:1)
是的,Implicit流程是我会使用的。如果您的身份验证提供程序支持会话,则可以使用OpenID Connect获取新令牌而无需用户交互。在令牌过期之前,在隐藏的iframe中创建一个带有/auth
URL参数的身份验证请求(prompt=none
端点)(根据OpenID Connect RFC,id_token_hint=...
参数也应该存在)。如果用户会话已打开,您将获得新令牌,否则将返回错误(需要用户交互)。
有OpenID Connect Session Management RFC描述了这个过程以及更多(单点登录)。