前言:
现在朋友们对“springsecurity配置类”可能比较注意,咱们都想要了解一些“springsecurity配置类”的相关文章。那么小编同时在网上网罗了一些对于“springsecurity配置类””的相关内容,希望各位老铁们能喜欢,你们快快来了解一下吧!上一篇文章《Spring Security(二) :Guides》,通过Spring Security的配置项了解了Spring Security是如何保护我们的应用的,本篇文章对上一次的配置做一个讲解。
3 核心配置解读
3.1 功能介绍
这是Spring Security入门指南中的配置项:
当配置了上述的javaconfig之后,我们的应用便具备了如下的功能:
除了“/”,”/home”(首页),”/login”(登录),”/logout”(注销),之外,其他路径都需要认证。指定“/login”该路径为登录页面,当未认证的用户尝试访问任何受保护的资源时,都会跳转到“/login”。默认指定“/logout”为注销页面配置一个内存中的用户认证器,使用admin/admin作为用户名和密码,具有USER角色防止CSRF攻击Session Fixation protection(可以参考我之前讲解Spring Session的文章,防止别人篡改sessionId)Security Header(添加一系列和Header相关的控制)HTTP Strict Transport Security for secure requests集成X-Content-Type-Options缓存控制集成X-XSS-Protection.aspx)X-Frame-Options integration to help prevent Clickjacking(iframe被默认禁止使用)为Servlet API集成了如下的几个方法HttpServletRequest#getRemoteUser())HttpServletRequest.html#getUserPrincipal())HttpServletRequest.html#isUserInRole(java.lang.String))HttpServletRequest.html#login(java.lang.String, java.lang.String))HttpServletRequest.html#logout())
3.2 解读@EnableWebSecurity
我们自己定义的配置类WebSecurityConfig加上了@EnableWebSecurity注解,同时继承了WebSecurityConfigurerAdapter。你可能会在想谁的作用大一点,先给出结论:毫无疑问@EnableWebSecurity起到决定性的配置作用,他其实是个组合注解,背后SpringBoot做了非常多的配置。
标签: #springsecurity配置类 #springsecurity配置解析 #spring security配置详解