首先要理解SpringSecurity的模块,一共有11个模块
ACL :支持通过访问控制列表为域对象提供安全性
切面:一个很小的模块,当使用springSecurity注解时,会使用AspectJ的切面,而不是使用标准的SpringAOP
CAS客户端:提供与Jasig的中心认证服务进行集成的功能
配置(Configuration):包含通过xml和java配置springSecurity的功能支持
核心(Core):提供spring Security基本库
加密(Crypptography):提供了加密和密码编码的功能
LDAP:支持基于LDAP进行认证
OpenID:支持使用OpenID进行集中式认证。
Remoting:提供了对spring Remoting的支持
标签库:spring security的JSP标签库
WEB:提供spring security基于Filter的web安全性支持。
通过传统的wen.xml进行配置
<filter>
<filter-name>springSecurityFilterChain</filter-name>
<filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
</filter>
<filter-mapping>
<filter-name>springSecurityFilterChain</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
需要导的jar包
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-web</artifactId>
<version>5.1.4.RELEASE</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.springframework.security/spring-security-core -->
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-core</artifactId>
<version>5.2.2.RELEASE</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.springframework.security/spring-security-config -->
<!-- https://mvnrepository.com/artifact/org.springframework.security/spring-security-config -->
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-config</artifactId>
<version>5.1.6.RELEASE</version>
</dependency>