您的位置:首页 > 其它

Yale CAS + .net Client 实现 SSO(1)

2014-03-07 11:13 495 查看
由于信息系统集成需要,最近研究了一下CAS。从网上找了不少资料,很多是针对Java平台的,为数不多的针对.net Client的文章往往片面的介绍某个方面,照着去做确会遇到大量的问题,特别是“重定向循环”问题,网上的解决方案多种多样,而且并不能完全解决问题。通过最近几天的摸索,终于调试成功,为此,本系列随笔将详细介绍在ASP.NET中,如何通过CAS实现单点登录(Single Sign On),并针对网上的一些资料进行讨论,并提供本人针对“重定向循环”问题的解决办法。

第一部分:安装配置 Tomcat
第二部分:安装配置 CAS
第三部分:实现 ASP.NET WebForm Client
第四部分:实现基于数据库的身份验证
第五部分:扩展基于数据库的身份验证
第六部分:自定义登录页面

软硬件环境

服务器客户机
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。





单击“下一步”。





单击“下一步”。





单击“下一步”。









单击“关闭”。

2. 在服务器上安装Tomcat。





单击“Next”。





单击“I Agree”。





选择“Full”安装类型,单击“Next”。





单击“Next”。





单击“Next”。





单击“Install”。









单击“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”创建证书。如图:





(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”。





其他有用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" />


如下图所示:





4. 测试Tomcat上SSL是否配置成功。

(1)重启Tomcat服务。如图,单击“Stop”,然后单击“Start”。





(2)打开IE浏览器,分别测试“http://localhost:8080”和“https://localhost:8443/”





由于此网站出具的安全证书不是由受信任的证书颁发机构颁发的,因此IE会有警告信息,这里我们直接点击“继续浏览此网站(不推荐)。 ”。





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

待续...
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: