身份服务器4和Angular应用程序进行身份验证以实现永久持续的会话

时间:2017-08-04 07:28:28

标签: angularjs asp.net-core oauth-2.0 identityserver4

目前的结构: 我有角度应用程序作为客户端,API作为数据源和身份服务器作为标识源。在角度I中,我针对身份服务器验证用户身份,并使用返回的令牌来针对API授权用户。我应该使用哪种格式类型来验证我的角度应用用户对身份服务器?  根据{{​​3}},我应该使用隐式授权类型。

问题是,使用隐式授权类型时,没有刷新令牌。所以我的问题是,我应该如何在角度应用程序中保持用户会话活动(访问令牌有效)? - 每次访问令牌过期后都不要求用户对自己进行身份验证。

我的目标是让会话处于活动状态(令牌有效),直到被用户杀死(已注销)

1 个答案:

答案 0 :(得分:1)

是的,Implicit流程是我会使用的。如果您的身份验证提供程序支持会话,则可以使用OpenID Connect获取新令牌而无需用户交互。在令牌过期之前,在隐藏的iframe中创建一个带有/auth URL参数的身份验证请求(prompt=none端点)(根据OpenID Connect RFCid_token_hint=...参数也应该存在)。如果用户会话已打开,您将获得新令牌,否则将返回错误(需要用户交互)。

OpenID Connect Session Management RFC描述了这个过程以及更多(单点登录)。