Acegi架構(gòu)
下圖為Acegi的架構(gòu)流程簡圖:

- 瀏覽器發(fā)出請求。
- 容器將請求包裝為請求物件與回應(yīng)物件,然后呼叫Acegi的Filter Chain Proxy,將請求物件與回應(yīng)物件傳遞給它。
- Filter Chain Proxy呼叫Filter Chain的第一個Filter,通常是Session Integration Filter,將請求物件與回應(yīng)物件傳遞給它。
- Session Integration Filter檢查Session物件是否存在,并且包括Security Context物件,如果否則建立Security Context物件并將之放入security context holder之中,一個存在于application scope的物件。
- 每個Filter完成后會呼叫下一個Filter。
- 每 個Filter會讀取或變更Security Context,每個Filter處理完成之后,最后控制權(quán)再度回到Session Integration Filter后,Session Integration Filter檢查Security Context是否有變更,如果有變更,使用Security Context中的資訊更新Session物件。
- 完成Filter Chain,控制權(quán)進入應(yīng)用程式,開始處理請求并準備回應(yīng)。
- 將結(jié)果回應(yīng)傳回至瀏覽器。
posted on 2008-09-26 17:01 劉錚 閱讀(198) 評論(0) 編輯 收藏 所屬分類: Acegi