gpt4 book ai didi

spring-security - Spring Security 预认证账户锁校验

转载 作者:行者123 更新时间:2023-12-05 08:59:10 32 4
gpt4 key购买 nike

新手问题...我已成功实现自定义处理程序和服务(自定义用户详细信息服务、身份验证成功、身份验证失败)并且一切正常。我现在还实现了如果 3 次并发身份验证失败将锁定帐户(一定时间)的功能。

我现在继续处理用户在帐户锁定时尝试进行身份验证的情况。如果锁定处于事件状态 > 不应尝试进行身份验证并将用户重定向到锁定的帐户页面/错误。如果锁已过期 > 应该移除锁并且身份验证照常进行

在帐户锁定处于事件状态的情况下 - 我已尝试在我的自定义身份验证成功处理程序中实现此功能,但尽管已成功将用户转发到帐户锁定错误页面 - 但为时已晚,因为应用程序已经对用户进行了身份验证,并且用户成功地能够直接访问安全页面(这显然是错误的,因为他们的帐户应该被锁定)。

我开始四处游玩,但我想我应该先在这里查看更标准/优雅的解决方案/方法。我应该在自定义用户详细信息服务中执行此检查和操作,还是有我可以在用户点击自定义用户详细信息服务之前实现的预身份验证处理程序?非常感谢任何有关我在哪里/如何处理此问题的帮助或建议

最佳答案

在您的 UserDetails 实现中,将 true 传递给以下值

  1. isAccountNonExpired()
  2. isAccountNonLocked()
  3. isCredentialsNonExpired()

有关详细信息,您可以查看 AbstractUserDetailsAuthenticationProvider 类中的 public void check(UserDetails user)。希望这对某人有所帮助。

关于spring-security - Spring Security 预认证账户锁校验,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17377636/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com