当前位置: 首页 > 知识库问答 >
问题:

为什么在Spring-Security中,remember-me是比完全身份验证更小的身份验证?

商泽宇
2023-03-14

这是一个概念性的问题,关于在Spring Security性中身份验证有不同的等级。

有一个等级

  1. 匿名身份验证也称为is_authenticated_anonymouly
  2. 和记住我身份验证是_authenticated_rememored
  3. 完整身份验证,当用户刚刚提供了他的全部凭据并得到确认时,即is_authenticated_fully

AuthenticatedVoter#isFullyAuthenticated的实现中,很明显,完全通过身份验证的用户不能是Anonymous authenticatedRemember-Me authenticated

当然,对于Anonymous Authenticated用户,我们通常有不同的决定要做,所以这就是为什么我理解为什么要挑出这一点。

我是否理解了remember-me的概念,或者没有将用户remement计算为完全身份验证的确切原因是什么?

共有1个答案

郑理
2023-03-14

与session-login相比,session-login有一个类似的令牌,但在spring security中被认为是完全身份验证,为什么remember-me和基于session有区别?

通常,会话超时时间比remement-me令牌的寿命短。根据Spring的文档,remember-me令牌的生命周期为2周,而会话超时通常只定义为几分钟。

记住-我可以被认为类似于恢复超时的会话,但这与仅仅恢复安全上下文一样不安全。为什么?

    null
  • 通过显式对用户进行身份验证检索的访问令牌:将此用于关键操作,使其短期存在,并且不要为这些操作提供刷新令牌
  • 通过刷新令牌检索的刷新令牌和访问令牌:基本上与会话安全性类似,因为刷新令牌的生命周期通常与会话生命周期相关(如果用户没有在时间X内访问受保护的资源,那么访问令牌和刷新令牌都将过期,用户需要重新进行身份验证)。请注意,不应与用户共享刷新令牌。
  • remember-me令牌:可以认为是一种与用户共享的长期刷新令牌形式
 类似资料:
  • http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security-3.0.3.xsd“>

  • 我有一个REST服务,它依赖于外部系统来验证令牌,但需要自己进行授权(使用like@Secured进行API级访问)。 要求: UI使用外部系统生成令牌 一种可能的解决方案是使用过滤器: > UI使用外部系统生成令牌 UI使用令牌对我的服务进行REST调用 我的服务有一个过滤器,它使用令牌调用外部系统 有效令牌的外部系统发回用户详细信息 我对成功呼叫集的服务与SecurityContextHold

  • 我正在开发一个Web应用程序 然而,我在尝试允许用户通过注册链接注册时遇到了一个问题。如果用户未经身份验证,则无法访问注册表的链接(“showRegistrationForm”) 有人能洞察为什么会发生这种情况吗?我在下面包含了我的安全配置中的代码片段

  • 我必须说,我对整个模型非常困惑,我需要帮助把所有的浮动件粘在一起。 我不是在做Spring REST,只是简单的WebMVC控制器。 什么让人困惑?(错误之处请指正) 第三方身份验证 要针对第三方进行身份验证,我需要通过扩展AuthenticationProvider来拥有自定义提供程序 null 问题: 何时调用AbstractAuthenticationProcessingFilter#Suc

  • 我很难让LDAP安全配置与xml配置一起工作。

  • 我试图在一个反应式Spring Boot应用程序中配置一个Spring Security性,该应用程序具有一个Vuejs前端,在未经身份验证时将用户重定向到外部OpenID提供程序(用于身份验证)。在用户通过OpenID提供程序进行身份验证并重定向回应用程序(前端)后,将根据OpenID提供程序的响应创建用户名密码身份验证令牌(身份验证),并手动进行身份验证。 但是,在执行此操作时,应用程序似乎无