herodby
          技術 筆記
          posts - 14,  comments - 14,  trackbacks - 0
          STEP 1,搭建Java Web服務器環(huán)境
          安裝 JDK + Tomcat 6.0.14 , HTTP端口8080 , HTTPS端口8443
          JAVA_HOME = D:\Java\jdk1.6.0_04
          CATALINA_HOME = D:\Java\apache-tomcat-6.0.14
          安裝完畢,啟動Tomcat ,在瀏覽器上 測試 http://Linly:8080/

          出現(xiàn)上述界面,表明系統(tǒng)STEP1成功搭建。

          STEP 2,使用Java Keytool工具為系統(tǒng)生成HTTPS證書,并為系統(tǒng)注冊
          (Java Keytool相關資料可參閱:Java keytool 安全證書學習筆記), 在DOS窗體運行以下指令(建議編寫一個BAT批處理文件執(zhí)行)
          [quote]
          cls
          rem please set the env JAVA_HOME before run this bat file
          rem delete alia tomcat if it is existed
          keytool -delete -alias tomcatsso -keystore %JAVA_HOME%/jre/lib/security/cacerts -storepass changeit
          keytool -delete -alias tomcatsso -storepass changeit
          (注釋: 清除系統(tǒng)中可能存在的名字為tomcatsso 的同名證書)
          rem list all alias in the cacerts
          keytool -list -keystore %JAVA_HOME%/jre/lib/security/cacerts -storepass changeit
          (注釋: 列出系統(tǒng)證書倉庫中存在證書名稱列表)
          rem generator a key
          keytool -genkey -keyalg RSA -alias tomcatsso -dname "cn=linly" -storepass changeit
          (注釋:指定使用RSA算法,生成別名為tomcatsso的證書,存貯口令為changeit,證書的DN為"cn=linly" ,這個DN必須同當前主機完整名稱一致哦,切記!!!)rem export the key
          keytool -export -alias tomcatsso -file %java_home%/jre/lib/security/tomcatsso.crt -storepass changeit
          (注釋: 從keystore中導出別名為tomcatsso的證書,生成文件tomcatsso.crt)rem import into trust cacerts
          keytool -import -alias tomcatsso -file %java_home%/jre/lib/security/tomcatsso.crt -keystore %java_home%/jre/lib/security/cacerts -storepass changeit
          (注釋:將tomcatsso.crt導入jre的可信任證書倉庫。注意,安裝JDK是有兩個jre目錄,一個在jdk底下,一個是獨立的jre,這里的目錄必須同Tomcat使用的jre目錄一致,否則后面Tomcat的HTTPS通訊就找不到證書了)
          rem list all alias in the cacerts
          keytool -list -keystore %JAVA_HOME%/jre/lib/security/cacerts -storepass changeit
          (注釋:列出jre可信任證書倉庫中證書名單,驗證先前的導入是否成功,如果導入成功,應該在列表中能找到tomcatsso這個別名,如下圖)[/quote]

          同時,在D:\Java\jdk1.6.0_04\jre\lib\security目錄下能找到“tomcatsso.crt”這個文件;在C:\Documents and Settings\Linly目錄下能找到“.keystore”文件。
          滿足上述條件則STEP2部署完成。

          STEP 3,配置Tomcat的HTTPS服務
          編輯D:\Java\apache-tomcat-6.0.14\conf下的server.xml文件,在connector的配置位置添加以下的配置:
          [quote]<Connector protocol="org.apache.coyote.http11.Http11Protocol"
          port="8443" minSpareThreads="5" maxSpareThreads="75"
          enableLookups="true" disableUploadTimeout="true"
          acceptCount="100" maxThreads="200"
          scheme="https" secure="true" SSLEnabled="true"
          keystoreFile="C:/Documents and Settings/new/.keystore" keystorePass="changeit"
          truststoreFile="D:/Java/jdk1.6.0_04/jre/lib/security/cacerts"
          clientAuth="false" sslProtocol="TLS"/>[/quote]

          啟動Tomcat,訪問https://linly:8443/,出現(xiàn)以下界面說明HTTPS配置生效:


          STEP 4,為HelloWorldExample程序配置CAS過濾器
          訪問http://linly:8080/examples/servlets/servlet/HelloWorldExample,出現(xiàn)以下界面說明應用正常啟動:

          編輯D:\Java\apache-tomcat-6.0.14\webapps\examples\WEB-INF下的web.xml文件,添加如下信息:
          [quote]<filter>
          <filter-name>CAS Filter</filter-name>
          <filter-class>edu.yale.its.tp.cas.client.filter.CASFilter</filter-class>
          <init-param>
          <param-name>edu.yale.its.tp.cas.client.filter.loginUrl</param-name>
          <param-value>https://Linly:8443/cas/login</param-value>
          </init-param>
          <init-param>
          <param-name>edu.yale.its.tp.cas.client.filter.validateUrl</param-name>
          <param-value>https://Linly:8443/cas/serviceValidate</param-value>
          </init-param>
          <init-param>
          <param-name>edu.yale.its.tp.cas.client.filter.serverName</param-name>
          <param-value>Linly:8080</param-value>
          </init-param>
          </filter>
          [/quote]

          [quote]
          <filter-mapping>
          <filter-name>CAS Filter</filter-name>
          <url-pattern>/servlets/servlet/HelloWorldExample</url-pattern>
          </filter-mapping>
          [/quote]

          拷貝casclient.jar文件到目錄D:\Java\apache-tomcat-6.0.14\webapps\examples\WEB-INF\lib下。
          由于我們使用的是Tomcat6.0.14,因此,還要拷貝commons-logging-1.0.4.jar到該目錄下。

          STEP 5,部署JA-SIG(CAS)服務器
          拷貝cas.war到D:\Java\apache-tomcat-6.0.14\webapps目錄下。啟動Tomcat,訪問網址http://linly:8080/cas/index.jsp,出現(xiàn)以下畫面:

          輸入用戶名/密碼 :linly/linly(任意兩個相同的字竄),點擊“登錄”,出現(xiàn)以下畫面:

          表示CAS服務器配置運行成功。


          STEP 6,測試JA-SIG(CAS)部署結果
          啟動Tomcat。
          測試使用瀏覽器登陸以下網址:http://linly:8080/examples/servlets/servlet/HelloWorldExample,頁面將彈出以下認證框,點擊“確定”


          頁面將重定向到JA-SIG的SSO登錄認證頁面



          輸入用戶名=密碼,如:linly/linly,則通過驗證,進入應用的入口界面,如下:


          細心的用戶將發(fā)現(xiàn),此時的URL不再是:
          http://linly:8080/examples/servlets/servlet/HelloWorldExample,
          URL的尾端帶上了一個ticket參數(shù):
          http://linly:8080/examples/servlets/servlet/HelloWorldExample?ticket=ST-2-qTcfDrdFb0bWndWgaqZD
          到此,JA-SIG(CAS)服務器的初步SSO部署宣告成功。
          posted on 2008-06-28 16:47 鄧兵野 閱讀(1726) 評論(2)  編輯  收藏 所屬分類: sso單點登錄

          FeedBack:
          # re: CAS 學習第一篇
          2008-06-29 08:38 | 拼命三郎
          怎么看不見圖片?  回復  更多評論
            
          # re:
          2008-12-28 17:48 | df
          df  回復  更多評論
            

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


          網站導航:
           

          <2008年6月>
          25262728293031
          1234567
          891011121314
          15161718192021
          22232425262728
          293012345

          常用鏈接

          留言簿(2)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 海晏县| 湟源县| 栾城县| 普定县| 四川省| 荃湾区| 湛江市| 乌鲁木齐县| 河西区| 霞浦县| 南安市| 光泽县| 泰兴市| 漠河县| 河西区| 红原县| 益阳市| 嘉善县| 桃园县| 河源市| 长春市| 都江堰市| 商丘市| 综艺| 宜昌市| 沿河| 明光市| 汶川县| 西盟| 临泉县| 咸宁市| 昭平县| 托克逊县| 卢湾区| 新乡市| 湘阴县| 湘乡市| 台前县| 邳州市| 阿拉善盟| 客服|