http://sucre.blog.51cto.com/1084905/683560说明了对于tomcat创建https,现在将配置cas服务器。

下载cas服务器端http://downloads.jasig.org/cas/cas-server-3.4.10-release.zip

解压后将cas-server-3.4.10-release.zip\cas-server-3.4.10\modules\cas-server-webapp-3.4.10.war包放到tomcat下的webapps下面,为了方便访问将其名修改为cas.war

启动tomcat访问https://localhost:8443/cas

注销为https://localhost:8443/cas/logout

如果访问成功说明部署成功,用户名和密码相同。为了能够将用户名和密码存入数据库我们使用jdbc的方式进行访问,需要进行如下修改:

在mysql数据中创建如下表并插入一些数据

 

 
  
  1. CREATE TABLE `app_user` (  
  2.   `username` varchar(30) NOT NULL default '',  
  3.   `passwordvarchar(45) NOT NULL default '',  
  4.   PRIMARY KEY  (`username`)  
  5. ) ENGINE=InnoDB DEFAULT CHARSET=utf8;  
  6. 并添加如下用户:  
  7. INSERT INTO `app_user` (`username`,`password`) VALUES   
  8.  ('test','111'),  
  9.  ('user','222'),  
  10.  ('tom','333'),  
  11.  ('jim','000'); 

 

用编辑器打开%CATALINA_HOME%/webapps/cas/WEBINF/deployerConfigContext.xml,找到

 
  
  1. <bean class="org.jasig.cas.authentication.handler.support.SimpleTestUsernamePasswordAuthenticationHandler" /> 

注释掉该行,在其下加入:

 
  
  1. <bean class="org.jasig.cas.adaptors.jdbc.QueryDatabaseAuthenticationHandler"> 
  2.  <property name="sql" value="select password from app_user where username=?" /> 
  3.  <property name="dataSource" ref="dataSource" /> 
  4.  </bean> 

并添加一个bean:

 
  
  1. <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource" destroy-method="close"> 
  2.    <property name="driverClassName"><value>com.mysql.jdbc.Driver</value></property> 
  3.    <property name="url"><value>jdbc:mysql://localhost:3306/test</value></property> 
  4.    <property name="username"><value>test</value></property> 
  5.    <property name="password"><value>test</value></property> 
  6. </bean> 

拷贝cas-server-jdbc-3.0.5-rc2.jar和mysql-connector-java-3.1.12-bin.jar到%CATALINA_HOME%/webapps/cas/WEB-INF/lib下。

重启tomcat 再次输入https://localhost:8443/cas这时输入刚才数据库中的密码即可登陆成功。