|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
学习JAVA的目的更多的是培养自身的工作能力,我觉得工作能力的一个核心就是:独立思考能力,因为只有独立思考后,才会有自己的见解
1安装
1.1体系设置
以下的软件情况是必须的:
1.JDK1.4.2orhigher
2.Tomcat5.X1.2Tomcat设置,启用SSL
1.在要安装CAS的呆板上为Tomcat天生用于SSL通信的密钥:
keytool–genkey–aliastomcat–keyalgRSA
这时候必要输出密钥暗码和其他参数(第一个参数CN必需设置为CAS呆板名,本机利用localhost测试),会在用户目次中天生.keystore密钥文件。
2.导出密钥文件:
keytool–export–fileserver.crt–aliastomcat
这时候必要输出上一步设定的暗码,了局会在以后目次天生server.crt信托状。
3.为客户真个JVM导进密钥:
keytool–import–keystore$JAVA_HOMEjrelibsecuritycacerts
–fileserver.crt–aliastomcat
输出暗码时注重暗码为“changeit”。
4.修正服务端Tomcat设置文件,启用SSL。修正$CATALINA_HOMEconfserver.xml,往失落有关SSL的那一段的正文,必要在connector字段中到场keystorePass="password"(password即为1、2步中的暗码),keystoreFile="keystorePath"(能够把第一步天生的.keystore复制到$CATALINA_HOMEconf下,如许keystoreFile="conf/.keystore")。
5.重启Tomcat,测试https://server:8443是不是能够会见(server应换为呆板名或IP地点)。
1.3CASServer安装
下载CASServer3.0.4,将个中的cas.war复制到$CATALINA_HOMEwebapps下,固然如今CAS中的用户暗码认证Handler是很大略的,产物化必需重写这部分代码,天生新的cas.jar。这时候能够经由过程会见https://localhost:8443/cas测试CAS是不是乐成部署,应看到CAS上岸界面。
1.4CASClient部署
使用Tomcat自带的servlets-examples($CATALINA_HOMEwebappsservlets-examples)和jsp-examples($CATALINA_HOMEwebappsjsp-examples)举行实验,下载最新版本的JavaCASClient,将casclient.jar复制到这两个项目标WEB-INF目次的lib下(必要新建此目次)。修正两个项目标WEB-INFweb.xml,增加以下的过滤器:
<!--CASFilters-->
<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://server:8443/cas/login</param-value>
</init-param><!--这里的server是服务真个IP-->
<init-param>
<param-name>edu.yale.its.tp.cas.client.filter.validateUrl</param-name>
<param-value>https://serName:8443/cas/proxyValidate</param-value>
</init-param><!--这里的serName是服务真个主机名,并且必需是-->
<init-param>
<param-name>edu.yale.its.tp.cas.client.filter.serverName</param-name>
<param-value>client:port</param-value><!--client:port就是必要CAS必要拦阻的地点和端口,一样平常就是这个TOMCAT所启动的IP和port-->
</init-param>
</filter>
<filter-mapping>
<filter-name>CASFilter</filter-name>
<url-pattern>/servlet/*</url-pattern><!--这里的设置是针对servlets-examples的,针对jsp-examples设置为/*-->
</filter-mapping>
2测试
重启Tomcat,定位到servlets-examples,实行任何一个例子城市被重定向到CAS上岸页;再定位到jsp-examples,也会被重定向到CAS上岸页;此时上岸(默许的认证Handler只需求username=password,可恣意选择用户名);登录后就会进进jsp-examples;持续定位到servlets-examples,实行任何一个例子也不必再输出暗码。
增补:
在多台呆板上部署CAS:这些呆板必须在统一个域中;服务器端天生证书,客户端导进证书(操纵见上)。
PHP客户端:利用esup-phpcas客户端,考证部分php代码以下:
//importphpCASlib
include_once(CAS/CAS.php);
//initializephpCAS
phpCAS::client(CAS_VERSION_2_0,freeserver.test-toodou.com,8443,/cas);
//forceCASauthentication
phpCAS::forceAuthentication();
//atthisstep,theuserhasbeenauthenticatedbytheCASserver
//andtheusersloginnamecanbereadwithphpCAS::getUser().
//logoutifdesired
if(isset($_REQUEST[logout])){
phpCAS::logout();
}
登录停止后,CAS服务器会主动重定向回本页面。
CAS服务器与数据库毗连:实践情况中我们必要到数据库考证用户无效性,在CAS中设置JDBC毗连。
起首,我们必要创立本人的数据库考证器,固然也能够利用Jasig供应的cas-server-jdbc.jar,这里我们修正了cas-server-jdbc的源码满意本人的必要。并把mysql的jdbc驱动和修正后的jar部署到CAS%/WEB_INF/lib/。
修正%CAS%/WEB_INF/deployerConfigContext..xml,个中关于考证器的一段以下:
………………………………..
<beanclass="org.jasig.cas.adaptors.jdbc.QueryDatabaseAuthenticationHandler">
<propertyname="sql"value="selectpswfromuserwhereusername=?"/>
<propertyname="dataSource"ref="dataSource"/>
</bean>
</list>
</property>
</bean>
<beanid="dataSource"class="org.springframework.jdbc.datasource.DriverManagerDataSource"destroy-method="close">
<propertyname="driverClassName"><value>com.mysql.jdbc.Driver</value></property>
<propertyname="url"><value>jdbc:mysql://192.168.1.246:3306/toodou</value></property>
<propertyname="username"><value>username</value></property>
<propertyname="password"><value>********</value></property>
</bean>
Trackback:http://tb.blog.csdn.net/TrackBack.aspx?PostId=1503239
Java伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。Oracle收购Sun后Java前途未卜。 |
|