使用Acegi保护Java应用程序,第3部分: 实现对Java对象的访问控制 - 编程入门网
使用Acegi保护Java应用程序,第3部分: 实现对Java对象的访问控制时间:2011-09-07 ibm Bilal Siddiqui使用基于方法的安全性保护 Java 类实例 这期共分三部分的系列文章介绍了如何使用 Acegi 安全系统保护 Java 企业 应用程序。系列文章的 第 1 部分 简单介绍了 Acegi 并解释如何使用其内置的 安全过滤器实现一个简单的、基于 URL 的安全系统。第 2 部分 介绍了如何编 写访问控制策略并将其保存到一个 LDAP 目录服务器,以及如何配置 Acegi 来 与目录服务器进行交互,从而实现访问控制策略。第 3 部分(也是本系列的最 后一篇文章)将演示如何在企业应用程序中使用 Acegi 保护对 Java 类实例的 访问。 首先我将介绍何时需要对 Java 类访问进行保护,包括文中引用的两个典型 企业应用程序场景。之后,我将解释 Spring 的反转控制(IOC)框架如何创建 可从 JSP 或 servlet 访问的 Java 类实例。我还将介绍有关 bean 代理 的重 要概念,Spring 正是使用它过滤对 Java 类的访问。最后,我将介绍如何对 Acegi 的方法安全性拦截器进行配置以控制对 Java 类的访问。我将对 第 2 部 分 中的示例程序进行增强,为实现安全的 Java 对象提供支持,从而结束本系 列的最后一篇文章。 由于本文的讨论构建在本系列前两部分的内容之上,因此会经常引用到 第 1 部分 和 第 2 部分 中的讨论和示例。因此,在继续阅读本文之前,在其他浏览 器窗口中打开前两期文章将有助于理解本文内容。 保护 Java 类的用例 您可能还记得,我曾在本系列的开头部分简单介绍了 企业应用程序安全性。 在那次讨论中我曾提到过一种场景,其中 URL 安全性并不能完全满足这种场景 的安全需求: 假设有这样一个 PDF 文档,其中包含了某制造业公司生产的特定产品的数据 。文档的一部分包含了设计数据,将由公司设计部分进行编辑和更新。文档另一 部分包含生产经理将使用到的生产数据。对于此类场景,需要实现更加细粒度的 安全性,对文档的不同部分应用不同的访问权限。 在继续阅读之前,请考虑更多的应用程序场景,除了实现 URL 安全性以外, 这些场景还要求您对单独的类访问进行保护。 业务自动化 业务自动化应用程序中的工作流由多个流程组成。例如,病理学实验室中执 行血液测试的工作流由若干个步骤组成,其中每个步骤可看作一个业务流程: 工作人员从病人处采集血液样本并为其分配一个 ID。 实验室技术人员对样本进行必要的测试并准备测试结果。 由具备相应资格的病理学专家根据测试结果编写测试报告。 很明显,每个流程分别由单独的授权用户执行。未授权的用户则无权执行流 程。例如,实验室研究人员只负责准备试验结果,而无权编写测试报告。 几乎所有的业务自动化应用程序都普遍使用授权的业务流程。通常,每个业 务流程被实现为一个 Java 类,并且需要使用合适的访问控制策略对所有类实施 保护。 企业对企业(Business-to-business)集成 Business-to-business (B2B) 集成指一种常见的场景,其中的两个企业实体 需要彼此公开各自的特定功能。例如,宾馆可能向旅游公司公开其房间预订功能 ,而后者使用该功能为游客预订空闲的房间。作为合作伙伴的旅游公司可能具有 一个特定的订房率。在这个场景中,宾馆的订房系统必须先对旅游公司进行身份 验证,然后才能允许他们访问所选择的类,以便按照特定的订房率进行房间预订 。 使用Acegi保护Java应用程序,第3部分: 实现对Java对象的访问控制(2)时间:2011-09-07 ibm Bilal Siddiqui使用 Spring 创建 Java 对象 现在您已经了解了对 Java 类示例的访问进行保护的重要性。在介绍能够实 现更高级安全性的 Acegi 新功能之前,我将引导您回顾 Spring 框架的几个关 键特性,您需要了解这些内容才 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |