从spring Security 3.0开始,代码被划分为几个jar包,可以更清楚的划分功能区和第三方依赖。如果你使用maven构建项目,下面的是你需要引入pom的依赖。
Core - spring-security-core.jar
包括核心认证和访问控制类和接口,远程支持和基本配置API。每一个使用spring Security的应用都需要引入。支持独立的应用,远程客户端,服务层方法安全和JDBC用户配置,包含下面的包:
- org.springframework.security.core
- org.springframework.security..access
- org.springframework.security..authentication
- org.springframework.security..provisioning
Remoting - spring-security-remoting.jar
提供spring 远程应用的整合,只有使用spring rmoting 编写远程客户端的时候才会使用到,主要的包:
org.springframework.security.remoting
Web - spring-security-web.jar
包括拦截器和网络安全基础代码,需要依赖servlet API,如果需要web安全认证服务和url访问控制,需要引入。
org.springframework.security.web
Config - spring-security-config.jar
包含命名空间解析代码和java配置代码。如果使用spring security的xml配置或者Java配置,需要引入。
org.spring framework.security.config
这里面的代码不能再应用中直接应用。
LDAP - spring-security-ldap.jar
LDAP认证和配置代码,在使用ldap认证和LDAP用户登记时需要引入。
org.springframework.security.ldap
OAuth 2.0 Core - spring-security-oauth2-core.jar
包含核心的类和接口支持OAuth2.0认证框架,和openID连接的核心代码,在使用
OAuth 2.0和
OpenID Connect Core 1.0时需要引入。
org.springframework.security.oauth2.core
OAuth 2.0 Client - spring-security-oauth2-client.jar
OAuth 2.0和OpenID Connect Core 1.0的客户端。
org.springframework.security.oauth2.client
OAuth 2.0 JOSE - spring-security-oauth2-jose.jar
包含了spring security对JOSE的支持,JOSE是做系统之间安全转换的,它有以下规范:
- Json Web Token(JWT)
- Json Web Signture(JWS)
- Json Web Encryption (JWE)
- Json Web Key(JWK)
有以下包:
org.springframework.security.oauth2.jwt
org.springframework.security.oauth2.jose
ACL - spring-security-acl.jar
专用域对象ACL实现,用于在应用程序中对特定域对象实例应用安全性。
org.springframework.security.acls
CAS - spring-security-cas.jar
spring security的cas集成,用于cas的sso认证,
org.springframework.security.cas
OpenID - spring-security-openid.jar
openid web 认证支持
org.springframework.security.openid
Test - spring-security-test.jar
用于测试