反馈已提交

网络繁忙

CAS常见报错及解决方案

  • 文档创建者:文档助手1
  • 历史版本:12
  • 最近更新:Catqiu 于 2022-12-07
  • 概述

    本文汇总了CAS单点登录时常见的问题及解决方案,帮助与指导用户快速找到想要的答案。

    javax.net.ssl.SSLHandshakeException

    问题描述:

    javax.net.ssl.SSLHandshakeException: java.security.cert.CertificateException: No name matching xxx.xxx.xx found

    原因分析:

    web.xml中的域名和生成证书时第一个问填写的域名不一致

    解决方案:

    检查 web.xml 中的配置

    <init-param>
    <param-name>edu.yale.its.tp.cas.client.filter.loginUrl</param-name>
    <param-value>https://susie:8443/cas/login</param-value>
    <!--这里的server是服务端的IP-->
    </init-param>
    <init-param>
    <param-name>edu.yale.its.tp.cas.client.filter.validateUrl</param-name>
    <param-value>https://susie:8443/cas/proxyValidate</param-value>
    <!--这里的ServerName是服务端的主机名也就是CN-->
    </init-param>

    确保其中的 susie 跟生成证书时第一个问填写的域名是一致的即可。如下图:

    在导入/导出证书的时候,有 keytool 报错

    问题描述:

    在导入/导出证书的时候,有 keytool 报错,报错信息如下:java.io.IOException: Keystore was tampered with, or password was incorrect解决方案:

    密码默认的就是changeit,那么 -storepass 123456 后面的密码修改为 changeit 即可。

    报错:500-Internal Server Error

    问题描述:

    配置完成登录后报错500-Internal Server Error

    javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

    HTTP Status 500 – Internal Server Error

    解决方案:

    这是因为 Java 并没有成功把我们创建的证书添加到受信库中,重新进行一遍受信操作,或者直接把 JRE 中的受信库文件直接替换成我们的前面创建的 cacerts 文件。首先看 Tomcat 用的是哪里的 JRE:

    222

    由上看出,这里 Tomcat 用的 JRE 是%JAVA_HOME%\jdk目录下,把证书挪到%JAVA_HOME%\jdk\jre\lib\security下面即可。

    登录后内存管理界面的图表为空

    问题描述:

    多台服务器做 CAS 及集群。集群正常,单点正常,但是登录后内存管理界面的图表为空。

    若移除单点登录配置文件,直接登录,内存管理界面图表则显示正常。

    解决方案:

    需要配置 CAS 登出。

    若不配置 CAS 登出,新用户虽然登录,但是 Session 里的 Token 还是之前的用户,和 Cookie 中现有用户的 Token 冲突。

    Token 冲突了,WebSocket 连接在连接验证时被断开,内存管理界面的图表自然为空。

    cas集成报错 invalid ticket

    问题描述:

    cas集成报错invalid ticket

    原因分析:

    ticket是有有效期的, 超过有效期就会失效

    解决方案:

     登录成功后跳转到不带有ticket的地址即可
    在login后不直接做doFilter, 先判断下请求中的url是否带有ticket信息, 没有的话执行doFilter, 有的话替换出一个不带ticket的url, 然后sendRedirect跳转过去即可。

    cas单点登录,https方式访问决策平台后,跳转http导致访问失败

    问题描述:

    使用cas单点登录插件,登录跳转帆软访问失败,查看请求,发现https方式访问决策平台。

    原因分析:

    访问时的https协议丢失,在重定向的时候变成了http协议。

    解决方案:

    一般配置的 nginx https+tomcat http,需要修改 nginx 和 tomcat 的配置,可参考文档 Nginx.conf 配置手册 的第三点。

    附件列表


    主题: 部署集成
    • 有帮助
    • 没帮助
    • 只是浏览
    中文(简体)

    鼠标选中内容,快速反馈问题

    鼠标选中存在疑惑的内容,即可快速反馈问题,我们将会跟进处理。

    不再提示

    10s后关闭

    联系我们
    在线支持
    获取专业技术支持,快速帮助您解决问题
    工作日9:00-12:00,13:30-17:30在线
    页面反馈
    针对当前网页的建议、问题反馈
    售前咨询
    采购需求/获取报价/预约演示
    或拨打: 400-811-8890 转1
    qr
    热线电话
    咨询/故障救援热线:400-811-8890转2
    总裁办24H投诉:17312781526
    提交页面反馈
    仅适用于当前网页的意见收集,帆软产品问题请在 问答板块提问前往服务平台 获取技术支持