我正在关注Spring Security身份验证的本教程:
http://spring.io/blog/2010/08/11/simplified-spring-security-with-grails/
视频:https://www.youtube.com/watch?v=auwML_bsUEE
我无法按照4:50的步骤进行。
package org.example
import grails.plugins.springsecurity.Secured
class PostController {
...
@Secured(['ROLE_USER'])
def followAjax = { ... }
@Secured(['ROLE_USER', 'IS_AUTHENTICATED_FULLY'])
def addPostAjax = { ... }
def global = { ... }
@Secured(['ROLE_USER'])
def timeline = { ... }
@Secured(['IS_AUTHENTICATED_REMEMBERED'])
def personal = { ... }
}
找不到导入的grails.plugins.springsecurity.Secured。
我正在使用Grails 2.4.4并在BuildConfig.groovy中编译':spring-security-core:2.0-RC4'。谢谢。
最佳答案
该教程已有4年以上的历史,此后发生了很多变化。尝试阅读插件文档-我确定还会有其他类似的变化,这会引起问题。
导入应为grails.plugin.springsecurity.Secured
。您还可以使用Spring Security的org.springframework.security.access.annotation.Secured
注释,但是插件的注释支持所有相同的功能以及一些其他功能,例如让您使用闭包定义规则。
但是,您不能在定义为“关闭”的 Action 上使用任何一个注释。 Grails 2.0+仍支持它们,但现在首选方法,尽管Grails允许您使用闭包或 Action 定义 Action ,但插件仅支持方法。
关于grails - Grails 2.4.4中的Spring Security插件问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28228331/