<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    常言笑的家

    Spring, Hibernate, Struts, Ajax, RoR

    Acegi 使用 Acl(2)

    流程說完了,接下對上面提到的問題解釋一下:

    引用

    先使用URL攔截的方式去對付大多數(shù)的情況,然后少數(shù)URL搞不定的再加一個接口,讓Action自己去判別。這樣用兩個攔截器對Action進(jìn)行攔截,如果Action實現(xiàn)了hasPermission接口,那么就交給Action自己判斷,如果Action沒有該接口,就查找內(nèi)部的URL和權(quán)限的對照表來判斷。

     

    這個情況比較復(fù)雜,因為是要對Action進(jìn)行調(diào)用,所以要看使用的web框架來定奪。是用不同Web框架要是用不同的Web框架攔截器。所以恐怕acegi力不從心,挺多在filter里面配置一下是否要是用Action自身校驗。但是想法很好,贊。

     

    引用

    你怎么把信息有效的傳遞給Web層和其他的Facade層進(jìn)行用戶友好性的提示處理?

     

    acegi校驗失敗的時候會拋出AuthenticationException異常,然后放在session里面,
    在錯誤轉(zhuǎn)向頁面可以這樣是用

    代碼
    <%= ((AuthenticationException) session.getAttribute(AbstractProcessingFilter.ACEGI_SECURITY_LAST_EXCEPTION_KEY)).getMessage() %>    
    <%= session.getAttribute(AuthenticationProcessingFilter.ACEGI_SECURITY_LAST_USERNAME_KEY) %>    
    <%= session.getAttribute(SecurityEnforcementFilter.ACEGI_SECURITY_ACCESS_DENIED_EXCEPTION_KEY) %> 

    不過這么用實在太難看了,暈了。可以自己用tag來搞定

     

     

    引用

    很多系統(tǒng)需要根據(jù)權(quán)限不同,生成不同的UI組件(例如管理員的菜單和普通用戶菜單就肯定不一樣),這也需要在Web層的View進(jìn)行控制。

    acegi對View的處理就是使用tag,原來的acegi好像沒有什么tag,簡直是爛,現(xiàn)在有了tag,說一下是用的方法,但是說實話他的tag實在是不夠強(qiáng)。

     

    老版的web.xml

    代碼
    1<taglib>   
    2  <taglib-uri>http://acegisecurity.sf.net/authz</taglib-uri>   
    3  <taglib-location>/WEB-INF/authz.tld</taglib-location>   
    4</taglib>  

    在頁面中使用
    代碼
    1<authz:authorize ifAllGranted="ROLE_SUPERVISOR">   
    2<td>   
    3<HREF="del.htm?id=<c:out value="/${contact.id}"/>">Del</A>   
    4</td>   
    5</authz:authorize>  

    ifAllGranted是說所有的權(quán)限都有,用','分割權(quán)限
    可以替換成ifAnyGranted: ifNotGranted:

     

     

    代碼
    1<authz:authentication operation="username"/>   

     

    這個是用來顯示你的權(quán)限信息的。

     

    代碼
    1<authz:acl domainObject="${contact}" hasPermission="16,1">   
    2<td><HREF="<c:url value="del.htm"><c:param name="contactId"   
    3value="${contact.id}"/></c:url>">Del</A></td>   
    4</authz:acl>  

    posted on 2006-12-16 22:31 常言笑 閱讀(305) 評論(0)  編輯  收藏 所屬分類: JAVA/J2EE

    My Links

    Blog Stats

    常用鏈接

    留言簿(5)

    隨筆分類

    隨筆檔案

    搜索

    積分與排名

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 国产黄色片在线免费观看| 亚洲精品无码av人在线观看| 亚洲午夜免费视频| 色www永久免费| 亚洲精品亚洲人成在线观看| 国产无限免费观看黄网站| 亚洲精品一级无码鲁丝片| 亚洲天天做日日做天天欢毛片| 黄网站色视频免费在线观看的a站最新| 亚洲精品无码久久久| 一区二区免费在线观看| 狠狠综合久久综合88亚洲| 国内精品免费在线观看| 亚洲狠狠综合久久| 最近在线2018视频免费观看| 亚洲国产精品专区| 在线观看免费无码专区| xvideos亚洲永久网址| 一级白嫩美女毛片免费| 国产精品亚洲片在线| 91福利免费体验区观看区| 国产AV无码专区亚洲AV漫画| 人妻在线日韩免费视频| 亚洲理论在线观看| 免费网站看av片| 亚洲av无码国产综合专区| 国产精品无码一区二区三区免费| 免费人成大片在线观看播放电影 | 黄页网站在线免费观看| 亚洲中文字幕在线第六区| 久久久久免费看成人影片| 亚洲91精品麻豆国产系列在线| 日韩一品在线播放视频一品免费| xxxxx做受大片在线观看免费| 亚洲国产精品热久久| 免费观看黄网站在线播放| 亚洲视频一区在线播放| 永久免费无码网站在线观看 | 国产午夜亚洲精品不卡| 亚洲va无码专区国产乱码| 国产猛男猛女超爽免费视频|