我正在执行一项更改以
<g:form controller="login" action="authenticate" class="form">,它重定向到插件/login/authenticate上包含的身份验证。
如何自定义另一个操作的路径,该路径可以在调用该操作时执行会话检查?
发布于 2018-05-25 14:32:42
您可以执行自己的/自定义身份验证操作,如下所示。
<!--Your login page gsp-->
<g:form controller="login" action="auth" class="form">您的GSP自定义操作
//inject springSecurityService this service in the login controller as def springSecurityService
def auth(){
def config = SpringSecurityUtils.securityConfig
if (springSecurityService.isLoggedIn()) {
redirect uri: config.successHandler.defaultTargetUrl
return
}
}发布于 2018-08-16 11:18:37
您可以创建自己的操作并重定向到默认的/login/authenticate apf url。您可以在您的操作中进行签入。
如果您需要在用户通过身份验证后检查某些内容,您可以简单地覆盖创建具有相同名称的控制器的操作def ajaxSuccess()。LoginController。
发布于 2021-04-04 13:27:21
Spring安全是围绕过滤器链构建的。正确的方法应该是创建一个新的过滤器。您可能需要下载spring grails安全核心插件,并查看像GrailsUsernamePasswordAuthenticationFilter这样的类来了解如何做到这一点。
https://stackoverflow.com/questions/50521928
复制相似问题