- 浏览: 132068 次
- 性别:
- 来自: 重庆
文章分类
最新评论
-
酱油男js:
不错...学习了。
oracle sql 优化大全 -
浪子秋水:
网页编码就是那点事 -
shenghuorulan:
通俗易懂。好文章,直接想到的问题都提到了。
oracle 全文检索实践 -
飞儿9530:
lucene 3.0.1 学习
源: http://www.oecp.cn/hi/single/blog/349
为了实现单点登录,做了个CAS SSO单点登录实例,经过反复的琢磨和修改终于成功了,现将CAS SSO单点登录实例详细步骤共享出来,供大家参考。
首先要先下载
www.ja-sig.org/downloads/cas/cas-server-3.0.4.zip
www.ja-sig.org/downloads/cas-clients/cas-client-2.0.11.zip
CAS SSO单点登录实例详细步骤:
1、用keytool生成证书:
keytool -genkey -alias tomcat -keyalg RSA -keystore c:/Tomcat5.5/mykey
说明:
这里-alias tomcat 是表示生成的这个证书的别名叫tomcat,-keyalg RSA 指的是采用的RSA算法,-keystore c:/Tomcat5.5/mykey是指生成的证书存储的位置。回车后会提示你输入keystore password,这可以自己定(这里输入12456,下面配tomcat时要用的),然后是一些个人信息及组织信息,可以轻松搞定。
注意:密码输入后,会让你输入其他信息,记得这里第一个姓名必须是服务器的域名 由于我是在本机所以是localhost
这里要注意如果不这样写就会报如下异常:
java.io.IOException: HTTPS hostname wrong: should be <localhost>
2、创建证书后,就导出证书,keytool -export -file c:\cas.cer -alias tomcat -keystore C:\Tomcat5.5\mykey(从C:\Tomcat5.5\mykey里取出证书入到C:\下,如果没有指定,就是在用下目录下C:\Documents and Settings\用户目录名\)
3、server.xml中添加的配置信息:
< Connector port="8443"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" disableUploadTimeout="true"
acceptCount="100" debug="0" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS" keystoreFile="C:\tomcat\mykey(指生成的证书存储的位置)" keystorePass="123456"(上面你输入的那个密码) />
4、把上面那步的(csa.cer)这个证书导入java中的cacerts证书库里?
开始 >> 运行 >> 输入cmd 进入dos命令行 >>
再用cd进入到C:\Program Files\Java\jdk1.5.0_05\jre\lib\security这个目录下
敲入如下命令回车执行
keytool -import -alias cacerts -keystore cacerts -file C:\cas.cer -trustcacerts
此时命令行会提示你输入cacerts证书库的密码,
你敲入changeit就行了,这是java中cacerts证书库的默认密码,
你自已也可以修改的。
如果报错信息是已经存在tomcat证书,就执行:
keytool –delete –keystore cacerts
–file C:\cas.cer –alias -trustcacerts
5、重启Tomcat后在地址栏输入:https://localhost:8888 如果配置正确就搞定了,浏览显示的时候提示安装证书(你就选择安装上面导出的那个证书,也可从IE--工具--Internet首选项--内容--证书--然后按提示导入即可)。
如果是IE的话,首先会弹出一个对话框,提示你证书不是由信任的机构颁发的。这个是很自然的,因为证书是自己生成的。
单击“查看证书”,单击“安装证书”,在向导种选择“将所有的证书放在下面存储区”,然后单击“浏览”,选择“受信任的根证书颁发机构”。单击确定安装证书。这样IE以后就会认为证书是由受信任的机构颁发的。
如果不想安装,也可以直接在对话框中单击“是”
6 部署CAS应用
解压 cas-server-3.0.4.zip, 提取 \target\cas.war 文件,将 cas.war 文件复制到 TOMCAT 的安装路径 webapps 下,启动 TOMCAT ,检查 CAS 应用是否正常启动。
7.客户端配置
下载cas-client-2.0.11.zip
把 java/lib/casclient.jar考到 你所发布的webapp的WEB-INF/lib下
修改WEB-INF/web.xml 在里面添加过滤器
<filter>
<filter-name>CASFilter</filter-name>
<filter-class>edu.yale.its.tp.cas.client.filter.CASFilter</filter-class>
<init-param>
<param-name>edu.yale.its.tp.cas.client.filter.loginUrl</param-name>
<param-value>https://localhost:8443/cas/login</param-value>
</init-param>
<init-param>
<param-name>edu.yale.its.tp.cas.client.filter.validateUrl</param-name>
<param-value>https://localhost:8443/cas/proxyValidate</param-value>
</init-param>
<init-param>
<param-name>edu.yale.its.tp.cas.client.filter.serverName</param-name>
<param-value>localhost:8443</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CASFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
把里面的localhost换成域名
8443换成你所使用的端口
====================================
JDK中keytool常用命令
-genkey 在用户主目录中创建一个默认文件".keystore",还会产生一个mykey的别名,mykey中包含用户的公钥、私钥和证书
-alias 产生别名
-keystore 指定密钥库的名称(产生的各类信息将不在.keystore文件中
-keyalg 指定密钥的算法
-validity 指定创建的证书有效期多少天
-keysize 指定密钥长度
-storepass 指定密钥库的密码
-keypass 指定别名条目的密码
-dname 指定证书拥有者信息 例如: "CN=sagely,OU=atr,O=szu,L=sz,ST=gd,C=cn"
-list 显示密钥库中的证书信息 keytool -list -v -keystore sage -storepass ....
-v 显示密钥库中的证书详细信息
-export 将别名指定的证书导出到文件 keytool -export -alias caroot -file caroot.crt
-file 参数指定导出到文件的文件名
-delete 删除密钥库中某条目 keytool -delete -alias sage -keystore sage
-keypasswd 修改密钥库中指定条目口令 keytool -keypasswd -alias sage -keypass .... -new .... -storepass ... -keystore sage
-import 将已签名数字证书导入密钥库 keytool -import -alias sage -keystore sagely -file sagely.crt
导入已签名数字证书用keytool -list -v 以后可以明显发现多了认证链长度,并且把整个CA链全部打印出来。
1.证书的显示
-list
[-v | -rfc] [-alias <alias>]
[-keystore <keystore>] [-storepass <storepass>]
[-storetype <storetype>] [-provider <provider_class_name>]
例如:keytool -list -v -alias RapaServer -keystore cacerts -storepass 12345678
keytool -list -v -keystore d2aapplet.keystore -storepass 12345678 -storetype IAIKKeystore
2.将证书导出到证书文件
例如:keytool -export -keystore monitor.keystore -alias monitor -file monitor.cer
将把证书库 monitor.keystore 中的别名为 monitor 的证书导出到 monitor.cer 证书文件中,它包含证书主体的信息及证书的公钥,不包括私钥,可以公开。
keytool -export -keystore d2aApplet.keystore -alias RapaServer -file Rapa.cert -storetype IAIKKeystore
3.将keystore导入证书中
这里向Java默认的证书 cacerts导入Rapa.cert
keytool -import -alias RapaServer -keystore cacerts -file Rapa.cert -keystore cacerts
4.证书条目的删除
keytool的命令行参数 -delete 可以删除密钥库中的条目,如: keytool -delete -alias RapaServer -keystore d2aApplet.keystore ,这条命令将 d2aApplet.keystore 中的 RapaServer 这一条证书删除了。
5.证书条目口令的修改
使用 -keypasswd 参数,如:keytool -keypasswd -alias RapaServer -keystore d2aApplet.keystore,可以以交互的方式修改 d2aApplet.keystore证书库中的条目为 RapaServer 的证书。
Keytool -keypasswd -alias RapaServer -keypass 654321 -new 123456 -storepass 888888 -keystore d2aApplet.keystore这一行命令以非交互式的方式修改库中别名为 RapaServer 的证书的密码为新密码 654321,行中的 123456 是指该条证书的原密码, 888888 是指证书库的密码。
CAS SSO单点登录实例就到这里了,希望对大家有帮助!
为了实现单点登录,做了个CAS SSO单点登录实例,经过反复的琢磨和修改终于成功了,现将CAS SSO单点登录实例详细步骤共享出来,供大家参考。
首先要先下载
www.ja-sig.org/downloads/cas/cas-server-3.0.4.zip
www.ja-sig.org/downloads/cas-clients/cas-client-2.0.11.zip
CAS SSO单点登录实例详细步骤:
1、用keytool生成证书:
keytool -genkey -alias tomcat -keyalg RSA -keystore c:/Tomcat5.5/mykey
说明:
这里-alias tomcat 是表示生成的这个证书的别名叫tomcat,-keyalg RSA 指的是采用的RSA算法,-keystore c:/Tomcat5.5/mykey是指生成的证书存储的位置。回车后会提示你输入keystore password,这可以自己定(这里输入12456,下面配tomcat时要用的),然后是一些个人信息及组织信息,可以轻松搞定。
注意:密码输入后,会让你输入其他信息,记得这里第一个姓名必须是服务器的域名 由于我是在本机所以是localhost
这里要注意如果不这样写就会报如下异常:
java.io.IOException: HTTPS hostname wrong: should be <localhost>
2、创建证书后,就导出证书,keytool -export -file c:\cas.cer -alias tomcat -keystore C:\Tomcat5.5\mykey(从C:\Tomcat5.5\mykey里取出证书入到C:\下,如果没有指定,就是在用下目录下C:\Documents and Settings\用户目录名\)
3、server.xml中添加的配置信息:
< Connector port="8443"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" disableUploadTimeout="true"
acceptCount="100" debug="0" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS" keystoreFile="C:\tomcat\mykey(指生成的证书存储的位置)" keystorePass="123456"(上面你输入的那个密码) />
4、把上面那步的(csa.cer)这个证书导入java中的cacerts证书库里?
开始 >> 运行 >> 输入cmd 进入dos命令行 >>
再用cd进入到C:\Program Files\Java\jdk1.5.0_05\jre\lib\security这个目录下
敲入如下命令回车执行
keytool -import -alias cacerts -keystore cacerts -file C:\cas.cer -trustcacerts
此时命令行会提示你输入cacerts证书库的密码,
你敲入changeit就行了,这是java中cacerts证书库的默认密码,
你自已也可以修改的。
如果报错信息是已经存在tomcat证书,就执行:
keytool –delete –keystore cacerts
–file C:\cas.cer –alias -trustcacerts
5、重启Tomcat后在地址栏输入:https://localhost:8888 如果配置正确就搞定了,浏览显示的时候提示安装证书(你就选择安装上面导出的那个证书,也可从IE--工具--Internet首选项--内容--证书--然后按提示导入即可)。
如果是IE的话,首先会弹出一个对话框,提示你证书不是由信任的机构颁发的。这个是很自然的,因为证书是自己生成的。
单击“查看证书”,单击“安装证书”,在向导种选择“将所有的证书放在下面存储区”,然后单击“浏览”,选择“受信任的根证书颁发机构”。单击确定安装证书。这样IE以后就会认为证书是由受信任的机构颁发的。
如果不想安装,也可以直接在对话框中单击“是”
6 部署CAS应用
解压 cas-server-3.0.4.zip, 提取 \target\cas.war 文件,将 cas.war 文件复制到 TOMCAT 的安装路径 webapps 下,启动 TOMCAT ,检查 CAS 应用是否正常启动。
7.客户端配置
下载cas-client-2.0.11.zip
把 java/lib/casclient.jar考到 你所发布的webapp的WEB-INF/lib下
修改WEB-INF/web.xml 在里面添加过滤器
<filter>
<filter-name>CASFilter</filter-name>
<filter-class>edu.yale.its.tp.cas.client.filter.CASFilter</filter-class>
<init-param>
<param-name>edu.yale.its.tp.cas.client.filter.loginUrl</param-name>
<param-value>https://localhost:8443/cas/login</param-value>
</init-param>
<init-param>
<param-name>edu.yale.its.tp.cas.client.filter.validateUrl</param-name>
<param-value>https://localhost:8443/cas/proxyValidate</param-value>
</init-param>
<init-param>
<param-name>edu.yale.its.tp.cas.client.filter.serverName</param-name>
<param-value>localhost:8443</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CASFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
把里面的localhost换成域名
8443换成你所使用的端口
====================================
JDK中keytool常用命令
-genkey 在用户主目录中创建一个默认文件".keystore",还会产生一个mykey的别名,mykey中包含用户的公钥、私钥和证书
-alias 产生别名
-keystore 指定密钥库的名称(产生的各类信息将不在.keystore文件中
-keyalg 指定密钥的算法
-validity 指定创建的证书有效期多少天
-keysize 指定密钥长度
-storepass 指定密钥库的密码
-keypass 指定别名条目的密码
-dname 指定证书拥有者信息 例如: "CN=sagely,OU=atr,O=szu,L=sz,ST=gd,C=cn"
-list 显示密钥库中的证书信息 keytool -list -v -keystore sage -storepass ....
-v 显示密钥库中的证书详细信息
-export 将别名指定的证书导出到文件 keytool -export -alias caroot -file caroot.crt
-file 参数指定导出到文件的文件名
-delete 删除密钥库中某条目 keytool -delete -alias sage -keystore sage
-keypasswd 修改密钥库中指定条目口令 keytool -keypasswd -alias sage -keypass .... -new .... -storepass ... -keystore sage
-import 将已签名数字证书导入密钥库 keytool -import -alias sage -keystore sagely -file sagely.crt
导入已签名数字证书用keytool -list -v 以后可以明显发现多了认证链长度,并且把整个CA链全部打印出来。
1.证书的显示
-list
[-v | -rfc] [-alias <alias>]
[-keystore <keystore>] [-storepass <storepass>]
[-storetype <storetype>] [-provider <provider_class_name>]
例如:keytool -list -v -alias RapaServer -keystore cacerts -storepass 12345678
keytool -list -v -keystore d2aapplet.keystore -storepass 12345678 -storetype IAIKKeystore
2.将证书导出到证书文件
例如:keytool -export -keystore monitor.keystore -alias monitor -file monitor.cer
将把证书库 monitor.keystore 中的别名为 monitor 的证书导出到 monitor.cer 证书文件中,它包含证书主体的信息及证书的公钥,不包括私钥,可以公开。
keytool -export -keystore d2aApplet.keystore -alias RapaServer -file Rapa.cert -storetype IAIKKeystore
3.将keystore导入证书中
这里向Java默认的证书 cacerts导入Rapa.cert
keytool -import -alias RapaServer -keystore cacerts -file Rapa.cert -keystore cacerts
4.证书条目的删除
keytool的命令行参数 -delete 可以删除密钥库中的条目,如: keytool -delete -alias RapaServer -keystore d2aApplet.keystore ,这条命令将 d2aApplet.keystore 中的 RapaServer 这一条证书删除了。
5.证书条目口令的修改
使用 -keypasswd 参数,如:keytool -keypasswd -alias RapaServer -keystore d2aApplet.keystore,可以以交互的方式修改 d2aApplet.keystore证书库中的条目为 RapaServer 的证书。
Keytool -keypasswd -alias RapaServer -keypass 654321 -new 123456 -storepass 888888 -keystore d2aApplet.keystore这一行命令以非交互式的方式修改库中别名为 RapaServer 的证书的密码为新密码 654321,行中的 123456 是指该条证书的原密码, 888888 是指证书库的密码。
CAS SSO单点登录实例就到这里了,希望对大家有帮助!
发表评论
-
linux重启oracle 各种方法
2013-01-15 09:53 1269来自 : http://blog.sina.com.cn/s/ ... -
SVN服务器配置
2013-01-10 22:49 1208来自:http://air-blue55.blog.163.c ... -
网页编码就是那点事
2012-11-24 16:10 928来自 : http://www.kuqin.com/webpa ... -
Tomcat 配置 CAS 的一个问题。unable to find valid certification path to requested target
2012-11-11 21:40 1519来自: http://blog.csdn.net/cool_ ... -
Tomcat SSL配置大全
2012-11-11 21:02 1202来源: http://www.iteye.com/topi ... -
Html中td自动换行问题
2012-10-25 17:57 1003来自:http://blog.csdn.net/dududu0 ... -
oracle 全角、半角转换,和oracle 的 DUMP函数
2012-06-18 09:56 2068to_single_byte(c)转换成半角 to_multi ... -
Hibernate 利用配置文件配置HQL/SQL
2012-05-21 17:14 1794Query.hbm.xml <?xml version= ... -
CAS工作流程
2012-05-19 22:25 1569CAS3.0的工作流程: 0.app将用户转发到CAS处, 并 ... -
jforum 表目录
2012-04-18 18:37 2927目 录 1、附件关系表JFORUM_ATTACH 2 2、附件 ... -
Jfroum集成cas单点登录
2012-04-17 21:35 15031.安装CAS 下载cas server ,设置好服务器端, ... -
JForum登录用例
2012-04-15 22:59 60541,键入用户名、密码,单击“登入”按钮,登录请求发送到/JFo ... -
tinyMCE 详细文档
2012-03-28 10:57 2116http://www.iwms.net/n2065c17.as ... -
JBPM3.1.4 相关表的 意义
2012-03-18 22:54 994JBPM_ACTION action记录表 JBPM_DEC ... -
JBPM环境配置
2012-03-18 18:56 1811jBPM 需要数据库支持, j ... -
xfire 编写webservice例子
2012-02-23 16:51 1047来自 : http://www.blogjava.net/j ... -
ArrayUtils常用的用法
2012-02-21 10:51 1558// 1.打印数组 ArrayUtils.toString(n ... -
Tomcat自动缓存context.xml,导致在eclipse中修改后,不能立即启作用
2012-02-18 11:56 1763http://blog.csdn.net/shiqidide/ ... -
JavaScript CSS Style属性对照表
2012-02-11 22:36 1086CSS语法 (不区分大小写) JavaScript语法 (区分 ... -
JQUERY TREE
2012-01-09 14:49 1182要使用jquery.treeview.js,当然第一步是要把它 ...
相关推荐
这个文档是经过我将近两个星期的研究,证实了其中文档的真实性和可用性,只要你跟着文档里面的步骤配置和实施,绝对实现cas单点登录(sso),包括跨域访问cas
本文档主要根据自己的实际工作而编写的,部分来源于网络
压缩包中有详细的cas sso 的配置过程,同时提供所需的全部JAR包!
tomcat实现单点登录,SSO是一种统一认证和授权机制,指访问同一服务器不同应用中的受保护资源的同一用户,只需要登录一次,即通过一个应用中的安全验证后,再访问其他应用中的受保护资源时,不再需要重新登录验证。
使用CAS在Tomcat中实现单点登录参考代码及配置详细文档
tomcat 配置 SSO解决方案,验证通过。
使用SPNEGO 基于SSO 通过Tomcat中的配置,实现对AD Server上信息的验证
此文档自己亲手从0开始一步一步配置的详尽过程,其中包括keytool创建 、ticket、tomcat配置cas、自定义登录页面,处理服务器返回的乱码,服务退出、cas服务器返回多数据等等文档 包括SSO原理图,以及认证流程图等
CAS(Central Authentication Service)是一款不错的针对 Web 应用的单点登录框架,本文介绍了 CAS 的原理、协议、在 Tomcat 中的配置和使用,对于采用 CAS 实现轻量级单点登录解决方案的入门读者具有一定指导作用。
CAS(Central Authentication Service)是一款不错的针对 Web 应用的单点登录框架,本文介绍了 CAS 的原理、协议、在 Tomcat 中的配置和使用,对于采用 CAS 实现轻量级单点登录解决方案的入门读者具有一定指导作用。
使用CAS框架实现SSO单点登录,其中包含: 1、CAS服务器端安装包 ...5、CAS+SSO实例安装和配置指南PDF版.rar 6、Tomcat中使用Yale+CAS实现单点登陆(SSO).doc 7、以及本人的搭建过程中所遇到得问题和解决方法
SSO(单点登录)实战篇:客户端实现(1)1.Tomcat多应用部署的配置2.Maven项目的打包与发布3.客户端模块的主流程
CAS在Tomcat中实现单点登录项目,单点登录(Single Sign On , 简称 SSO )是目前比较流行的服务于企业业务整合的解决方案之一, SSO 使得在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。...
1. sapsso.jar 放在工程lib目录下 2. sapssoext.dll 放在tomcat的bin目录下 ...5、配置hosts域名:C:\WINDOWS\system32\drivers\etc 127.0.0.1 wzbwsso.sinopec.com 。。。。。。 不了解的,发信息具体沟通
这样的配置,我们甚至都不需要配置tomcat服务器了,建议这种方式 2.各个模块的访问地址 > cas:http://127.0.0.1:8080/cas > node1:http://127.0.0.1:8081/node1 > node2:http://127.0.0.1:8082/node2 3....
配置idp.com 上的tomcat server.xml............................................................................. 6 五. 为两个SP 上HelloWorld Servlet 配置CAS Client 过滤器..................................
单点登录(Single Sign On , 简称 SSO )是目前比较流行的服务于企业业务整合的解决方案之一, SSO 使得在多个应用系统中,用户只...本文介绍了 CAS 的原理、协议、以及配合Spring-Security在 Tomcat 中的配置和使用。
设置hosts文件,添加两个本地映射127.0.0.1 ssoclient127.0.0.1 ssoserver进入client输入mvn tomcat7:run启动shiro cas客户端进入server输入mvn jetty:run启动cas服务端(因为tomcat不支持war包的overlay)打开...
[置顶] SSO单点登录系列3:cas-server端配置认证方式实践(数据源+自定义java类认证) http://blog.csdn.net/ae6623/article/details/8851801 [置顶] SSO单点登录系列2:cas客户端和cas服务端交互原理动画图解,cas...