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

圣杯Spring安全帖子认证

岳阳飙
2023-03-14

我使用Spring安全核心插件。我想在用户登录后立即将对象放入会话中。到目前为止,我发现插件中有grails.plugin.springsecurity.LoginController。它有一个称为ajaxSuccess的方法,它似乎在成功进行身份验证后被调用。所以我决定创建另一个LoginController,它扩展了默认控制器并覆盖了此方法:

@Secured('permitAll')
class LoginController extends grails.plugin.springsecurity.LoginController {


    def ajaxSuccess() {
        session['somevproperty'] = someValue 
        super.ajaxSuccess()
    }

}

但是调试表明这个方法从来没有被调用过。出了什么问题?可能有另一种方法来做我想做的事吗?谢谢大家!

共有1个答案

鲁涵映
2023-03-14

Spring Security有自己的事件侦听器。我更喜欢你使用它。

http://grails-plugins.github.io/grails-spring-security-core/guide/events.html

上面链接中的成功登录示例代码。

package com.foo.bar

import org.springframework.context.ApplicationListener  
import org.springframework.security.authentication.event. AuthenticationSuccessEvent

class MySecurityEventListener implements ApplicationListener<AuthenticationSuccessEvent> {

      void onApplicationEvent(AuthenticationSuccessEvent event) { 
      // handle the event
      } 
}
 类似资料:
  • 我的问题和这个类似 如何通过Spring安全登录页面传递附加参数 虽然它适用于Grails Spring Security插件。如果我必须支持登录名(公司名称)中的附加字段,我如何在Grails中执行? 我将从URL获取公司名称字段。 比如说。/登录?companyname=c1 /login?公司名称=c2 不同公司的不同用户可以使用相同的用户名。所以用户名不是唯一的,但用户名公司名称是唯一的。

  • 我需要在圣杯2.4.3中安装Rest客户端生成器2.1.1,但我的互联网访问非常有限,并且落后于代理。我从 https://repo.grails.org 插件的整个文件夹中下载,文件是: rest-client-builder-2.1.1-plugin.xml rest-client-builder-2.1.1-plugin.xml.md5 rest-client-builder-2.1.1-p

  • 本文向大家介绍CSS 使用Flexbox的圣杯布局,包括了CSS 使用Flexbox的圣杯布局的使用技巧和注意事项,需要的朋友参考一下 示例 Holy Grail布局是具有固定高度的页眉和页脚以及中心带有3列的布局。这3列包括一个固定宽度的sidenav,一个流体中心以及一个用于其他内容(例如广告)的列(流体中心在标记中排在最前面)。CSS Flexbox可以通过非常简单的标记来实现此目的: HT

  • 我正在尝试启动一个由多个插件组成的Grails应用程序,每个插件都存储为一个单独的Maven模块。依赖关系在中指定。在启动存储在其他插件中的应用类(Java 和 Groovy)时,不会加载这些类。我已经检查了类路径,似乎它不包括由其他插件生成的类。 中的依赖关系如下所示: Maven模块的结构如下:

  • 我正在研究云应用程序的身份验证服务部分,我创建了以下安全配置类。 我不太清楚configure(HttpSecurity http)方法的链方法。身份验证服务将只接收“登录”和“注册”请求。 由于未授权任何内容,是否应删除authorizeRequests()方法? 我不确定anyRequest().Authenticated()部分是否真的需要?

  • 在为了使用多线程而修改了一个服务方法之后,我发现如果不止一个用户多次尝试请求页面(并调用服务方法),服务器就会抛出“无法连接,池耗尽”异常。让我提供一个我的服务类的例子。 我已经在这个问题上挣扎了一个多星期,我找不到解决方案。我不太明白Grails如何与会话、连接和事务一起工作。我的猜测是跟随。当调用ConvertDocumentToJSON时,它从池中获取连接(4个用户,每个用户25个线程=10