CAS單點登入之生成證書
阿新 • • 發佈:2018-12-17
建立證書
證書是單點登入認證系統中很重要的一把鑰匙,客戶端於伺服器的互動安全靠的就是證書;由於是個人學習測試所以就直接用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可以獲取預設的使用者名稱和密碼資訊,後續會詳細說明該配置檔案。