Grails 3.0 和 Spring Security
Posted
技术标签:
【中文标题】Grails 3.0 和 Spring Security【英文标题】:Grails 3.0 and Spring Security 【发布时间】:2015-08-12 21:44:18 【问题描述】:我正在使用带有 IntelliJ Idea 的 Grails 3.0.1,并且我正在尝试在我的项目中使用 Spring Security 插件。
我知道旧的 spring-seurity-core 插件与 Grails 3.0 版本不兼容。因此,我尝试遵循本教程:http://spiesdavid.blogspot.fi/2015/03/grails-3-app-with-security-part-1.html
我在依赖项的 build.gradle 文件中添加了编译行。我还在 logback.groovy 文件中添加了记录器行。
问题从那之后开始。没有像 SecurityConfiguration.groovy 这样的文件,也没有 org.springframework.security 包,所以我无法导入它们,它给出了错误。所以我也无法创建文件。
【问题讨论】:
【参考方案1】:所以我假设你的问题是:«我如何让它发挥作用?»
spring security plugin 3.0.0 (for grails 3.x) 几天前刚刚发布。文档非常好。从这里开始:https://grails-plugins.github.io/grails-spring-security-core/ Intellij 存在一些问题。我尝试将 Spring Security 添加到一个稍旧的 grails 项目(从 intellij 15.0.1 和 grails 3.0.9 开始)。添加依赖项成功并重建它使插件可用,也在 grails 控制台中。但是当我直接从 IDE 启动应用程序的调试实例时,它不会在加载/安装的插件中显示 spring 安全性。我使用 IntelliJ 15.02、grails 3.0.10 制作了一个原始项目,然后将我的代码复制到新项目中。现在可以了。【讨论】:
【参考方案2】:请注意,IntelliJ 存在一些非主要问题。执行以下操作即可:
-
在你的 build.gradle 添加 compile 'org.grails.plugins:spring-security-core:3.0.0.M2'
运行命令编译
运行命令 s2-quickstart yourAppName 用户角色
现在您应该会在 conf 文件夹下看到“application.groovy”文件
像往常一样在控制器中使用 @Secured 注释
【讨论】:
以上是关于Grails 3.0 和 Spring Security的主要内容,如果未能解决你的问题,请参考以下文章
在 Grails 3.0 中配置 Spring Boot Security 以使用 BCrypt 密码编码
在grails 2.2.4 spring security core 2.0中配置ldap?
应用程序启动失败 Grails 3.3.0 添加 Spring Security