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

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

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

    posts - 37,  comments - 53,  trackbacks - 0
    今天花了一個下午的時間,終于完成的cas配置的一次完整的運行。cas前世今生我就不介紹了,有興趣的朋友谷歌或是百度一下就可以有很詳細的了解了,重點記錄一下今天的配置過程和遇到的問題及解決方法。
    環境:瀏覽器(ie6.0,windows xp)
        cas server 在一臺Linux服務器,cas client在另外一臺linux服務器
        應用服務器為tomcat5.5.26
    初步的配置實用過程參考了http://www.tkk7.com/yida/archive/2007/04/03/55466.html的描述,各位亦可以訪問阿木的blog。整理如下:
    1.請下載到cas的官方網站下載cas-server(我用的是3.2)和cas-client(2.0.11),tomcat5.5.26
        cas的官方網站:http://www.ja-sig.org/products/cas/
    2.安裝cas-server,我們假定安裝cas-server的服務器為server1
        (1)請在server1服務器上安裝好jdk1.5或以上版本的jdk,tomcat5.5.26,并配置環境變量JAVA_HOME
        (2)將cas-server-3.2-release.zip解壓,將moudels目錄下cas-server-webapp-3.2.war拷貝到tomcat的webapps目錄下,修        改名稱為cas.war.
        (3)生成server1的安全證書:
          
    keytool -genkey -alias my-alias-name -keyalg RSA -keystore keystore-file
           (4)在server1
    配置https
                 在
    $CATALINA_HOME/conf/server.xml里修改為一下配置
                  <Connector port="8443" maxHttpHeaderSize="8192"
                   maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
                   enableLookups="false" disableUploadTimeout="true"
                   acceptCount="100" scheme="https" secure="true"
                   clientAuth="false" sslProtocol="TLS"
                   keystoreFile="/path/keystore-file" keystorePass="your-password"
                  />
              (5)導出server1的證書,
    用來給所有需要用到的客戶端導入
                   
    keytool -export -file myserver.cert -alias my-alias-name -keystore keystore-file
             
    (6)將導出的證書上傳的client1服務器上。
              (7)啟動server1上的tomcat,檢驗cas配置是否成功,訪問http://ip:8443/cas/login,如果能看到cas的登錄頁面則表示配                置成功。
    3.配置 cas-client,我們以tomcat下自帶的servlet-example為例子進行說明
        (1)
    請在client1服務器上安裝好jdk1.5或以上版本的jdk,tomcat5.5.26,并配置環境變量JAVA_HOME
      (2)
    將cas-client-2.0.11.zip解壓,把java/lib/casclient.jar拷貝到client1服務器上的
                webapps/servlets-examples/WEB-INF/lib目錄下(如果沒有就建一個)

      (3)在要使用CAS的客戶端client1里設置(以servlets-examples這個APP為例),我們使用ServletFilter(CAS client里提供            的)來實現SSO的檢查,修改servlets-examples/WEB-INF/web.xml,添加以下內容:
              <filter>
                    <filter-name>CASFilter</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://your.cas.server.name(eg:server1):port/cas/login</param-value>
                    </init-param>
                    <init-param>
                        <param-name>edu.yale.its.tp.cas.client.filter.validateUrl</param-name>
                        <param-value>https://your.cas.server.name(eg:server1):port/cas/proxyValidate</param-value>
                    </init-param>
                    <init-param>
                        <param-name>edu.yale.its.tp.cas.client.filter.serverName</param-name>
                        <param-value>your.client.server.name(eg:client1):port</param-value>
                    </init-param>
                </filter>
                <filter-mapping>
                    <filter-name>CASFilter</filter-name>
                        <url-pattern>/servlet/*</url-pattern>
                </filter-mapping>
           (4)
    在客戶端的JVM里導入信任的SERVER的證書(根據情況有可能需要管理員權限)
                
    keytool -import -keystore $JAVA_HOME/jre/lib/security/cacerts -file myserver.cert -alias my-alias-name
                 此時需要輸入密碼,默認密碼為changeit
    通過以上配置,基本完成cas-server和cas-client的配置,但是還有以下問題需要注意和解決
    由于cas的證書需要域名才能正確的進行認證信息的交互,不支持ip,如果server和client在同一臺機器上,可以使用localhost,如果像我們上面描述的三臺服務器這樣的環境,使用localhost或者ip是不能正常運行的。如果使用ip,運行時會拋出
    HTTPS hostname wrong 的錯誤,解決的方法如下:
    假設server1的ip為:192.168.10.1,client1的ip為192.168.10.2,開發機器(xp)的ip為:192.168.10.3
    在server1和client1上設置本機的域名映射:
    vi /etc/hosts 添加以下行
    192.168.10.1 cas.server
    在開發機器(xp)下,在C:\WINDOWS\system32\drivers\etc目錄下,編輯hosts文件,添加以下行
    192.168.10.1 cas.server

    重新生成cas-sever的服務器端的證書,在開始問“你的名字”或“DName”的時候,必須填寫你服務器所在域名(cas.server)
    然后重新到處服務器器端的證書,并將其導入到client1服務器的jvm

    最后修改
    修改servlets-examples/WEB-INF/web.xml中關于cas過濾器的配置:請將your.cas.server.name(eg:server1)修改為cas.server即可。重新啟動server1和client1的服務器上的tomcat就可正常運行。


    ttp://client1:8080/servlets-examples/servlet/HelloWorldExample
    系統會自動跳轉到一個驗證頁面,隨便輸入一個相同的賬號,密碼,嚴正通過之后就會訪問
    到真正的HelloWorldExample這個servlet了


    posted on 2008-03-25 18:05 雪地孤鴻 閱讀(4731) 評論(0)  編輯  收藏 所屬分類: sso

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


    網站導航:
     
    <2008年3月>
    2425262728291
    2345678
    9101112131415
    16171819202122
    23242526272829
    303112345

    常用鏈接

    留言簿(17)

    隨筆分類

    隨筆檔案

    文章檔案

    blog

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 午夜免费啪视频在线观看| 羞羞漫画页面免费入口欢迎你| 一个人晚上在线观看的免费视频| 好吊妞998视频免费观看在线| 亚洲国产成人久久99精品| 最近中文字幕免费完整| 91亚洲国产成人精品下载| 日本在线看片免费人成视频1000| 亚洲高清国产AV拍精品青青草原| 中文字幕在线免费观看视频| 久久久久久久尹人综合网亚洲| 久久精品成人免费观看| 亚洲免费视频网站| 国内精自视频品线六区免费 | 亚洲AV无码一区二区三区牲色| 成年男女男精品免费视频网站| 亚洲丶国产丶欧美一区二区三区| 国产精品黄页在线播放免费| 一级特黄a免费大片| 亚洲色中文字幕无码AV| 免费无码成人AV在线播放不卡| 亚洲一区在线视频观看| 免费国产人做人视频在线观看| 国产成人无码精品久久久免费| 亚洲精品综合一二三区在线| 五月亭亭免费高清在线| 国产精品亚洲一区二区在线观看 | 一级人做人a爰免费视频| 亚洲国产精品高清久久久| 在线a免费观看最新网站| 亚洲中文字幕无码爆乳app| 亚洲AV无码成H人在线观看 | 国产91色综合久久免费| 亚洲.国产.欧美一区二区三区| 亚洲色婷婷六月亚洲婷婷6月 | 岛国精品一区免费视频在线观看| 亚洲精品免费在线观看| 免费精品一区二区三区在线观看| 中文字幕一区二区三区免费视频| 亚洲明星合成图综合区在线| 免费v片在线观看无遮挡|