使用 Sun Java System Access Manager 和 SAML 实现 SSO 通过使用企业内的单点登录 (Single Sign-On, SSO),用户仅登录一次即可访问该企业的所有应用程序。SSO 实现需要以下内容: 身份认证提供者 (Identity Provider, IdP),用于验证用户 服务提供者 (Service Provider, SP),用于使用 IdP 检查验证状态,并确保为经过验证的用户授予执行相关任务的权限 IdP 和 SP 之间的验证和授权数据交换是通过一个名为 安全声明标记语言 (Security Assertion Markup Language, SAML) 的 XML 标准实现的,此标准由结构化信息标准促进组织 (Organization for the Advancement of Structured Information Standards, OASIS) 的安全服务技术委员会制订。 Sun Java System Access Manager 支持 SAML 规范的所有版本,包括最新的 2.0 版,用以实现验证和授权交换。有关 Sun Java System Access Manager 的详细信息,请参见其 文档。 本文介绍了基本 SAML 概念,并说明了使用 Sun Java System Access Manager 7.1(以后简称 Access Manager)和 SAML 1.x Web 浏览器工件配置文件(在下面定义)实现 SSO 的步骤。此处,IdP 是 Access Manager;SP 是 SAP NetWeaver Enterprise Portal 2004(以后简称 SAP EP),它部署在 SAP NetWeaver Application Server Java (SAP J2EE Engine) 上。 目录 - 基本 SAML 概念 - 过程流 - 配置 Access Manager - 配置 SAP NetWeaver Application Server - 测试 SSO - 参考资料 基本 SAML 概念 SAML 包含两个重要概念: 声明,它声明了一些事实,这些事实包含有关主体(用户)的验证、授权或属性的信息。 配置文件,它是一组规则,用于定义如何嵌入和提取声明。配置文件说明了授权机构如何将声明与其他对象组合在一起、如何从授权机构传输声明以及随后如何在可信业务伙伴站点对其进行处理。 SAML 定义了以下两个配置文件: Web 浏览器工件配置文件,它包含一个指针,指向到 SP 的 HTTP 重定向的查询字符串中的 SAML 声明(称为工件),通常为参数 SAMLart。然后,SP 向 IdP 和工件发出直接 SOAP/HTTP 请求,从而获取响应中的实际 SAML 声明SAP J2EE Engine 实现此配置文件。 Web 浏览器 POST 配置文件,它在 IdP 发送到 SP 的响应(作为 HTML 表单的一部分)中包...