1. 程式人生 > >CAS單點登入之生成證書

CAS單點登入之生成證書

建立證書

證書是單點登入認證系統中很重要的一把鑰匙,客戶端於伺服器的互動安全靠的就是證書;由於是個人學習測試所以就直接用JDK自帶的keytool工具生成證書;如果以後真正在產品環境中使用肯定要去證書提供商去購買,證書認證一般都是由VeriSign認證,中文官方網站:http://www.verisign.com/cn/

用JDK自帶的keytool工具生成證書:

keytool -genkey -alias cas -keyalg RSA -keystore e:/keys/cas

根據提示資訊輸入相關資料回車即可(這裡注意要記住建立時的密碼)。

 

3、匯出證書

keytool -export -file e:/keys/cas.crt -alias cas -keystore e:/keys/cas

如果提示:

keytool error: java.io.IOException: Keystore was tampered with, or password was incorrect

那麼請輸入密碼:changeit

至此匯出證書完成,可以分發給應用的JDK使用了。

 

4、為客戶端的JVM匯入證書

keytool -import -keystore "C:\Program Files\Java\jdk1.8.0_101\jre\lib\security\cacerts" -file e:/keys/cas.crt -alias cas

同第3步一樣,如果提示輸入密碼,請輸入changeit,至此證書的建立、匯出、匯入到客戶端JVM都已完成,下面開始使用證書到Web伺服器中,這裡我使用的是tomcat7伺服器。

 

5、應用證書到web伺服器

開啟tomcat目錄的conf/server.xml檔案,設定如下:

<Connector port="8443" protocol="org.apache.coyote.http11.Http11Protocol"
               maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
               clientAuth="false" sslProtocol="TLS" keystoreFile="e:/keys/cas"  
               keystorePass="111111"/>

引數說明:

  • keystoreFile:在第一步建立的key存放位置
  • keystorePass:建立證書時的密碼

 

6、啟動tomcat伺服器

將第1步下載好的war包放到tomcat的webapp目錄下,啟動tomcat,訪問https://localhost:8443/cas/login頁面,輸入casuser/Mellon可以成功登入表示伺服器已經搭建完成。

檢視配置檔案deployerConfigContext.xml可以獲取預設的使用者名稱和密碼資訊,後續會詳細說明該配置檔案。