2017-08-04 124 views
0

当前结构: 我有角应用程序作为客户端,API作为数据源和身份服务器作为标识源。在角度我认证用户对身份服务器和使用返回的令牌授权用户对API。我应该使用哪种授权类型来对我的角度应用用户进行身份验证服务器身份验证 根据http://docs.identityserver.io/en/release/topics/grant_types.html,我应该使用隐式授权类型。身份服务器4和Angular应用程序进行身份验证,以实现永久持续会话

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

我的目标是让会议活着(令牌有效),直到其被用户终止(注销)

+0

如果你有一个需求,你将不得不在任何情况下撤销用户会话!那会有点痛苦。尝试对用户会话进行一些控制。 – Jay

回答

1

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

有描述此过程和更多(单点登录)的RFCRFC。

+0

谢谢 - >也发现视频解释:https://vimeo.com/131636653 –

相关问题