对于最新的稳定版本,请使用 Spring Security 6.4.1! |
您好 Spring Security
启动 Hello Spring Security Boot
现在,您可以使用 Maven 插件的目标运行 Spring Boot 应用程序。
以下示例显示了如何执行此操作(以及执行此操作的输出的开头):run
运行 Spring Boot 应用程序
$ ./mvn spring-boot:run
...
INFO 23689 --- [ restartedMain] .s.s.UserDetailsServiceAutoConfiguration :
Using generated security password: 8e557245-73e2-4286-969a-ff57fe326336
...
Spring Boot 自动配置
Spring Boot 自动:
-
启用 Spring Security 的默认配置,该配置将 Servlet 创建为名为 的 Bean。 此 Bean 负责应用程序中的所有安全性(保护应用程序 URL、验证提交的用户名和密码、重定向到登录表单等)。
Filter
springSecurityFilterChain
-
创建一个 Bean,其用户名和随机生成的密码将记录到控制台中。
UserDetailsService
user
-
为每个请求注册 到 Servlet 容器中命名的 bean。
Filter
springSecurityFilterChain
Spring Boot 的配置不多,但它做了很多。 功能摘要如下:
-
需要经过身份验证的用户才能与应用程序进行任何交互
-
为您生成默认登录表单
-
允许具有 的用户名和密码记录到控制台的用户使用基于表单的身份验证进行身份验证(在前面的示例中,密码为
user
8e557245-73e2-4286-969a-ff57fe326336
) -
使用 BCrypt 保护密码存储
-
允许用户注销
-
CSRF 攻击预防
-
安全标头集成
-
用于安全请求的 HTTP 严格传输安全性
-
缓存控制(稍后可由应用程序覆盖,以允许缓存静态资源)
-
X-Frame-Options 集成有助于防止点击劫持
-
-
与以下 Servlet API 方法集成: