WEB开发网
开发学院软件开发Java 使用 Acegi 保护 Java 应用程序,第 3 部分: 实现... 阅读

使用 Acegi 保护 Java 应用程序,第 3 部分: 实现对 Java 对象的访问控制

 2010-03-18 00:00:00 来源:WEB开发网   
核心提示: 步骤 2:从应用程序上下文中取回不安全的 bean 您现在具有一个对 XMLWebApplicationContext 对象的引用,XMLWebApplicationContext 类公开了一个 getBean() 方法,使用 Acegi 保护 Java 应用程序,第 3 部分: 实现对 Jav

步骤 2:从应用程序上下文中取回不安全的 bean
您现在具有一个对 XMLWebApplicationContext 对象的引用。XMLWebApplicationContext 类公开了一个 getBean() 方法,它包含 bean 的名称并在数组中查找 “使用 Spring 创建 Java 对象” 步骤 7 中准备的 bean。在本例中,该 bean 为 publicCatalog(未执行过代理),因此 XMLWebApplicationContext 将返回实际的 bean。

步骤 3:调用不安全 bean 的方法
现在您可以调用步骤 2 中获得的 publicCatalog bean 的任何方法。例如,清单 4 显示的 getData() 方法调用的执行没有应用任何访问控制并向应用程序返回类别数据。

步骤 4:从应用程序上下文取回安全 bean
安全 bean 与不安全 bean 的取回方式类似,惟一区别是:当您通过调用 getBean() 方法尝试取回安全 bean 时,您将获得安全对象的代理而不是实际的对象。该代理就是我在 “Spring IOC 发挥效用” 步骤 4 中解释的由 Spring 框架创建的同一个对象。

步骤 5:调用安全 bean 的方法
当调用安全 bean 的方法时,您在 步骤 4 中获得的代理对象将一个方法调用请求分配给拦截器。拦截器将检查试图访问方法的用户是否具有相应的访问权,从而处理方法调用请求。

您现在应该对 Spring 框架如何创建 Java 对象以及客户机应用程序如何与之交互有了清晰的了解。了解了这些内容后,就更加容易理解并利用 Acegi 的方法安全性拦截器,下一节将具体介绍该主题。

配置 Acegi 的方法安全性拦截器

只要应用程序试图访问由 Acegi 安全系统保护的 bean 方法,请求将被自动传递到 Acegi 的方法安全性拦截器。方法安全性拦截器的作用就是控制对安全 Java bean 的方法的访问。拦截器使用 Acegi 的身份验证和授权框架确认用户是否具有权利调用安全 Java bean 的方法,然后相应地作出响应。

上一页  4 5 6 7 8 9 10  下一页

Tags:使用 Acegi 保护

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接