使用 Sun Java System Access Manager实现单点登录

上传人:M****1 文档编号:510060848 上传时间:2022-09-28 格式:DOCX 页数:16 大小:516.42KB
返回 下载 相关 举报
使用 Sun Java System Access Manager实现单点登录_第1页
第1页 / 共16页
使用 Sun Java System Access Manager实现单点登录_第2页
第2页 / 共16页
使用 Sun Java System Access Manager实现单点登录_第3页
第3页 / 共16页
使用 Sun Java System Access Manager实现单点登录_第4页
第4页 / 共16页
使用 Sun Java System Access Manager实现单点登录_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《使用 Sun Java System Access Manager实现单点登录》由会员分享,可在线阅读,更多相关《使用 Sun Java System Access Manager实现单点登录(16页珍藏版)》请在金锄头文库上搜索。

1、使用 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)

2、的 XML 标准实现的,此标 准由结构化信息标准促进组织 (Organization for the Advancement of Structured Information Standards, OASIS) 的安全服务技术委员会制订。Sun Java System Access Manager 支持 SAML 规范的所有版本,包括最新的 2.0 版,用以实现验证和授权交换。有关 Sun Java System Access Manager 的详细信息,请参见其 文档。本文介绍了基本 SAML 概念,并说明了使用 SunJavaSystemAccessManager 7.1 (以后简称Ac

3、cess Manager)和SAML 1.x Web浏览器工件配置文件(在 下面定义)实现 SSO 的步骤。此处, IdP 是 Access Manager;SP 是 SAP Net Weaver En terprise Por tal 2004 (以后简称 SAP EP),它部署在 SAP NetWeaver Application Server Java (SAP J2EE Engine) 上。目录- 基本 SAML 概念- 过程流- 配置 Access Manager- 配置 SAP NetWeaver Application Server- 测试 SSO- 参考资料基本SAML概念SA

4、ML包含两个重要概念:声明,它声明了一些事实,这些事实包含有关主体(用户)的验证、授权或属性的信息。配置文件 ,它是一组规则,用于定义如何嵌入和提取声明。配置文件 说明了授权机构如何将声明与其他对象组合在一起、如何从授权机构传输 声明以及随后如何在可信业务伙伴站点对其进行处理。SAML 定义了以下两个配置文件:Web浏览器工件配置文件,它包含一个指针,指向到SP的HTTP 重定向的查询字符串中的 SAML 声明(称为工件),通常为参数SAMLart 。然后, SP 向 IdP 和工件发出直接 SOAP/HTTP 请求,从 而获取响应中的实际 SAML 声明 SAP J2EE Engine 实现

5、此配置文件。Web浏览器POST配置文件,它在IdP发送到SP的响应(作 为 HTML 表单的一部分)中包含 SAML 声明。两个配置文件随IdP和SP (本文中的Access Manager和SAP J2EE Engine )之间交换声明的方式而有所不同。过程流SSO的验证和授权过程如下所示:1. 用户通过Access Manager访问应用程序(如SAP EP),此应用程序 是为 SAML 验证配置的,并部署在 SAP J2EE Engine 上。2. 如果尚未进行验证, Access Manager 将对用户进行验证。3. Access Manager 为用户创建并存储验证声明。4. A

6、ccessManager 调用注册的插件,其中包括 NameIdentifierMapper。 Name Identifier Mapper 将经过验证的用户映射到验证声明中的用户名 称标识符,并使用映射的标识符对其进行更新。5. Access Manager 为声明创建一个工件,并为在 SAP J2EE Engine 中 注册的 SAML 接收方发出 HTTP 重定向。6. 浏览器将用户重定向到 SAP J2EE Engine 上的 SAML 接收方服务。7. SAP J2EE Engine上的SAML接收方将请求和工件转发到SAP EP,后 者配置了 SAML 登录模块。接下来,该登录模块

7、评估工件,然后根据工件 获取 IdP (Access Manager) 的主机名和端口号。8. SAP J2EE Engine 上的 SAML 登录模块生成一个包含工件的声明请求, 并将该请求作为简单对象访问协议 (Simple Object Access Protocol,SOAP)/HTTP 消息发送到 Access Manager 的 SAML SOAP 接收方。9. Access Manager 根据声明请求中的工件来获取相应的声明。10. Access Manager 将声明返回到 SAML 登录模块。11. 该模块分析声明并对用户进行验证。12. 在经过验证后,用户即可通过 SSO

8、 访问 SAP EP。图 1 说明了过程流。配置 Access Manager本部分介绍如何将Access Manager配置为与SAP J2EE Engine配合使用。为 SAP J2EE Engine 创建站点 ID首先,为 SAP J2EE Engine 创建站点 ID:1. 在运行 Access Manager 的计算机上解压缩此 ZIP 文件。2. 将 amgenSiteId 脚本中的 AM_HOME 指向正确的目录。注:仅当在非缺省位置 (/opt) 中安装 Access Manager 时,才需要执 行此步骤。3. 为 amgenSiteId 授予执行权限。4. 使用amgenS

9、iteld命令为SAP J2EE Engine生成站点ID。例如, 键入:% amgenSiteId http:/:50100注:请确保 URL 不包含末尾斜杠 (/)。要点:保存 ID 记录以备将来使用。配置 Java 虚拟机的类路径接下来,将 sap_saml_sso.jar 文件添加到部署了 Access Manager 的 Web 容器的 Java 虚拟机类路径中。通常,您在 Web 容器的管理控制台中执 行此任务。有关详细信息,请参见相关文档。确保重新启动 Web 容器以使更改生效。获取 Access Manager 的站点 ID现在,获取 Access Manager 的唯一站点

10、ID:1. 以 amAdmin 身份登录到 Access Manager。2. 单击Federation (联合)选项卡,然后单击SAML选项卡。3. 在Site Identifiers (站点标识符)下面,单击Instance ID (实例 ID)下第一个条目的链接。将显示Edit Site Identifier (编辑站点标识符)页,其中包含站点ID 以及其他相关信息。请参见图 2。4. 将站点ID (在图2中突出显示)保存在临时文件中以备将来使用。图2: Edit Site Identifier (编辑站点标识符)页将 SAP J2EE Engine 注册为可信业务伙伴接下来,在 Acc

11、ess Manager 中将 SAP J2EE Engine 注册为可信合作伙伴:1. 在Edit Site Identifier (编辑站点标识符)页上单击Back to SAML (返回到 SAML)。将显示用于在 Access Manager 中配置 SAML 的主页。2. 单击Trusted Partners (可信合作伙伴)下的New (新建)。将显示 Select trusted partner type and profile(选择可信合作伙伴 类型和配置文件)向导。3. 选择Destination (目标)下的Artifact (工件),并取消选中所有 其他选项。单击Next

12、(下一步)。将显示Add New Trusted Partner (添加新的可信合作伙伴)页。4. 指定下面所示的值,然后单击Finish (完成)。5.Source ID (源SAP J2EE Engine 的站点 ID。ID)Host List (主运行SAP J2EE Engine的计算机的IP地址。 机列表)Target (目标)运行SAP J2EE Engine的计算机的全限定名称。SAML URL SAP J2EE Engine上的SAML接收方的URL,通常采用 http:/ SAP_J2EE_host . domainname : portnumber /saml/receiv

13、er 形式。在某些情况下, http 可能为 httpsNamecom.sun.identity.saml.plugins.UidMapperIdentifierMapper6. 单击Save (保存)。Access Manager 将确认这些设置。请参见图 3。8. 验证用于在 Access Manager 中配置 SAML 的主页中的 TrustedPartners (可信合作伙伴)下面现在是否显示SAP J2EE Engine条目。下面是背后隐含的逻辑:Java类UidMapper实现 NameIdentifierMapper 接口,其方法 getNameIdentifier 返回 SA

14、ML 声明中 NameIdentifier 组件的值。实际上, UidMapper 从 AccessManager 令牌中检索经过验证的用户数据,并将其映射到用户的登录ID。这样,该 ID 便与 Access Manager 发送到 SAP J2EE Engine 的 SAML 声 明中的 NameIdentifier 组件相匹配。在 SAP J2EE Engine 中创建用户 为简便起见,本文中的示例使用简单用户映射,因此, SAP J2EE Engine 中 的每个用户在 Access Manager 中都有一个具有相同登录 ID 的用户条目。 但是, SSO 并 不要求使用简单用户映射。

15、可通过自定义帐户映射、名称标识 符映射以及属性映射来实现不同的映射。有关详细信息,请参见 Sun Java System Access Manager 7.1 Federation and SAML Administration Guide (Sun Java System AccessManager7.1 联合和 SAML 管理指南)的第 10 章。Sun Java System Identity Manager 允许以集中、自动和批量方式向来自多 个供应商的应用程序置备用户、角色和其他信息,其中包括 SAPEP、SAPR/3 和 SAP HR。有关详细信息,请参见 Sun Java System Identity Manager 文 档。作为一个测试,请按照 Sun Java System Access Manager 7.1 Administration Guide (Sun Java System Access Manager 7.管1 理指南) 第 6 章中的过程在 Access Manager 中创建用户。配置 S

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 建筑/环境 > 建筑资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号