soothwolf的个人空间_列表_书生读吧 书生读吧官网
的SSO(single sign-on)的服务。
这里用一个简单的例子来说明用CAS来实现单点登陆(SSO)。
Yale CAS Server 的配置过程
CAS (Central Authentication Service)是Yale大学的ITS开发的一套JAVA实现的开源
的SSO(single sign-on)的服务。该服务是以一个java web app(eg:cas.war)来进行服务的,
使用时需要将cas.war发布到一个servlet2.3兼容的服务器上,并且服务器需要支持SSL,
在需要使用该服务的其他服务器(客户),只要进行简单的配置就可以实现SSO了。
CAS 的客户端可以有很多种,因为验证的结果是以XML的格式返回的,CAS的客户端已
打包进去的有java,perl,python,asp,apache module等好几种客户端示例,你还可以根据
需要实现一个自己的客户端,非常简单!~
下面我们以tomcat 5.0 为例进行说明(这里,我将Server和Client同时放在了同一个Tomcat服务器下)。
1.下载cas-server和cas-client(可选,建议使用)
http://www.yale.edu/tp/cas/cas-server-2.0.12.zip
http://www.yale.edu/tp/cas/cas-client-2.0.11.zip
2.将cas-server-2.0.12.zip解压,并将lib/cas.war拷贝到webapps下
3.产生SERVER的证书
keytool -genkey -alias tomcat -keyalg RSA [-keystore keystore-file]
4.(在server)配置tomcat使用HTTPS
$CATALINA_HOME/conf/server.xml里
<Connector className="org.apache.coyote.tomcat5.CoyoteConnector"port="8443" minProcessors="5" maxProcessors="75"enableLookups="true" disableUploadTimeout="true"acceptCount="100" debug="0" scheme="https"secure="true"><Factory className="org.apache.coyote.tomcat5.CoyoteServerSocketFactory"keystoreFile="/path/to/your/keystore-file"keystorePass="your-password" clientAuth="false" protocol="TLS" /></Connector>
5.在要使用CAS的客户端应用里设置(以servlets-examples这个APP为例,在应用时,所有客户端均进行类似配置),我们使用ServletFilter(CAS client里提供的)来实现SSO的检查。
修改servlets-examples/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://your.cas.server.name(这里为https://localhost):port(默认为8443)/cas/login</param-value></init-param><init-param><param-name>edu.yale.its.tp.cas.client.filter.validateUrl</param-name><param-value>https://your.cas.server.name(这里为https://localhost):port(默认为8443)/cas/proxyValidate</param-value></init-param><init-param><param-name>edu.yale.its.tp.cas.client.filter.serverName</param-name><param-value>your.client.server.name(这里为localhsot):port(默认8080)</param-value></init-param></filter><filter-mapping><filter-name>CASFilter</filter-name><url-pattern>/servlet/*</url-pattern></filter-mapping>
6.将cas-client-2.0.11.zip解压,把java/lib/casclient.jar拷贝到client服务器上(这里为同一tomcat)的
webapps/servlets-examples/WEB-INF/lib目录下(如果没有就建一个)
7.导出SERVER的证书,用来给所有需要用到的客户端导入
keytool -export -file myserver.cert -alias my-alias-name -keystore keystore-file
8.在客户端的JVM(这里为同一JVM)里导入信任的SERVER的证书(根据情况有可能需要管理员权限)
keytool -import -keystore $JAVA_HOME/jre/lib/security/cacerts -file myserver.cert -alias tomcat
9.测试.
把server和client分别起来(这里为同一个Tomcat,实际应用时可以在多个服务器上,且client可以为多个应用),检查启动的LOG是否正常,如果一切OK,就访问
http://client1:8080/servlets-examples/servlet/HelloWorldExample
系统会自动跳转到一个验证页面,随便输入一个相同的账号,密码,严正通过之后就会访问
到真正的HelloWorldExample这个servlet了
10.其他
登陆过后,无论多少个client,在各自的session里面有相同的用户信息(用户名),默认的情况下,可以通过session.getAttribute("edu.yale.its.tp.cas.client.filter.user")取得登陆名。
由于CAS为完全开源项目,可以根据自己项目修改源代码(比如,登陆验证,肯定得根据实际项目修改,以及登陆页面等)。
更多信息请参考
http://www.yale.edu/tp/cas/
http://www-106.ibm.com/developerworks/web/library/wa-singlesign/
更多阅读
港股读书报告-内地高端童装“红孩儿”成功在港上市_叶玉盛 红孩儿童装官网
2013年12月31日,童装“红孩儿”控股公司米格国际控股(01247)在香港公开招股,公司计划在港发售额为一千六百万股,招股价为1.6至2.32元,以中间价计融资额约为2.69亿元。本所竞天公诚为公司中国律师。公司业务及获利能力。米格国际控股有限
免费200M全能空间在线申请可放置论坛 全能d杀手的个人空间
发布时间:2007-1-30 22:11:06免费空间介绍如下:无广告200M全能空间(电信网通任选)总空间大小 300M企业邮局 100M独立WEB空间 200M支持域名绑子目录数 1同时在线人数(IIS数)100个
叩富网客服的个人空间 - 模拟炒股 - 叩富网 叩富网模拟炒股软件
2010年9-10月中线有奖大赛获奖选手心得作者:叩富网客服 发表于:2010-11-17 18:07:55( 分类:投资心得 )返回上一页【免费公测中,现在可以通过软件方式免费跟踪一下3位高手的操作,定制方式请点这里】叩富网有奖大赛网址:http://vip.cofool.c
原创 《肖像和姓名中的权利》说课稿 - 雅新的个人空间 - 吉林 吉林省原创同盟官网
【原创】《肖像和姓名中的权利》说课稿各位领导上午好,今天我说课的题目是《肖像和姓名中的权利》。一、说教材(一)教材地位、作用本课时八年级下册第二单元第四课的第二课时内容。通过第一课的学习,学生已初步了解了人格尊严的内涵,集
风动护花铃_舒雅萱 舒雅内衣官网
风动护花铃——心事近些天来的一些事情让我焦头烂额,有关于人情也有关于事件本身的令人紧迫的内因,于是,我在一周内便多了那么几夜的难眠。我是一个善于发现身边男子优点的人,他们每个人在我心中似乎也在无形中占有一席之地,然而他们