春季安全提供商之间有什么区别? (Spring Roo 2 M3)

时间:2017-02-19 08:01:29

标签: spring-boot spring-security spring-roo

我正在建立一些个人项目来学习春天的活动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身份验证”也没有提供任何相关信息。

有人对此有任何疑问吗?

由于

1 个答案:

答案 0 :(得分:4)

这两个提供商之间的主要区别是:

  • DEFAULT:当您在项目类路径中包含spring-boot-starter-security时,Spring Boot是否提供默认的Spring Security自动配置。这是默认选项,因为Spring Roo总是尝试生成使用Spring Boot提供的自动配置的应用程序。

    • 如果选择此项,则以下更改将应用​​于您的项目:
      • spring-boot-starter-security依赖项将包含在您的pom.xml文件中
    • 如果您想了解有关此配置的更多信息,请查看spring boot reference guide
  • SPRINGLETS_JPA:如果选择此提供程序,将使用Spring Boot提供的默认Spring Security自动配置。此外,此提供程序将在您的类路径中包含Springlets库,为您提供一些额外的启动程序来自动配置高级Spring Security属性。此外,配置要使用的安全性身份验证和数据库中的用户,而不是Spring Boot自动配置提供的默认内存中身份验证。您将能够使用application.properties文件管理这些配置,并包含属性springlets.security.auth.in-memory.enabledspringlets.security.auth.in-memory.erase-credentials

    • 如果选择此项,则以下更改将应用​​于您的项目:
      • springlets-boot-starter-authentication依赖项将包含在您的pom.xml文件中
      • 将包含
      • security.enable-csrf=true属性以启用CSRF。了解有关CSRF和Spring Security的更多信息here
    • 要了解有关Springlets Security项目的更多信息,请检查the Springlets project page

希望它有所帮助,