快速业务通道

面向Java Web应用程序的OpenID,第2部分 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-14

面向Java Web应用程序的OpenID,第2部分

时间:2011-12-08 ibm J Steven Perry

为单点登录身份验证编写OpenID提供者

简介:本文中,您将学习如何使用 OpenID 保护 Java Web 应用程序资源,以防止被没有经过身份验证的用户的损害。在这个介绍 OpenID 身份验证规范的系列的第 2 部分中,Steve Perry 讲解如何使用 openid4java 库为单点登录场景创建 OpenID 提供者。通过在“闭环”架构中构建作为 OpenID 提供者的应用程序,可以让最终用户只需登录一次,即可访问多个应用程序。另外,您还将学习如何使用 OpenID Attribute Exchange (AX) 扩展定制 OpenID 依赖方和提供者之间的数据交换。

OpenID 是一个可靠的身份管理和身份验证解决方案,在世界各地有许多用户。它让最终用户可以使用一个得到广泛认可的用户 ID 访问许多网站和其他在线资源。在 第 1 部分 中,我介绍了 OpenID 身份验证规范,讲解了如何使用 openid4java 库实现把它集成到 Java Web 应用程序中。

第 1 部分主要关注 OpenID 依赖方 (RP),RP 是使用 OpenID 进行注册和身份验证的在线资源(比如网站或 MP3)。OpenID 身份验证 规范的另一半是 OpenID 提供者 (OP)。OP 帮助用户申请 OpenID,对用户进行身份验证以登录与 OpenID 兼容的 Web 资源。

目前已经有许多 OpenID 提供者(包括 第 1 部分 中讨论的 Java Web 应用程序注册系统所用的 OP,myOpenID),在大多数情况下不需要自己创建 OP。

在一种场景中构建自己的 OP 是有意义的:应用程序集群中的多个应用程序共享可信网络中的资源。在这种情况下,可能希望创建一个安全的 “闭环” 系统。这让用户可以同时登录所有应用程序,而不必分别登录每个应用程序,非常方便。让集群中的一个应用程序作为 OP,就可以为所有应用程序建立单点登录身份验证。

在本文中,我们要在闭环架构中编写一个 OpenID 提供者以保护许多应用程序。首先讨论一下单点登录身份验证的好处和结构,然后为集群架构编写一个简单的 OpenID 提供者。我们仍然使用 openid4java 库提供身份验证系统的核心运行时功能,从而确保我们的 OpenID 提供者符合 OpenID 身份验证规范。

单点登录身份验证

在某些企业场景中,与把所有功能构建为单一应用程序相比,把具有不同功能的应用程序组合起来更有意义。这样的应用程序集群常常是 B2B 的核心,每个参与方都提供某些服务,以此增加整个业务体系的价值。

开发这种集群的困难在于身份验证;让每个应用程序分别对最终用户进行身份验证是不可行的,至少从最终用户的角度来说不行。

在使用 OpenID 标准进行身份验证的集群系统中,每个参与的应用程序都把身份验证委托给 OP。每个应用程序确信对其功能和资源的访问是安全的,而最终用户在每次会话中只需登录一次。

我们来研究一下单点登录身份验证系统中的参与方。注意,下面讨论的架构基于 第 1 部分 中开发的示例应用程序。

OpenID 依赖方 (RP)

OpenID 依赖方 是网站或其他在线资源,它们要求对其内容的访问是安全的。RP 使用 OpenID 提供者 (OP) 验证用户的身份。RP 还可以使用 Simple Registration (SReg) 和/或 Attribute Exchange (AX) 扩展注册或识别用户的相关信息。当请求 OP 验证用户的身份时,RP 通过调用 openid4java 库发出 SReg 和 AX 请求。

OpenID 提供者 (OP)

OpenID 提供者为所有参与的应用程序提供身份验证。通过调用 openid4java 库成功地验证用户的身份之后,OP 就会满足来自 RP 的 SReg 和 AX 请求。在本文讨论的单点登录架构中,OP 处于中心位置。

面向Java Web应用程序的OpenID,第2部分(2)

时间:2011-12-08 ibm J Steven Perry

编写 OpenID 提供者

在前一篇文章中,讲解了如何使用 open

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号