Struts権限制御filter role RequestProcessor

862 ワード

1、基礎filter、モジュール化
2,roleベース
a,struct-configのaction定義roleロール
b,RequestProcessorではprocessメソッドがprocessLocaleを呼び出す
c 1、デフォルトではstrutsはrequest.isUserInRoleを呼び出してチェックします
  
(acegiなどのセキュリティフレームワークはrequest.isUserInRoleを書き換えることでstrutsと組み合わせて権限制御を行う    異なるコンテナは独自のHttpServeretRequestインタフェースを実現し,その中でそれぞれ異なるisUserInRoleメソッドを実現し,コンテナ特有の特性で権限を制御する目的を達成した.    装飾モードでrequestを修正してisUserInRoleを自分で制御する方法を実現することもできます.    )
c 2,クラスを記述するRoleRequestProcessor RequestProcessorはRequestProcessorを継承し,processRolesを書き換える.この方法ではSessionから自己定義権限を導入し,制御する.

   <action forward="/pages/roles/Admin.jsp" path="/roles/Admin" roles="admin"/>

<controller processorClass="com.compname.appname.common.struts.RoleRequestProcessor"/>