Yale CAS + .net Client 實現 SSO(1)


由於信息系統集成需要,最近研究了一下CAS。從網上找了不少資料,很多是針對Java平台的,為數不多的針對.net Client的文章往往片面的介紹某個方面,照着去做確會遇到大量的問題,特別是“重定向循環”問題,網上的解決方案多種多樣,而且並不能完全解決問題。通過最近幾天的摸索,終於調試成功,為此,本系列隨筆將詳細介紹在ASP.NET中,如何通過CAS實現單點登錄(Single Sign On),並針對網上的一些資料進行討論,並提供本人針對“重定向循環”問題的解決辦法。

軟硬件環境

 

  服務器 客戶機
IP 地址
  • 192.168.0.123
  • 192.168.0.153
操作系統
  • Windows 2008 x64
  • Windows 7 x64
軟件
  • JDK 7u11 Windows x64
  • Apache Tomcat 7.0.35
  • CAS 3.5.1
  • Visual Studio 2012
  • IIS 7(可選)

第一部分:安裝配置Tomcat

1. 在服務器上安裝JDK。

CAS001001

單擊“下一步”。

CAS001002

單擊“下一步”。

CAS001003

單擊“下一步”。

CAS001004

 

CAS001005

單擊“關閉”。

 

2. 在服務器上安裝Tomcat。

CAS001006

單擊“Next”。

CAS001007

單擊“I Agree”。

CAS001008

選擇“Full”安裝類型,單擊“Next”。

CAS001009

單擊“Next”。

CAS001010

單擊“Next”。

CAS001011

單擊“Install”。

CAS001012

 

CAS001013

單擊“Finish”。

 

3. 在Tomcat上配置SSL。

(1)生成證書

在C盤根目錄下建立子文件夾“Keys”,用於存放證書。

單擊“開始 -> 運行",輸入“cmd”,單擊“確定”啟動命令提示符窗口。

輸入“cd "c:\Program Files\Java\jre7\bin"”進入jre7的bin目錄下。

執行命令“keytool -genkey -alias tomcat -keyalg RSA -storepass changeit -keystore c:\keys\.keystore -validity 3600”創建證書。如圖:

CAS001014

 

(2)將證書導入的JDK的證書信任庫中

第一步:導出證書。

執行命令“keytool -export -trustcacerts -alias tomcat -file c:\keys\tomcat.cer -keystore c:\keys\.keystore -storepass changeit”將證書導出到Keys文件夾。

第二步:將證書導入到JDK證書信任庫。

執行命令“keytool -import -trustcacerts -alias tomcat -file c:\keys\tomcat.cer -keystore "C:\Program Files\Java\jre7\lib\security\cacerts" -storepass changeit”。系統詢問是否信任此證書,回答“y”。

CAS001015

其他有用keytool命令(列出信任證書庫中所有已有證書,刪除庫中某個證書):

keytool -list -v -keystore "C:\Program Files\Java\jre7\lib\security\cacerts"

keytool -delete -trustcacerts -alias tomcat -keystore "C:\Program Files\Java\jre7\lib\security\cacerts" -storepass changeit

 

4. 配置server.xml文件。

以管理員身份運行文字編輯器,打開%TOMCAT_HOME%\conf\server.xml。查找SSL配置並將如下內容插入其中。

<Connector port="8443" protocol="org.apache.coyote.http11.Http11Protocol" SSLEnabled="true" 
               maxThreads="150" scheme="https" secure="true" 
               clientAuth="false" sslProtocol="TLS" 
               keystoreFile="C:/Keys/.keystore" 
               keystorePass="changeit" />

如下圖所示:

 CAS001017

 

4. 測試Tomcat上SSL是否配置成功。

(1)重啟Tomcat服務。如圖,單擊“Stop”,然后單擊“Start”。

 CAS001016

(2)打開IE瀏覽器,分別測試“http://localhost:8080”和“https://localhost:8443/”

CAS001018

由於此網站出具的安全證書不是由受信任的證書頒發機構頒發的,因此IE會有警告信息,這里我們直接點擊“繼續瀏覽此網站(不推薦)。 ”。

CAS001019

如果看到上面的界面,說明Tomcat的SSL配置成功。

 

待續...


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM