隨筆-295  評論-26  文章-1  trackbacks-0

          五?FAQ?

          5.1 FAQ

          1. Q: ? 能否脫離Spring框架來使用Acegi?
            A:? 雖然Acegi 沒有要求必須使用Spring Framework,但事實上Acegi很大程度上利用了Spring的IOC和AOP,很難脫離Spring的單獨使用。
          2. Q:? Acegi有對xfire的支持嗎?
            A: 有,詳見http://jira.codehaus.org/browse/XFIRE-389
          3. Q: 為何無論怎么設置都返回到登陸頁面無法成功登陸?
            A:? 檢查登陸頁面或登陸失敗頁面是否只有ROLE_ANONYMOUS權限

          5.2 Acegi 補習班

          要了解Acegi,首先要了解以下幾個重要概念:

          1. Authentication
            Authentication對象包含了principal, credentials 和 authorities(authorities要賦予給principal的),同時也可以包含一些附加的認證請求信息,如TCP/IP地址和Session id等。
          2. SecurityContextHolder
            SecurityContextHolder包含ThreadLocal私有屬性用于存取SecurityContext, SecurityContext包含Authentication私有屬性, 看以下一段程序


            public void getSecurityContextInformations() {
            ??SecurityContext sc = SecurityContextHolder.getContext();
            ??Authentication auth = sc.getAuthentication();
            ??Object principal = auth.getPrincipal();
            ??if (principal instanceof UserDetails) {
            ???//用戶密碼
            ???String password = ((UserDetails) principal).getPassword();
            ???//用戶名稱
            ???String username = ((UserDetails) principal).getUsername();
            ???//用戶權限
            ???GrantedAuthority[] authorities = ((UserDetails) principal).getAuthorities();
            ???for (int i = 0; i < authorities.length; i++) {
            ????String authority = authorities[i].getAuthority();
            ???}
            ??}
            ??Object details = auth.getDetails();
            ??if (details instanceof WebAuthenticationDetails) {
            ???//用戶session id
            ???String SessionId = ((WebAuthenticationDetails) details).getSessionId();
            ??}
            ?}
          3. AuthenticationManager
            通過Providers驗證在當前 ContextHolder中的Authentication對象是否合法。
          4. AccessDecissionManager
            經過投票機制來審批是否批準操作
          5. RunAsManager
            當執行某個操作時,RunAsManager可選擇性地替換Authentication對象
          6. Interceptors
            攔截器(如FilterSecurityInterceptor,JoinPoint,MethodSecurityInterceptor等)用于協調授權,認證等操作


          大盤預測 國富論
          posted on 2007-09-12 14:46 華夢行 閱讀(153) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 伊宁县| 正定县| 屏东县| 安义县| 蓬莱市| 禄劝| 德钦县| 松阳县| 军事| 滕州市| 石嘴山市| 杭州市| 恩平市| 陕西省| 无锡市| 龙南县| 内黄县| 巴青县| 天柱县| 兴业县| 陆川县| 平江县| 常山县| 怀仁县| 阿克苏市| 贡觉县| 鄢陵县| 霞浦县| 二连浩特市| 收藏| 习水县| 武平县| 玛多县| 红安县| 太仆寺旗| 延津县| 德昌县| 保德县| 丹阳市| 江门市| 昭通市|