http://hi.baidu.com/leon1509/blog/item/990f7422c96deaa14623e823.html

http://www.javaeye.com/topic/87654

http://hi.baidu.com/lscycom/blog/item/7c1b18614d2f0a6d0c33fa4a.html

http://www.ibm.com/developerworks/cn/opensource/os-cn-cas/index.html

1. 部署CAS Server

  • 配置Tomcat使用Https协议【ok】
  • 部署CAS Server 【ok】

      虽然 CAS Server 已经部署成功,但这只是一个缺省的实现,在实际使用的时候,还需要根据实际概况做扩展和定制,最主要的是扩展认证 (Authentication) 接口和 CAS Server 的界面

  • 扩展认证接口: 【Important】

       CAS Server 负责完成对用户的认证工作,它会处理登录时的用户凭证 (Credentials) 信息,用户名/密码对是最常见的凭证信息。CAS Server 可能需要到数据库检索一条用户帐号信息,也可能在 XML 文件中检索用户名/密码,还可能通过 LDAP Server 获取等,在这种情况下,CAS 提供了一种灵活但统一的接口和实现分离的方式,实际使用中 CAS 采用哪种方式认证是与 CAS 的基本协议分离开的,用户可以根据认证的接口去定制和扩展。

  1. AuthenticationHandler定义 [CAS提供扩展认证的核心]
  2. JDBC认证方法:【%CATALINA_HOME%/webapps/cas/WEB-INF/deployerConfigContext.xml】
    •   《deployerConfigContent.xml》

  <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
  <property name="driverClassName" value="com.mysql.jdbc.Driver"></property>
  <property name="url" value="jdbc:mysql://localhost/cas"></property>
  <property name="username" value="root"></property>
  <property name="password" value="123"></property>  
  </bean>

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

  • 将  mysql-connector-java-5.1.13-bin.jar  和  cas-server-support-jdbc-3.4.2.1.jar copy到cas/WEB-INF/lib/下

 

今天发现了个不错的网站:http://code.google.com/p/j2eewiki/wiki/CASloginByDB