lrkgithub / Spring-Security-Reference-CN

8 stars 4 forks source link

4. Project Modules #2

Open lrkgithub opened 5 years ago

lrkgithub commented 5 years ago

4 项目模块

在 Spring Security 3.0 中,代码库已经被分为几个独立的 jar 包,这样可以更清晰的区分功能和第三方 jar 包依赖。如果你是用 Maven 来构建你的项目,那么这里有几个模块需要你加入到你的 pom.xml 中。即使你不使用 Maven ,我们仍建议你的参考这个 pom.xml 来了解第三方依赖以及版本。另外,检查示例程序包含的库是一个好主意。

4.1 Core-spring-security-core.jar

包含核心认证和访问控制的类和接口,远程支持和基础的配置 API 。任何使用 Spring Security 的程序都需要。支持独立应用,远程客户,方法(服务层)安全以及 JDBC 用户配置。包含如下的顶级包:

4.2 Remoting - spring-security-remoting.jar

提供与 Spring Remote 的集成。如果你不是在写一个使用 Spring Remoting 的客户端的话,并不需要使用这个模块。主要的 package 是:

4.3 Web - spring-security-web.jar

包含过滤器和 web 安全相关的基础代码。所有基于 servlet API 的依赖。如果你使用 Spring Security Web 安全认证服务和基于 URL 的认证控制。主要的package是:

4.4 Config - spring-security-config.jar

包含安全命名空间解析代码和 Java 配置代码。如果你使用 Spring Security XML 命名空间作为配置或者使用 Spring Security 的 Java 配置作为支持,那么你需要这个 jar 。这里主要的 package 是 org.springfranework.security.config 。这个包里的类并不希望被在项目中被直接使用。

4.5 LDAP - spring-security-ladp.jar

LDAP 认证和配置代码。如果你希望使用 LDAP 认证或控制 LDAP 用户条目。这里的顶级 package 是:org.springframework.security.ldap

4.6 OAuth 2.0 Core - spring-security-oauth2-core.jar

spriong-security-oauth2-core.jar 包含了提供支持 OAuth 2.0 框架和 OpenID Connect Core 1.0 的核心类和接口。当应用基于 OAuth 2.0 或者 OpenID Connection Core 1.0 来架构,例如,客户端,资源服务器,认证服务器等的时候,需要使用这个 jar 包。这个顶级 package 是: org.springframework.security.oauth2.core

4.7 OAuth 2.0 Client - spring-security-oauth2-client.jar

spring-security-oauth2-client.jar 是 Spring Security 提供给客户端来支持 OAuth 2.0 认证框架和 OpenID Connect Core。当应用需要利用 OAuth 2.0 登录和/或 OAuth 客户端支持,这个 jar 是必须的。顶级的 package 是 org.springframework.security.oauth2.client

4.8 OAuth 2.0 JOSE - spring-security-oauth2-jose.jar

spring-security-oauth2-jose.jar 包含 Spring Security 对 JOSE(JavaScript Object Signing and Encryption) 框架的支持。JOSE 框架的目的是在更方之间,安全的传递认证。它建立在一系列的规范之上:

它包含的顶级 package 有:

4.9 ACL - spring-security-acl.jar

特定的域对象 ACL 实现。用来在你的应用中,对特定的域对象应用安全策略。顶级 package 是: org.springframework.security.acls

4.10 CAS - spring-security-cas.jar

Spring Security 的 CAS 客户端集成。如果你希望把 Spring Security web 认证和 CAS 单点登录服务器一起使用。顶级 package 是:org.springframework.security.cas

4.11 OpenID - spring-security-openid.jar

OpenID web 认证支持。用来认证使用者对应一个外部 OpenID 服务器。顶级 package 是 org.springframework.security.openid 。需要 OpenID4Java 。

4.12 Test - spring-security-test.jar

支持 Spring Security 的测试。