1.由於是本地模擬sso環境,而sso的環境測試須要域名,因此須要虛擬幾個域名出來,步驟以下:web
2.進入目錄C:\Windows\System32\drivers\etc
apache
3.修改hosts文件tomcat
127.0.0.1 jeesz.cn架構
127.0.0.1 sso1.jeesz.cnapp
127.0.0.1 sso2.jeesz.cnwebapp
4.生成認證證書測試
注意:咱們能夠根據sso單點登陸的架構圖能夠看到,在客戶端和服務端進行交互的時候,是須要認證的,在這裏咱們使用jdk中的keytool方案生成證書(通常正式環境,使用正規機構頒發的證書,能夠去購買)server
(一)建立一個caskey目錄,如:D:\sso-cas\caskeyxml
(二)打開cmd的命令窗口:
ssl
(三)進入jdk bin的安裝目錄
(四)使用keytool -genkey -alias mycacerts -keyalg RSA -keystore D:/sso-cas/caskey/keycard 生成key
注意:輸入相關信息用於生成證書. 其中名字與姓氏使用你的域名,保持和C:\Windows\System32\drivers\etc\hosts 文件中映射域名相同,注意不要寫成IP。
在這裏我使用的口令是minglisoft(這個要記住,後面還會使用到)
名字姓氏使用的是jeesz.cn(對應host中的域名配置)
(五)使用命令keytool -export -file D:/sso-cas/caskey/keycard.crt -alias mycacerts -keystore D:/sso-cas/caskey/keycard導出證書:
注意:口令爲minglisoft
(六)將證書導入到 JDK 安裝目錄
Keytool -import -keystore C:/"Program Files"/Java/jdk1.8.0_131/jre/lib/security/cacerts -file D:/sso-cas/caskey/keycard.crt -alias mycacerts
備註:我已經幫忙生成了,最終要將cacerts拷貝到C:\Program Files\Java\jdk1.8.0_131\jre\lib\security目錄便可
注意口令:minglisoft
5. 準備好服務端的tomcat容器,這裏使用的是tomcat8進行測試(首先要保證tomcat啓動後是能夠運行的),以下:
6.修改server.xml文件,以下:
注意: 這裏使用的是https的認證方式,須要將這個配置放開,並作以下修改:
<Connector
port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS"
keystoreFile="D:/sso-cas/caskey/keycard"
keystorePass="minglisoft"
/>
注意: keystoreFile="D:/sso-cas/caskey/keycard" --證書了路徑
keystorePass="minglisoft" --證書密碼
7.測試https的8443端口是否能夠訪問:https://localhost:8443
配置沒有問題
8.能夠配置只經過域名訪問,仍是修改server.xml文件,將localhost的配置修改成jeesz.cn以下:
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true">
<Host name="jeesz.cn" appBase="webapps"
unpackWARs="true" autoDeploy="true">
重啓tomcat容器,訪問以下:http://jeesz.cn:8080
9.將cas-server-webapp-4.2.7.war包拷貝到tomcat容器中,並命名爲cas.war以下:
10.重啓啓動tomcat容器,訪問cas, https://jeesz.cn:8443/cas
默認用戶名爲:casuser
默認密碼爲:Mellon
如下是全部的cas sso單點登陸交付件和源碼
須要sso單點登陸全部源碼和文檔的朋友能夠加我Q企鵝:3377589122
到此cas的server測試成功!!