- 浏览: 234310 次
- 性别:
- 来自: 上海
文章分类
最新评论
-
清林小篆:
<div class="quote_title ...
tomcat ssl配置以及CAS单点登录探究 -
cyxy99:
u012534143 写道我用同样的方法,同样的节点关系,为什 ...
PageRank算法java实现版本 -
cyxy99:
schaha123 写道楼主还有一个问题想请教一下,下面这2段 ...
PageRank算法java实现版本 -
njthnet:
Participle 和 IkParticiple 这2个类找 ...
贝叶斯文本分类 java实现 -
u012534143:
我用同样的方法,同样的节点关系,为什么的得到的结果与您不一样呢 ...
PageRank算法java实现版本
CAS单点登录需要tomcat配置ssl认证,配置方式如下:
1,dos进入进入tomcat安装路径的bin目录,输入
2,继续输入
有了证书后,需要将它导入到jdk证书信任库,继续输入
3,最后修改tomca conf下的server.xml。它里面有一段屏蔽的代码如下
改变如下:
4,最后启动https://localhost:8443/,可以看到浏览器地址栏有警告窗口,说明ssl配置成功。
5,然后需要cas的服务器和客户端 下载地址分别是:
http://www.ja-sig.org/downloads/cas/cas-server-3.1.1-release.zip
http://www.ja-sig.org/downloads/cas-clients/cas-client-java-2.1.1.zip
解压server包,把modules文件夹里面的cas-server-webapp-3.1.1.war 改名cas.war放入tomcat的下面,启动浏览,会出现server的界面,部署成功了。
一般的我们会把帐号密码放在数据库中,那么需要在webinf下面的deployerConfigContext文件中配置数据源
AuthenticationHandler是个很重要的概念,表明你验证处理的方式,默认的是使用SimpleTestUsernamePasswordAuthenticationHandler,我们可以改这个注入的类,比如QueryDatabaseAuthenticationHandler或者SearchModeSearchDatabaseAuthenticationHandler。前者可用sql来查询,后者的方式如下:
6,客户端程序(java web) ,你只需要把web.xml配置一下,如下:
computerTest代表客户端程序的计算机名或者域名。上面的代表cas服务器。显然,cas是通过过滤器保护你的资源。
7,一般情况下,我们几乎不能保证你需要继承的系统都是在一个服务器上,假如对于分布在多个机器上的项目,有几点需要注意,一是你必须保证你cas服务器所在的机器能够用计算机名(或域名访问到)(不能的话另见局域网内不能通过计算机名访问的解决办法.doc)。二是,在客户端服务器(tomcat)中也需要配置ssl,配置方法就是把上面生成的证书导入到jdk中,并且要和cas服务器进行ssl握手,握手方式如下:java InstallCert casserver:8443,接下来的选择项中输入1,搞定。
以上是今天研究的一点成果,特别是配置的时候有种让人抓狂的感觉,感觉有点凌乱,但是按照这个步骤搞,肯定是没什么问题的。
By 阿飞哥 转载请说明
腾讯微博:http://t.qq.com/duyunfeiRoom
新浪微博:http://weibo.com/u/1766094735
有什么问题?
不是tomcat生成的 是jdk生成后 tomcat引用地址
1,dos进入进入tomcat安装路径的bin目录,输入
keytool -genkey -alias tomcat -keyalg RSA -keypass changeit -storepass changeit - keystore server.keystore -validity 3600。此时会在bin下面生成一个 server.keystore文件。Validity代表天数。在接下来会让你填写姓名,其实就是你服务器的域名,注意,这里用ip是不行的,需要用服务器域名或者计算机全名。其他可以随便填写。
2,继续输入
keytool -export -trustcacerts -alias tomcat -file server.cer -keystore server.keystore -storepass changeit,导出证书,会在bin下面生成一个server.cer文件。
有了证书后,需要将它导入到jdk证书信任库,继续输入
keytool -import -trustcacerts -alias tomcat -file server.cer -keystore %JAVA_HOME%/jre/lib/security/cacerts -storepass changeit。也就是说要在cacerts里面添加一个这样的证书,可以通过下面的命令得到证书信任列表: keytool -list -v -keystore D:/sdks/jdk1.5.0_11/jre/lib/security/cacerts。注意一点就是,我们一般把jdk放在C:\Program Files\java下,我试了一下不行,可能是有空格的原因,我的是直接放在c盘下的java文件夹中。当然也可以删除导入的证书,命令:
keytool -delete -alias tomcatsso -keystore cacerts -keypass changeit假如提示密码 默认是changeit。
3,最后修改tomca conf下的server.xml。它里面有一段屏蔽的代码如下
<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true" maxThreads="150" scheme="https" secure="true" clientAuth="false" sslProtocol="TLS" />
改变如下:
<Connector port="8443" protocol="org.apache.coyote.http11.Http11Protocol" SSLEnabled="true" maxThreads="150" scheme="https" secure="true" clientAuth="false" sslProtocol="TLS" keystorePass="changeit" keystoreFile="D:\apache-tomcat-6.0.26\bin\server.keystore" />这里注意的就是keystoreFile是你刚才生成的server.keystore。还就是protocol需要改成Http11Protocol的,不然会报错(网上有的是没有改的,但是不改我这里报错,改就好)。
4,最后启动https://localhost:8443/,可以看到浏览器地址栏有警告窗口,说明ssl配置成功。
5,然后需要cas的服务器和客户端 下载地址分别是:
http://www.ja-sig.org/downloads/cas/cas-server-3.1.1-release.zip
http://www.ja-sig.org/downloads/cas-clients/cas-client-java-2.1.1.zip
解压server包,把modules文件夹里面的cas-server-webapp-3.1.1.war 改名cas.war放入tomcat的下面,启动浏览,会出现server的界面,部署成功了。
一般的我们会把帐号密码放在数据库中,那么需要在webinf下面的deployerConfigContext文件中配置数据源
<bean id="casDataSource" class="org.apache.commons.dbcp.BasicDataSource"> <property name="driverClassName"> <value>com.mysql.jdbc.Driver</value> </property> <property name="url"> <value>jdbc:mysql://localhost:3306/test??useUnicode=true&characterEncoding=utf8</value> </property> <property name="username"> <value>root</value> </property> <property name="password"> <value>root</value> </property> </bean>很明显,是spring实现。
AuthenticationHandler是个很重要的概念,表明你验证处理的方式,默认的是使用SimpleTestUsernamePasswordAuthenticationHandler,我们可以改这个注入的类,比如QueryDatabaseAuthenticationHandler或者SearchModeSearchDatabaseAuthenticationHandler。前者可用sql来查询,后者的方式如下:
<bean id="SearchModeSearchDatabaseAuthenticationHandler" class="org.jasig.cas.adaptors.jdbc.SearchModeSearchDatabaseAuthenticationHandler" abstract="false" lazy-init="default" autowire="default" dependency-check="default"> <property name="tableUsers"> <value>userinfo</value> </property> <property name="fieldUser"> <value>userName</value> </property> <property name="fieldPassword"> <value>password</value> </property> <property name="dataSource" ref="casDataSource" /> </bean>即给出表和表中代表帐号密码的字段,来匹配。这个时候启动,并输入你的帐号密码,可以提示成功或失败。
6,客户端程序(java web) ,你只需要把web.xml配置一下,如下:
<filter> <filter-name>CAS Filter</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://casserver:8443/cas/login</param-value> </init-param> <init-param> <param-name> edu.yale.its.tp.cas.client.filter.validateUrl </param-name> <param-value> https:// casserver:8443/cas/serviceValidate </param-value> </init-param> <init-param> <param-name> edu.yale.its.tp.cas.client.filter.serverName </param-name> <param-value>computerTest:8080</param-value> </init-param> <init-param> <param-name> edu.yale.its.tp.cas.client.filter.wrapRequest </param-name> <param-value>true</param-value> </init-param> </filter> <filter-mapping> <filter-name>CAS Filter</filter-name> <url-pattern>/test/*</url-pattern> </filter-mapping>Casserver 代表服务器程序的计算机名或者域名。
computerTest代表客户端程序的计算机名或者域名。上面的代表cas服务器。显然,cas是通过过滤器保护你的资源。
7,一般情况下,我们几乎不能保证你需要继承的系统都是在一个服务器上,假如对于分布在多个机器上的项目,有几点需要注意,一是你必须保证你cas服务器所在的机器能够用计算机名(或域名访问到)(不能的话另见局域网内不能通过计算机名访问的解决办法.doc)。二是,在客户端服务器(tomcat)中也需要配置ssl,配置方法就是把上面生成的证书导入到jdk中,并且要和cas服务器进行ssl握手,握手方式如下:java InstallCert casserver:8443,接下来的选择项中输入1,搞定。
以上是今天研究的一点成果,特别是配置的时候有种让人抓狂的感觉,感觉有点凌乱,但是按照这个步骤搞,肯定是没什么问题的。
By 阿飞哥 转载请说明
腾讯微博:http://t.qq.com/duyunfeiRoom
新浪微博:http://weibo.com/u/1766094735
评论
8 楼
清林小篆
2017-06-06
引用
[/col[size=xx-small][/size]
or]ggggggg[color=cyan]
7 楼
vahoa.ma
2015-07-29
第6步,客户端程序(java web)使用方法及配置说清楚点啊。你说的含糊其辞的。
6 楼
vahoa.ma
2015-07-29
师兄,那个客户端怎么用呢?
5 楼
xiaobadi
2014-10-18
4 楼
AngelAndAngel
2012-05-25
唔系好人 写道
-export导出的时候有问题
有什么问题?
3 楼
唔系好人
2012-05-25
-export导出的时候有问题
2 楼
AngelAndAngel
2011-12-07
ningwuyu 写道
tomcat中不能生成 server.keystore 文件啊
不是tomcat生成的 是jdk生成后 tomcat引用地址
1 楼
ningwuyu
2011-12-07
tomcat中不能生成 server.keystore 文件啊
发表评论
-
招Java培训老师(还是论坛招人靠谱)
2015-05-10 13:39 556好久没来坛子了,一来就搞这么有目的的事儿。。。 好吧, ... -
动手开发自己的mvc-3----容器该帮我们做什么?(非常的重点)
2013-01-22 13:55 1821注解注入 我们知道,Spring只有一个角色:工厂。这个工厂可 ... -
动手开发自己的mvc-2----完善控制层,提供自动注入和注解上传等功能
2013-01-22 13:44 2573当表单提交的内容过多 ,让懒惰的程序员一个个getPara ... -
动手开发自己的mvc-1----实现初步的控制层,实现各种配置和资源获取
2013-01-22 13:28 2807mvc框架最基础的功能就是跳转,struts2支持注 ... -
动手开发自己的mvc (系列)
2013-01-22 14:08 1929到年尾了,整理了一下我Evernote藏的各种文档,打算把ys ... -
整合了一个小的爬取流程框架
2013-01-08 13:04 1306弄了一个小的爬取流程框架,把之前工作中用到的一些小经验 ... -
Mahout各种推荐器的主要特点
2012-12-06 15:17 2981Mahout有很多推荐的实现,各有特点,在这里一并记录 ... -
怎样通过词频得到这个词频的排序?
2012-12-03 14:35 2070在大规模检索中,我们怎样通过已经的词频得到词频的排序 ... -
drools实现自定义业务规则
2012-10-12 11:49 2849最近做财务相关的积分规则,由于这个功能以后涉及到方方面面 ... -
贝叶斯文本分类 java实现
2012-09-25 15:15 12688昨天实现了一个基于贝叶斯定理的的文本分类,贝叶斯定理假 ... -
前段时间做了一个小型的MVC
2012-07-20 13:23 0前端时间做了一个小型的MVC,麻雀虽小,五脏俱全,目前实现的功 ... -
聚类算法之MST算法 java实现版本
2012-07-17 14:20 2804在介绍最小生成树算法(MST)之前,简单说一下平均链接算 ... -
聚类算法之单链接算法java实现
2012-07-05 10:09 4301聚类算法中基于链接的算法大致有三种:单链接算法(s ... -
朴素贝叶斯分类器
2012-05-20 15:25 0NaiveBayes分类器的优点是能得到已知Y的条件下X的 ... -
PageRank算法java实现版本
2012-05-16 16:03 17450PageRank算法是Google的核心搜索算法,在所有 ... -
聚类算法之kmeans算法java版本
2012-04-22 21:34 20886聚类的意思很明确,物以类聚,把类似的事物放在一起。 ... -
昨天做了个小工具DB转pojo,html,sql
2012-03-21 13:15 1765做dbutils时为了方便就做了个小工具,省点小事儿吧。 -
我这儿的讨论(项目小组)区可以进来了
2012-02-28 10:38 150java项目小组群,前几天清了几个破坏气氛者,和不发言 ... -
智能web探究群组建立了
2011-11-24 12:10 1614最近群组已申请成功 ,地址是http://web.gr ... -
Cas https方式改为http方式
2011-09-24 13:02 2339最近项目要测试,来不及申请等待证书,所以先把项目改为http的 ...
相关推荐
标题中的“tomcat配置ssl-单点登录(sso)”指的是在Apache Tomcat服务器上配置SSL安全套接层,以及实现单点登录(Single Sign-On, SSO)功能。这是一个涉及网络安全和用户认证的重要主题,主要目标是提高Web应用的...
**CAS 单点登录原理与实现** ...通过以上步骤,你可以实现CAS单点登录,并在Tomcat服务器上配置SSL,确保通信安全。同时,正确集成CAS资源,能够让你的应用系统无缝接入CAS认证体系,提升用户体验。
CAS作为一个开源的Web应用程序认证框架,为多种平台提供了轻量级的单点登录解决方案。 CAS的主要特点是其分层架构,包括独立部署的CAS Server和与各个应用集成的CAS Client。CAS Server负责统一的用户身份验证,而...
在提供的PDF文件`cas单点登录(一).pdf`和`cas单点登录(二).pdf`中,应该详细涵盖了这些步骤,以及更深入的技术细节,包括可能出现的问题和解决方案。通过学习这些文档,你应该能够成功地配置和实施CAS单点登录...
Tomcat 下用cas实现单点登录,实现系统整合。
描述中的“写的挺细”暗示了文档内容可能包含了详细的步骤和解释,这意味着我们将深入探讨如何在Tomcat环境下配置和实现CAS单点登录。 **单点登录(SSO)** 单点登录是网络环境中的一种安全机制,用户只需要一次...
总结来说,Tomcat实现单点登录SSO,主要通过配置合适的Realm,结合Cookie机制,实现用户身份在多个应用间的共享。同时,理解SSO的各种实现技术,如基于Cookie、Kerberos、SAML和CAS等,有助于选择最合适的SSO解决...
**CAS单点登录配置大全** CAS(Central Authentication Service,中央认证服务)是一种广泛使用的开源单点登录(Single Sign-On,SSO)协议。它允许用户通过一个统一的认证系统访问多个应用系统,而无需在每个系统...
基于Java中CAS的单点登录,有服务端的所有源码,将tomcat目录下的所有资源直接拷到Tomcat服务中间件的webapp目录下,阅读tomcat-webapp中的read.txt文档,查看使用说明,适用于第一次开发CAS单点登录的同学们,简单...
单点登录(Single Sign-On,简称SSO)是一种网络访问控制机制,允许用户在一次登录后,无需再次认证即可访问多个相互信任的应用系统。CAS(Central Authentication Service)是耶鲁大学开发的一个开源SSO项目,它...
在本“CAS单点登录demo”中,我们将深入探讨CAS的工作原理、配置步骤以及如何实现客户端与服务器端的交互。 1. CAS工作原理: CAS的核心思想是集中式的身份验证,用户只需在一个地方进行登录,之后访问其他已经...
### 使用CAS在Tomcat中实现单点登录的关键知识点 #### 一、CAS简介与特性 - **CAS**(Central Authentication Service)是由耶鲁大学发起的一个开源项目,它为Web应用程序提供了一种简单可靠且功能强大的单点登录...
总结,CAS单点登录配置涉及SSL安全设置、CAS服务器的部署、客户端应用的集成以及证书的管理等多个环节。理解并掌握这些知识点,对于构建安全、便捷的多应用系统环境至关重要。希望本文提供的信息对您在配置CAS单点...
解决 Tomcat 配置 SSL 错误的解决办法 在 Tomcat 服务器中配置 SSL 加密连接是非常重要的,然而在 Tomcat 6.0.33 版本中,默认启用了 APR(APR 是通过 JNI 访问的可移植库,可以提高 Tomcat 的性能和伸缩性),这...
三、CAS单点登录配置 为了实现单点登录,需要在CAS服务器端进行相应的配置。下面将详细介绍CAS服务器端配置的步骤: 1. 配置CAS服务器端 在CAS服务器端,需要配置单点登录的服务端口、服务器名称和认证方式等。 ...
第四步:配置Tomcat服务器 打开Tomcat根目录下的/conf/server.xml,找到如下配置段,修改如下: maxThreads="150" scheme="https" secure="true" clientAuth="true" sslProtocol="TLS" keystoreFile="C:/tmp...
### CAS单点登录配置全过程详解 #### 一、前言 CAS(Central Authentication Service)是一种开放源代码的单点登录(Single Sign-On, SSO)协议和服务实现,它允许用户在一个应用登录之后无需再次登录即可访问其他...
### CAS单点登录服务器配置详解 #### 一、CAS单点登录概述 CAS(Central Authentication Service)是一种开放源代码的单点登录协议和服务框架,它为Web应用提供了一种简化了的身份验证流程。通过CAS,用户只需要在...