Java SAML 工具包项目推荐
java-saml 项目地址: https://gitcode.com/gh_mirrors/ja/java-saml
1. 项目基础介绍和主要编程语言
Java SAML 工具包 是一个开源的 Java 库,旨在帮助开发者在其 Java 应用程序中集成 SAML(安全断言标记语言)支持。SAML 是一种基于 XML 的标准,用于实现单点登录(SSO),广泛应用于企业级应用和云服务中。该项目的主要编程语言是 Java,适用于 Java 7 及以上版本。
2. 项目核心功能
Java SAML 工具包提供了以下核心功能:
- 单点登录(SSO)和单点登出(SLO):支持 SP(服务提供者)和 IdP(身份提供者)之间的 SSO 和 SLO 流程。
- 断言和名称 ID 加密:支持对 SAML 断言和名称 ID 进行加密,增强安全性。
- 消息签名:支持对 AuthNRequest、LogoutRequest 和 LogoutResponse 等消息进行数字签名,确保消息的完整性和真实性。
- 元数据发布:支持生成和发布 SP 元数据,便于与 IdP 进行集成。
- 灵活的配置:提供多种配置选项,允许开发者根据需求调整 SAML 设置。
3. 项目最近更新的功能
最近更新的功能包括:
-
版本 2.5.0:
- 移除了对 Java 7 的支持,依赖的 xmlsec 库更新至 2.1.4,修复了 CVE-2019-12400 漏洞。
- 将
strict
设置参数的默认值设置为true
,增强了安全性。 - 新增对 AuthNRequest 中 Subject 的支持,通过
nameIdValueReq
参数实现。 - 引入了 NVD 漏洞检查器 Maven 插件,以改进持续集成(CI)流程。
-
版本 2.4.0:
- 调整了
acs.jsp
以从 SAMLResponse 中提取 NameQualifier 和 SPNameQualifier。 - 扩展了
logout
方法,提供 NameQualifier 和 SPNameQualifier 参数。 - 新增
getNameIdNameQualifier
方法到 Auth 和 SamlResponse 类中。
- 调整了
这些更新进一步增强了 Java SAML 工具包的功能和安全性,使其更适用于现代企业级应用的需求。