单点跨域问题解决方案

2014/09/17 2391点热度 0人点赞 0条评论

单点服务器     http://sso.5ycode.com

单点服务器提供的功能

统一登录界面

  

当访问某个系统的url时,如果判断没有登录,跳转到该登录页面,在此获取了用户访问的url

统一的登录方法(post方式)

   http://sso.5ycodecom/login.action

    userName:当前登录的用户名

    pwd:登录密码

    url: 访问系统时的url,可以根据url判断该系统是哪个业务系统

    说明:从统一的登录页面点击登录后的操作

    作用:

        1)  验证登录名和密码是否正确

        2)  该用户是否有访问该系统的权限

        3)  记录登录日志

        4)  获取单点票据ticket

        5)  根据url获取sysId(系统ID)将sysId,userName,ticket保存到单点域cookie中

统一的cookie读取

http://sso.5ycode.com/readCookie.action

  返回jsonp,支持跨域访问,将获取到的通行证ticket拿到

  说明:访问该路径时,可以从www.sso.5ycode.com的cookie中获取sysId,userName和ticket

  作用:获取登录用户名和票据

  实现方式:访问任何一个url时拦截,进入到一个固定的页面,该页面ajax访问统一cookie读取方法,拿到返回的ticket和userName后通过统一的验证入口验证票据的有效性

有效:在访问的url后追加上参数userName和ticket,跳转到对应的页面

统一的验证入口(登录过后,其他的系统再访问时)

    http://sso.5ycode.com/checkLogin.action&userName=ducc?ticket=xxx

    作用:

        1)  根据用户名和票据去验证访问权限

        2)  记录登录日志

        注:验证通过后,走自己系统内容的登录方法

统一的注销方法

 http://sso.sso.5ycode.com/logout.action&userName=ducc

     说明:注销只是将当前request的cookie给清空,拿到cookie中的票据将单点中的对应的票据也清空

       作用:

        1)  清空当前访问的cookie和票据

        2)  获取cookie中的票据ticket,根据ticket删除/作废单点对应的票据

操作流程图

 

yxkong

这个人很懒,什么都没留下

文章评论