Open-Open

          皇家撒拉哥薩
          posts - 32, comments - 3, trackbacks - 0, articles - 1

          Jetspeed-2 心得隨筆(5)(完)-Security

          Posted on 2006-07-17 17:22 開源愛好者 閱讀(775) 評論(2)  編輯  收藏 所屬分類: Portal
          Jetspeed2 Security介紹的官方連結(jié):
          [url]http://portals.apache.org/jetspeed-2/multiproject/jetspeed-security/[url]

          J2使用JAAS的來處理security有關(guān)的問題。以之前裝在Tomcat上的J2為例,可以由c:\tomcat\conf\Catalina\localhost\jetspeed.xml及C:\tomcat\webapps\jetspeed\WEB-INF\web.xml看到有關(guān)JAAS Realm及l(fā)ogin的設(shè)定。

          大致上來說,JAAS包含Principal、Permission、Policy三個概念。在J2中有user、role、group三種Principal。而Permission基本上有page、portlet,tab等等,當(dāng)然也可以增加自訂的Permission。至於Policy,J2並沒有使用JAAS的policy檔,而是使用自帶的RdbmsPolicy,也就是把Policy的資訊存在資料庫中;而透過"適當(dāng)"的實作和設(shè)定,J2也可以使用相關(guān)App Server的JAAS。

          底下是官方的security元件架構(gòu)圖:

          在J2中,核心的部份就是"J2 Security Coarsed Services"裡的4個Manager元件。J2的JAAS login module實際上是使用UserManager來進行authentication;UserManager透過OJB自資料庫中取出user的資料例如UserPrincipal、Crendential等並進行authorization.

          當(dāng)透過UserManager認證完成以後,J2會同時將此User相對應(yīng)的所有Principal取出並建立此User的Subject。此後,當(dāng)SecurityValve執(zhí)行時,就會呼叫JAAS的Subject.doAsPrivileged(Subject,PrivilegedAction,AccessControlContext)進行有關(guān)authorization的動作。有興趣的可以參考org.apache.jetspeed.security.impl.AbstractSecurityValve的原始碼。

          J2在security的部份也提供了SPI的設(shè)計供開發(fā)人員加入自訂的認證方式,例如使用LDAP,參考底下官方的連結(jié)http://portals.apache.org/jetspeed-2/multiproject/jetspeed-security/ldap.html可以知道如何使用LDAP來進行J2上的認證。

          關(guān)於J2,其實還有很多部份值得介紹,例如Bridge、Profiler等等。可惜這些部份小弟並不是十分的了解,期待日後有更多高手能夠?qū)2做更多的介紹,小弟在此先向大家跪謝啦!!Orz


          Feedback

          # re: Jetspeed-2 心得隨筆(5)(完)-Security   回復(fù)  更多評論   

          2008-12-01 17:33 by 888
          goooooooooood!!!

          # re: Jetspeed-2 心得隨筆(5)(完)-Security [未登錄]  回復(fù)  更多評論   

          2009-07-30 12:46 by roger
          thanks
          主站蜘蛛池模板: 余姚市| 布拖县| 淄博市| 临潭县| 江口县| 西盟| 广安市| 建德市| 微山县| 资兴市| 萍乡市| 深圳市| 临沂市| 保康县| 黑山县| 万荣县| 库车县| 岳池县| 邵东县| 盖州市| 江城| 隆回县| 建宁县| 东乡| 横峰县| 阿巴嘎旗| 岳普湖县| 阜宁县| 贡觉县| 康平县| 惠安县| 岑溪市| 吴堡县| 平谷区| 肇东市| 襄汾县| 公主岭市| 逊克县| 顺平县| 营口市| 长宁区|