天天看点

CAS4.0在tomcat中配置数据库验证

本人Phper,在CAS这样的环境里改东西,真的是为难我了,找了好久的坑,终于搞定了数据库的配置

话不多说,直接上流程:

在CAS服务器的路径为:webapps\cas-server-4.0\WEB-INF\deployerConfigContext.xml

编辑此文件之前,需要下载两个jar包

mysql-connector-java-5.1.45-bin  下载地址:

cas-server-support-jdbc-4.0.0 下载地址:

将这两个包放在:webapps\cas-server-4.0\WEB-INF\lib 路径下面

接着,创建数据库与表

CREATE DATABASE cas;

CREATE TABLE `user` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `username` varchar(50) DEFAULT NULL,
  `password` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

INSERT INTO `user` VALUES (1,'admin','222222');
INSERT INTO `user` VALUES (2,'user','222222');
           

然后到文件deployerConfigContext.xml里进行配置

第一步添加如下bean

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

注意一定要写对数据库链接的配置,包括端口,数据库名

第二步将下面的这个默认代码注释掉

<bean id="primaryAuthenticationHandler"
          class="org.jasig.cas.authentication.AcceptUsersAuthenticationHandler">
        <property name="users">
            <map>
                <entry key="casuser" value="Mellon"/>
            </map>
        </property>
    </bean>
           

换成

<bean id="dbAuthHandler" class="org.jasig.cas.adaptors.jdbc.QueryDatabaseAuthenticationHandler">
        <!--dataSource指向上面配置的dataSource bean-->
        <property name="dataSource" ref="dataSource" ></property>
        <property name="sql" value="select password from cas_t_user where user_name=?" ></property>
        <!--passwordEncoder 指向上面配置的 passwordEncoder bean-->
        <!-- <property name="passwordEncoder" ref="MD5PasswordEncoder" ></property> -->
    </bean>
           

接着找到id="authenticationManager",将<entry key-ref="primaryAuthenticationHandler" value-ref="primaryPrincipalResolver" />注释掉换成

<entry key-ref="dbAuthHandler" value-ref="primaryPrincipalResolver" />
           

最后 ,可以了,访问登录主页吧!

CAS4.0在tomcat中配置数据库验证
CAS4.0在tomcat中配置数据库验证