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

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

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

    dihin

    2006年7月24日 #

    cas實現sso注意的2個問題

    弄了一下午的cas安裝終于成功了,,現在將步驟敘述一下
    下載
    ????????
    cas-server-3.0.4.zip??????????????
    http://www.ja-sig.org/downloads/cas/cas-server-3.0.4.zip


    cas-client-2.0.11.zip? http://www.ja-sig.org/downloads/cas-clients/cas-client-2.0.11.zip

    環境為 winxp? tomcat5.5.17? jdk1.5.0_05
    1. 生成服務端證書
    keytool -genkey -alias casserver -keyalg RSA -keystore tomcat.jks
    CN:localhost
    其他的隨便??
    這里要注意姓名必須是服務器的域名 由于我是在本機所以是localhost
    如果不這樣寫就會報如下異常:
    java.io.IOException: HTTPS hostname wrong:? should be <localhost>

    這個異常出現在創建證書的第一個問題 姓名。其實這個“姓名”應該是域名。比如說localhost或是blogjava.net之類的。輸成了姓名,和真正運行的時候域名不符,就會出錯。瀏覽器無所謂,彈出一個對話框,用戶按一下就行了。但http client就直接拋出了異常。--google出來的

    2. 導出證書
    keytool -export -file cas.cer -alias?tomcat -keystore tomcat.jks

    3.把導出的證書導入到jre/lib/security的cacerts中
    這里又有一點要注意的?? 可能由于我的jre在線升級過一次 現在的工作的jre目錄在C:\Program Files\Java\jre1.5.0_06\ 所以要把證書導入到C:\Program Files\Java\jre1.5.0_06\lib\security的cacerts中去
    我一開始就是因為 導入到了%JAVA_HOME%的jre中 結果弄了半天都不成功報異常如下:
    javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

    4.配置tomcat使用ssl
    <Connector port="8443" maxHttpHeaderSize="8192"
    ?????????????? maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
    ?????????????? enableLookups="false" disableUploadTimeout="true"
    ?????????????? acceptCount="100" scheme="https" secure="true"
    ?????????????? clientAuth="false"http://單向SSL
    ?????????????? keystoreFile="C:\tomcat.jks" //我生成的keystore存放在c盤
    ?????????????? sslProtocol="TLS" />

    5.
    部署CAS應用
    ?
    解壓 cas-server-3.0.4.zip, 提取 \target\cas.war 文件,將 cas.war 文件復制到 TOMCAT 的安裝路徑 webapps 下,啟動 TOMCAT ,檢查 CAS
    應用是否正常啟動。

    6.客戶端配置
    下載cas-client-2.0.11.zip

    java/lib/casclient.jar考到 你所發布的webapp的WEB-INF/lib下
    修改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://localhost:8443/cas/login</param-value>
    ??????? </init-param>
    ??????? <init-param>
    ?????????? <param-name>edu.yale.its.tp.cas.client.filter.validateUrl</param-name>
    ?????????? <param-value>https://localhost:8443/cas/proxyValidate</param-value>
    ??????? </init-param>
    ??????? <init-param>
    ????????? <param-name>edu.yale.its.tp.cas.client.filter.serverName</param-name>
    ????????? <param-value>localhost:8443</param-value>
    ??????? </init-param>
    ??? </filter>
    ???
    ??? <filter-mapping>
    ??????? <filter-name>CASFilter</filter-name>
    ??????? <url-pattern>/*</url-pattern>
    ??? </filter-mapping>

    把里面的localhost換成域名
    8443換成你所使用的端口

    接著連接 https://localhost:8443/app1 ?? //app1是你要實現sso的web應用
    接著頁面就會跳轉到cas的登陸頁面 就像你在第5步看到的頁面一樣
    隨便用一個用戶名登陸 只要 用戶名和密碼一樣就可以登陸
    可以在app2上重復步驟6 這樣只要在app1上登陸后 再連接app2的url就不用再次登陸了
    這就是單點登陸了。

    ?其實是一個很簡單的事情 但是過程中要注意 步驟1和3

    ?

    ?

    ?

    ?


    posted @ 2006-07-24 17:50 狒狒 閱讀(4213) | 評論 (3)編輯 收藏

    2006年6月25日 #

    hibernate操作mysql的blob數據

    package hibernate;

    import java.sql.Blob;

    public class Blobtest  implements java.io.Serializable {

         
    private long id;
         
    private Blob image;

        
    public Blobtest() {
        }


        
    public Blobtest(Blob image) {
            
    this.image = image;
        }


        
    public long getId() {
            
    return this.id;
        }

        
        
    public void setId(long id) {
            
    this.id = id;
        }


        
    public Blob getImage() {
            
    return this.image;
        }

        
        
    public void setImage(Blob image) {
            
    this.image = image;
        }

    }
     測試寫入數據:
    package hibernate;

    import java.io.FileInputStream;
    import java.io.IOException;
    import java.io.InputStream;

    import org.hibernate.Hibernate;
    import org.hibernate.Session;
    import org.hibernate.Transaction;

    public class Test {
        
    public static void main(String[] args) throws IOException {
            InputStream in 
    = new FileInputStream("F:/lzx.jpg");        
            
    byte[] b = new byte[in.available()];
            in.read(b);
            in.close();
            Blobtest blobTest
    =new Blobtest();

            blobTest.setImage(Hibernate.createBlob(b));
            Session session
    =HibernateUtil.currentSession();
            Transaction tx
    =session.beginTransaction(); 
            session.save(blobTest); 
            tx.commit(); 
            System.out.print(
    "success"); 
            HibernateUtil.closeSession();
        }

    }

    讀出數據:
    package hibernate;

    import java.io.FileNotFoundException;
    import java.io.FileOutputStream;
    import java.io.IOException;
    import java.io.OutputStream;
    import java.sql.SQLException;

    import org.hibernate.Session;
    import org.hibernate.Transaction;

    public class TestWrite {
        
    public static void main(String[] args) throws IOException, SQLException {
            Session session
    =HibernateUtil.currentSession();
            Transaction tx
    =session.beginTransaction();
            Blobtest blobTest 
    = new Blobtest();
            blobTest 
    = (Blobtest) session.get(Blobtest.classnew Long(1));
            System.out.println(
    "qu chu shu ju");
            OutputStream out 
    = new FileOutputStream("F:/111.jpg");
            out.write(blobTest.getImage().getBytes(
    1,(int) blobTest.getImage().length()));
            out.flush();
            out.close();
            HibernateUtil.closeSession();
        }

    }

    posted @ 2006-06-25 02:00 狒狒 閱讀(3211) | 評論 (1)編輯 收藏

    僅列出標題  

    My Links

    Blog Stats

    常用鏈接

    留言簿(1)

    隨筆檔案

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 国产精品成人啪精品视频免费 | 亚洲日本va午夜中文字幕久久 | 四虎影院永久免费观看| 久久亚洲国产精品123区| 国产亚洲免费的视频看| 亚洲美女色在线欧洲美女| 91午夜精品亚洲一区二区三区| 亚洲国产成人精品激情| 老司机午夜性生免费福利| 日本不卡免费新一区二区三区 | 国产一区二区三区免费观看在线| 免费h片在线观看网址最新| 日本免费一区二区三区最新| 精品久久久久久亚洲| 亚洲AV香蕉一区区二区三区| 国产永久免费高清在线| 国产成人免费网站| 亚洲精品字幕在线观看| 亚洲欧美日韩综合久久久| 99久久免费观看| 国产亚洲精aa成人网站| 亚洲人成无码网站在线观看 | 在线观看免费无码专区| 狠狠色婷婷狠狠狠亚洲综合| 亚洲欧洲免费无码| 在线永久看片免费的视频| 亚洲中文字幕在线乱码| 一级毛片免费不卡| 亚洲精品国自产拍在线观看| 亚洲av无码专区在线观看下载| 30岁的女人韩剧免费观看| 亚洲精品乱码久久久久久蜜桃不卡 | 亚洲熟女综合色一区二区三区| 亚洲视频在线观看免费视频| 亚洲av中文无码乱人伦在线咪咕 | 在线日本高清免费不卡| 亚洲精品福利网站| 无码少妇一区二区浪潮免费| 亚洲乱码av中文一区二区| 免费看的一级毛片| 深夜A级毛片视频免费|