美文网首页
14. CAS验证码配置

14. CAS验证码配置

作者: 不知名的蛋挞 | 来源:发表于2019-08-26 14:00 被阅读0次

    现在已经可以利用CAS实现数据库的登录控制以及记住密码的功能,但是依然还会有一个实际的问题:为了防止有可能出现的暴力破解的情况,所以在进行登录之前一定要存在有一个验证码的检测操作。

    但是现在的问题是CAS属于第三方项目,不属于自己的项目,所以如果想要实现这样的验证码操作,那么必须扩充已有的程序类才可以完成。

    1. 用户名和密码检测类

    2. 验证码检测的Action程序类

    只依靠验证码服务器校验的程序类无法实现真正的验证码检测,所以还需要创建一个专门用于验证码检测的Action程序类。

    3.异常类

    • 建立数据为空时的异常处理类
    • 定义一个验证码输入错误时的错误类:

    4. 将程序打包导出

    导出为一个“rand-code.jar”文件

    5. 为项目之中追加验证码依赖包:kaptcha-0.0.9.jar、filters-2.0.235.jar

    将之前的开发包以及验证码生成的开发包上传到Linux之中,并且将其保存在cas目录之中

    mv /srv/ftp/*.jar /usr/local/tomcat/webapps/cas/WEB-INF/lib
    

    6. 修改cas项目中的web.xml文件,追加验证码显示

     <servlet>
            <servlet-name>captchacode</servlet-name>
            <servlet-class>com.google.code.kaptcha.servlet.KaptchaServlet</servlet-class>
            <init-param>
                <description>边框粗细度。必须是一个大于0的值</description>
                <param-name>kaptcha.border.thickness</param-name>
                <param-value>1</param-value>
            </init-param>
            <init-param>
                <description>图片的宽度</description>
                <param-name>kaptcha.image.width</param-name>
                <param-value>140</param-value>
            </init-param>
            <init-param>
                <description>图片的高度</description>
                <param-name>kaptcha.image.height</param-name>
                <param-value>55</param-value>
            </init-param>
        </servlet>
        <servlet-mapping>
            <servlet-name>captchacode</servlet-name>
            <url-pattern>/captchacode</url-pattern>
        </servlet-mapping>
     </servlet>
    

    7 修改“cas/WEB-INF/cas-servlet.xml”配置文件,主要是修改验证操作所使用的程序类

    • 之前自定义了一个程序类:cn.mldn.rand.action.AuthenticationViaFormWithRandAction
    • 原始内容:
    • 更新后的内容:

    8. 修改“cas/WEB-INF/webflow/login/login_webflow.xml”页面配置文件

    • 原始内容:
    • 替换掉的新内容:
    • 为项目中增加验证码的输入验证处理:

    9. 增加国际化显示信息:cas/WEB-INF/classes/message_zh_CN.properties

    然后转码:

    10. 登录页面cas/WEB-INF/view/jsp/default/uicasLoginView.jsp添加验证码输入框

    11. 测试

    相关文章

      网友评论

          本文标题:14. CAS验证码配置

          本文链接:https://www.haomeiwen.com/subject/dybksctx.html