<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夜夜摸| 在线观看免费国产视频| 亚洲人成图片小说网站| 日韩免费在线中文字幕| 亚洲国产成人乱码精品女人久久久不卡 | 一级做a爰片性色毛片免费网站| 免费看www视频| 鲁死你资源站亚洲av| 免费a级毛片无码a∨性按摩| 免费亚洲视频在线观看| 国产L精品国产亚洲区久久| 99久久婷婷免费国产综合精品| 国产综合精品久久亚洲| 日韩免费在线视频| 亚洲另类精品xxxx人妖| 午夜无遮挡羞羞漫画免费| 男女猛烈xx00免费视频试看| 伊人久久大香线蕉亚洲五月天| 丝袜足液精子免费视频| 亚洲成熟xxxxx电影| 一个人看www在线高清免费看| 亚洲日本天堂在线| 久久久无码精品亚洲日韩软件| 日本免费在线观看| 亚洲日韩一中文字暮| www.亚洲色图| 色欲色香天天天综合网站免费| 亚洲另类视频在线观看| 亚洲av无码国产精品色在线看不卡| 国产精品成人啪精品视频免费 | 亚洲另类精品xxxx人妖| 亚洲成a人片在线播放| 久久午夜夜伦鲁鲁片免费无码| 亚洲同性男gay网站在线观看| 国产乱弄免费视频| 十九岁在线观看免费完整版电影| 亚洲精品中文字幕| 久久久久无码精品亚洲日韩| 精品国产免费观看| 91精品国产免费久久国语麻豆| 亚洲成AV人片高潮喷水|