我从 spring 文档中发现了一些可以覆盖登录 Controller 和表单的内容。我只想覆盖登录表单本身,同时保留默认 Controller 。我发现了这个:
In the grails security plugin, the login gsp page is located at grails-app/views/login/auth.gsp and the controller at grails-app/controllers/grails/plugin/springsecurity/LoginController.groovy. I don't think the controller can be overwritten by simply creating your own implementation, but you should be able to override the gsp page by placing your own auth.gsp in the same path shown above, in your app.
https://plus.google.com/117486613280979732172/posts/cvqcfAQVWE6
但是,这无法覆盖页面,并且默认页面不断出现。有人用 Grails 3 和 spring security 库做过这个吗?
编辑: 我通过使用这些库并设置我自己的 bean 来使用 OAuth2。我认为另一种方法可能是使用 grails 插件来实现 spring 安全性。有没有办法使用这些库覆盖登录页面?
compile "org.springframework.boot:spring-boot-starter-security"
compile "org.springframework.security.oauth:spring-security-oauth2:2.0.8.RELEASE"
最佳答案
对此有一种更简单、更系统的方法。无需所有手动复制粘贴工作。
- 安装后 spring-security-core plugin ,在grails控制台使用
grails s2-quickstart
命令配置基本的用户和角色域(您可以使用 s2-quickstart 配置其他方面); - 安装 spring-security-ui plugin 并使用
grails s2ui-override auth
命令覆盖 login/auth 表单(这将创建登录表单,以便您覆盖它) - 使用
grails s2ui-override layout
覆盖表单的布局(这将创建 springSecurityUI.gsp 布局,以便您覆盖它)
希望有帮助。
关于spring - Grails 3 Spring Security 覆盖登录表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35236426/