• cas单点登录学习:配置数据库验证进行登录


    上一篇文章中,我们顺利的搭建了cas的服务端与客户端,但是登录账号cas只提供了一个默认的用户,若是自己想在实际项目中运用,这是肯定不行的,所以,我们最好的解决方式就是配置数据库的验证。话不多说,接下来就开始配置cas服务端。

    首先,我们要配置的是服务端的配置文件,所以,先进入部署了cas服务端的tomcat文件夹,找到webapps->cas->WEB-INF->deployerConfigContext.xml文件,如下图

    打开文件,找到下图部分:

    这一块就是cas的登录用户配置,里面依旧有一个默认的用户,就是casuser   Mellon,所以我么要做的就是把这里变成数据库的配置啦,很简单,就是修改以上代码,变成:

    <bean id="primaryAuthenticationHandler" class="org.jasig.cas.adaptors.jdbc.QueryDatabaseAuthenticationHandler">
            <property name="dataSource" ref="dataSource" />
            <property name="sql" value="select password from user where username = ?" />
        </bean>
        <!-- MySQL connector -->
        <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
            <property name="driverClassName">
            <value>com.mysql.jdbc.Driver</value>
            </property>
            <property name="url">
            <value>jdbc:mysql://localhost:3306/cas</value>
            </property>
            <property name="username">
            <value>root</value>
            </property>
            <property name="password">
            <value>123456</value>
            </property>
        </bean>

    这里需要说明一下这个配置:首先cas提供的验证器有三个,默认选择的是AcceptUsersAuthenticationHandler,这里需要改变为QueryDatabaseAuthenticationHandler,这里面就需要注入一个数据源和查询sql。

    所以,我们就在下面配置了一个bean名为dataSource,dataSource的配置就不用多说咯,根据自己的数据库配置而定,这里只是demo,sql也是同理。其实这里还有一个是密码加密的,但是笔者这里只是简单介绍一下数据库配置,就不多提,其实也很简单。数据源用的是commons dbcp。

    emmmm。。。好像就已经ok了,最后当然还需要加入架包啦,这可是灵魂啊。这里需要加入以下架包:

    就这四个,添加至tomcat->webapps->cas->WEB-INF->lib,这样就ok啦。接下来做个测试吧,创建一个用户表,笔者这里有:

    然后启动tomcat,输入地址:localhost:8111/casDemo01/,使用数据库用户进行登录,如图:

     登陆后:

    架包下载地址:链接:https://pan.baidu.com/s/1i57vuUp   密码:99og

  • 相关阅读:
    SQL Server中出现用户或角色在当前数据库已经存在的问题的解决
    vs项目中添加lib库的方法总结
    【转载】C++ Socket通信总结(附C++实现)
    【转载】windows socket函数详解
    如何在 Debian 9 下安装 LEMP 和 WHMCS 7.5
    13个云计算基础设施自动化的最佳工具
    5分钟打造一个前端性能监控工具
    我的处女作——设计模式之状态模式
    IOS逆向分析笔记——replay逆向分析
    IOS逆向分析——GL脚本的提取
  • 原文地址:https://www.cnblogs.com/advanceBlog/p/8094070.html
Copyright © 2020-2023  润新知