我正在建立一些个人项目来学习春天的活动2.现在我正在努力应对春季安全问题。关于spring roo 2的信息几乎没有关于spring roo的春季启动信息。
使用“安全设置”命令,您获得了“--provider”选项。
这是帮助给你的描述:
可选--provider:要安装的Spring Security提供程序。可能的值为:
DEFAULT
(将使用Spring Boot提供的默认Spring Security配置)和SPRINGLETS_JPA
(使用Springlet JPA身份验证将包含高级Spring Security配置)。默认值:'DEFAULT'
我无法找到这两个选项之间的区别,即使是在spring roo M3参考文档中也是如此。甚至搜索“Springlets JPA身份验证”也没有提供任何相关信息。
有人对此有任何疑问吗?
由于
答案 0 :(得分:4)
这两个提供商之间的主要区别是:
DEFAULT
:当您在项目类路径中包含spring-boot-starter-security
时,Spring Boot是否提供默认的Spring Security自动配置。这是默认选项,因为Spring Roo总是尝试生成使用Spring Boot提供的自动配置的应用程序。
spring-boot-starter-security
依赖项将包含在您的pom.xml文件中 SPRINGLETS_JPA
:如果选择此提供程序,将使用Spring Boot提供的默认Spring Security自动配置。此外,此提供程序将在您的类路径中包含Springlets库,为您提供一些额外的启动程序来自动配置高级Spring Security属性。此外,配置要使用的安全性身份验证和数据库中的用户,而不是Spring Boot自动配置提供的默认内存中身份验证。您将能够使用application.properties
文件管理这些配置,并包含属性springlets.security.auth.in-memory.enabled
和springlets.security.auth.in-memory.erase-credentials
。
springlets-boot-starter-authentication
依赖项将包含在您的pom.xml文件中security.enable-csrf=true
属性以启用CSRF
。了解有关CSRF和Spring Security的更多信息here 希望它有所帮助,