acegi简单说明

本文详细介绍了 Acegi 安全框架的核心组件及其工作原理,包括过滤器管理器、提供者、处理程序等关键部分。同时阐述了过滤器链的工作流程及生命周期,帮助读者深入理解 Acegi 的运行机制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.acegi四大组件

过滤器 管理器 提供者 处理程序

过滤器 :由管理器来管理

管理器:起管理作用

提供者:管理器里包含多个提供者

处理程序:具体的执行程序

 

2.过滤器链里包含多个过滤器。第一个过滤器必须是Session Integration Filter (SIF),因为 SIF 是一个与安全相关的信息的占位符。其他 Acegi 过滤器将安全信息保存在安全上下文中,也会使用安全上下文中可用的安全信息。SIF 创建安全上下文并调用过滤器链中的其他过滤器。然后其他过滤器检索安全上下文并对其进行更改。

 

3.过滤器链的生命周期:

a.浏览器客户机向您的应用程序发送 HTTP 请求。

b.容器接收到 HTTP 请求并创建一个请求对象,该对象将封装 HTTP 请求中包含的信息。容器还创建一个各种过滤器都可处理的响应对象,从而为发出请求的客户机准备好 HTTP 响应。容器然后调用 Acegi 的过滤器链代理,这是一个代理过滤器。该代理知道应用的过滤器的实际顺序。当容器调用代理时,它将向代理发送请求、响应以及过滤器链对象

c.代理过滤器调用过滤器链中第一个过滤器,向其发送请求、响应和过滤器链对象。

d.链中的过滤器逐个执行其处理。有的会修改SIF创建的安全上下文对象

e.最后 过滤器将把请求和响应对象发送到应用程序中配置的拦截过滤器。

f.拦截器决定是否对发出请求的客户机进行授权,使它访问所请求的资源。

g.拦截器将控制权传输给应用程序(比如,成功进行了身份验证和授权的客户机请求的 JSP 页面)。

h.应用程序改写响应对象的内容。

i.响应对象已经准备好了,容器将响应对象转换为 HTTP 响应,并将响应发送到发出请求的客户机。

获得当前 web应用程序目录:

request.getSession().getServletContext().getRealPath("/");

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值