0

当我们实现基于声明的单点登录时,发行者如何维护它为应用程序分配给特定用户的令牌列表?发行的令牌有效的时间段如何?假设为一个应用程序1 授予了令牌,如果用户想转移到另一个应用程序2,那么该令牌将在多长时间内有效,是否有一些到期时间?

4

1 回答 1

0

您没有定义任何工具,所以我认为这是您自己的 sso 解决方案,在这方面您有多种解决方案。

有两个步骤:身份验证(即带有日期检查的 sso 本身)和授权(我可以访问哪个应用程序)

你所描述的是角色。角色将用户与权限列表相关联(如访问 App1 和 App2,但不访问 App3),这些权限通常在数据库中定义。然而,“userId”和令牌过期通常是令牌本身的一部分。

例如,您可以使用 userId + 时间戳并对其进行加密。在与服务器的每次通信时,都会解密令牌,验证时间戳范围(即身份验证),查找用户 ID 以确定具有哪些角色(即授权)

我建议在每次往返时重新生成令牌并给它一个小的有效期。

于 2012-08-23T07:48:49.073 回答