美文网首页cas
cas添加伪登录认证模式

cas添加伪登录认证模式

作者: sweetMemories | 来源:发表于2017-09-08 11:09 被阅读50次

    伪登录认证模式

    伪登录认证模式说明

    应用场景

    • 伪登录采用模拟接入系统登录表单,利用程序将用户名和密码写到相应位置,进行表单提交登录。
    • 特点:不需要接入系统改造、支持用户对照
    • 接入条件:接入系统登录口表单无验证码、以及其他不固定的登录参数,同时需要获取接入系统的用户账号作对照登录。
    • 应用场景:接入系统无法作单点登录改造,但可以提供接入系统用户名和密码。

    接入方式

    • 用户访问单点登录服务,登录平台,用户访问应用系统时,平台取出该系统对应的用户名和密码,模拟客户访问业务系统登录口,将用户名和密码写到对应的位置,提交表单,直接通过业务系统的登录口进行业务系统,保证业务系统原有的稳定性。对系统改造较少。需要业务系统改造取消登录口的验证码,提供系统用户的密码(明码)。
    • 此功能主要是针对客户要做集成的一些老系统(无法改造)所设计的一套接入方法,使用时只需要在维护业务系统用户登录信息(即老系统的用户名,密码),便可以实现对旧系统的单点登录。
    • 说明:如果业务系统登录请求支持get提交的话,只需要提供请求地址,以及登录帐号密码即可,提供地址如下:
      http://业务系统地址/登录方法?username=帐号&password=密码

    补充说明

    • 安全性说明:系统采用自身模拟构建一个登录口,将用户名和密码提交到登录验证口,信息采用post方法提交,保证数据的安全性。
    • 应用受限:此模式一般应用于可以获取接入系统用户账号,而且登录口不采用验证码。

    代码部分(参考cas4.2.7添加新页面,只对部分进行说明)

    controller代码,其中fakepage为系统页面路径,假定fakepage=application

    @Controller
    public class FakeSSOController extends AbstractController {
    
        @Override
        public ModelAndView handleRequestInternal(HttpServletRequest request,
                                          HttpServletResponse response) throws Exception {
    
            String fakepage = request.getParameter("fakepage");
    
            return new ModelAndView(fakepage);
        }
    }
    

    配置WEB-INF/spring-configuration/applicationContext.xml,新增bean并配置

    在WEB-INF/spring-configuration下新增view.xml,配置jsp映射路径,假设有个系统有application,则添加页面如下

    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
           xmlns:c="http://www.springframework.org/schema/c"
           xsi:schemaLocation="http://www.springframework.org/schema/beans
            http://www.springframework.org/schema/beans/spring-beans.xsd">
    
        <!-- Application Views -->
        <bean id="application" class="org.springframework.web.servlet.view.InternalResourceView"
              c:url="/WEB-INF/view-zjs/jsp/default/ui/application.jsp" />
    </beans>
    

    web.xml配置

    jsp内容(表单内容自动提交)

    <body>
        <form id="test" action="http://xxx/Login2" method="post">
            <input type="hidden" name="UserName" value="test">
            <input type="hidden" name="Password" value="test">
        </form>
    </body>
    <script>
        window.onload = function(){
            document.getElementById("test").submit();
        }
    </script>
    

    相关文章

      网友评论

        本文标题:cas添加伪登录认证模式

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