如何在Spring Boot应用中配置Spring Security?

栏目: 后端 · 发布时间: 8年前

内容简介:为了使用Spring Security,我们需要将spring-boot-starter-security放入Maven或Gradle配置文件中,通过这样方法将Spring Security放入到了类路径classpath中后,Spring Boot Web应用会默认使用基本身份验证进行自动保护,服务器启动时将在控制台中显示的默认用户名为“user”和随机密码(注意翻滚查看),它们可用于登录和身份验证。密码是随机的,并在重新启动服务器时更改。默认情况下,spring使用名为“user”的单个用户进行内存中

为了使用Spring Security,我们需要将spring-boot-starter-security放入Maven或Gradle配置文件中,通过这样方法将Spring Security放入到了类路径classpath中后,Spring Boot Web应用会默认使用基本身份验证进行自动保护,服务器启动时将在控制台中显示的默认用户名为“user”和随机密码(注意翻滚查看),它们可用于登录和身份验证。密码是随机的,并在重新启动服务器时更改。默认情况下,spring使用名为“user”的单个用户进行内存中身份验证。

1.要在Spring Boot应用程序中启用Spring Security,只需使用以下Spring Boot启动程序:

<dependency>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-security</artifactId>
</dependency> 

2. 更改默认密码,Spring Boot在application.properties提供security.user.password配置需要的属性,如下所示:

security.user.password= jdon

现在我们可以使用user / jdon登录应用程序了。其他安全属性可以在application.properties使用security.*前缀的配置来更改。


security.basic.enabled:启用基本身份验证。默认值为true
security.basic.path:它配置应用安全性的路径。我们需要提供逗号分隔的路径。
security.enable-csrf:它启用CSRF。默认值为false。
security.require-ssl:启用和禁用SSL。默认值为false。
security.sessions:默认值为无状态。值可以always, never,if_required,无stateless。
security.user.name:配置用户名。默认用户是user。
security.user.password:配置密码。
security.user.role:它配置角色。默认角色是USER。

3.如果x想微调日志记录配置,然后打印默认的随机密码,需要配置application.properties中日志水平为INFO:

logging.level.org.springframework.boot.autoconfigure.security= INFO

4. 默认静态路径不加密,例如/css/**,/js/**,/images/**,/webjars/**和**/favicon.ico。

5. Spring Security中默认提供HSTS,XSS,CSRF,缓存等功能。

如果我们想使用数据库中用户名和密码,那么我们需要使用UserDetailsService;要控制与安全相关的配置,我们可以创建一个安全配置类WebSecurityConfigurerAdapter的实现,然后扩展重载其configure()方法。这个类要用@Configuration和注释@EnableWebSecurity;如果我们要启用方法级安全性,则需使用注释配置类@EnableGlobalMethodSecurity。


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Modern PHP(中文版)

Modern PHP(中文版)

Josh Lockhart / 安道 / 中国电力出版社 / 2015-9 / 39

PHP正在重生,不过所有PHP在线教程都过时了,很难体现这一点。通过这本实用的指南,你会发现,借助面向对象、命名空间和不断增多的可重用的组件库,PHP已经成为一门功能完善的成熟语言。 本书作者Josh Lockhart是“PHP之道”的发起人,这是个受欢迎的新方案,鼓励开发者使用PHP最佳实践。Josh通过实践揭示了PHP语言的这些新特性。你会学到关于应用架构、规划、数据库、安全、测试、调试......一起来看看 《Modern PHP(中文版)》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

MD5 加密
MD5 加密

MD5 加密工具

SHA 加密
SHA 加密

SHA 加密工具