gpt4 book ai didi

grails - 使用 spring-security-core 连接到预认证

转载 作者:行者123 更新时间:2023-12-01 13:00:26 26 4
gpt4 key购买 nike

当用户尝试根据用户名登录时,我需要做一些自定义的事情,但这些事情需要在身份验证过程之前发生。这是我到目前为止所得到的。

我们的系统允许多个电子邮件地址,并且客户希望用户能够使用其中任何一个进行身份验证。为此,我创建了一个自定义的 UserDetailsS​​ervice 并让代码适本地查找用户。

我需要做的其他事情需要 spring-security 并不真正了解或关心的用户对象上的一些标志。但我需要连接到 auth 进程,检查这些标志,并向用户返回适当的错误消息。举一个更具体的例子,我需要知道这是否是用户第一次登录系统。所以我们在用户身上有一个标志来跟踪这个。当用户尝试进行身份验证时,我需要读取此值并执行一些操作,包括向用户发回消息并停止身份验证。

我查看了文档中的事件监听器机制,但我没有看到如何通过监听器注入(inject)我自己的工作流。我需要做这样的流程:

首次使用有效邮箱验证 -> 取消验证 -> 在登录页面显示消息

我想如果我能处理好一个场景,我就能找出我需要的其他场景。

更新:我现在正在阅读过滤器,看看我是否遗漏了什么......

最佳答案

最简单的 Hook 身份验证过程是提供您自己的 AuthenticationProvider .只有两种方法可以实现。在 authenticate() 中,您可以执行所有自定义操作。

要将您的提供程序配置到框架中,请执行以下操作:

<authentication-manager>
<authentication-provider ref="myAuthenticationProvider" />
</authentication-manager>

关于grails - 使用 spring-security-core 连接到预认证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6412591/

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