使用Acegi保护Java应用程序,第1部分: 架构概览和安全过滤器 - 编程入门网
Acegi 立即调用 APF。
Default target URL 指定了成功进行身份验证和授权后呈现给用户的页面。 Authentication failure URL 指定了身份验证失败情况下用户看到的页面。 APF 从用户的请求对象中得到用户名、密码和其他信息。它将这些信息传送 给身份验证管理器。身份验证管理器使用适当的提供者从后端用户库中读取详细 的用户信息(如用户名、密码、电子邮件地址和用户访问权利或特权),对用户 进行身份验证,并将信息存储在一个 Authentication 对象中。 最后,APF 将 Authentication 对象保存在 SIF 之前创建的安全上下文中。 存储在安全上下文中的 Authentication 对象将用于做出授权决策。 APF 的配置如清单 3 所示: 清单 3. 配置 APF
可以从这段代码中看到,APF 依赖于上面讨论的这四个参数。每个参数都是 作为清单 3 所示的 <property> 标记配置的。 Logout Processing Filter Acegi 使用一个 Logout Processing Filer(LPF)管理注销处理。当客户机 发来注销请求时,将使用 LPF 进行处理。它标识了来自由客户机所调用 URL 的 注销请求。 LPF 的配置如清单 4 所示: 清单 4. 配置 LPF
使用Acegi保护Java应用程序,第1部分: 架构概览和安全过滤器(5)时间:2011-09-07 Bilal Siddiqui可以看到 LPF 在其构造方法中包含两个参数:注销成功 URL (/logoutSuccess.jsp)和处理程序列表。注销成功 URL 用来在注销过程完成 后重定向客户机。处理程序执行实际的注销过程;我在这里只配置了一个处理程 序,因为只需一个处理程序就可以使 HTTP 会话变为无效。我将在本系列下一篇 文章中讨论更多的处理程序。 Exception Translation Filter Exception Translation Filter(ETF)处理身份验证和授权过程中的异常情 况,比如授权失败。在这些异常情况中,ETF 将决定如何进行操作。 比如,如果一个没有进行身份验证的用户试图访问受保护的资源,ETF 将显 示一个登录页面要求用户进行身份验证。类似地,在授权失败的情况下,可以配 置 ETF 来呈现一个 Access Denied 页面。 ETF 的配置如清单 5 所示: 清单 5. 配置 ETF
|
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |