HNsnopy 2011-03-04 18:39
浏览 195
已采纳

小弟实在被折磨的不行了,请各位用过CAS的前辈支招……

大家好:
小弟最近在做一个需要SSO的系统,一开始选择了JOSSO,不过使用起来非常的不顺手,于是转投CAS,目前CAS的功能基本上都实现了,但是就是有两点没法实现:

1.CAS是用来做SSO的,但是我现在需要禁止用户重复登录,就是用户登陆过一次之后,在其他的机器(或浏览器上)不允许此用户再次登录,请问这个问题如何解决?

2.CAS默认编码貌似都是UTF8的,可是为何我在配置用户登录后返回更多信息的时候还是出现了拼接XML文件时出现乱码问题?我在CAS的web.xml内已经加入了字符编码的filter依然没有起到作用。

不过第二个问题不着急,实在不行我可以暂时不实现。希望各位前辈能帮我解决第一个问题。

当前用户库里有一个字段是专门用来记录用户登录的sessionid的,目前我打算修改CAS的源码,但是又没有任何资料显示CAS是否已经自带了这种放置用户重复登录的功能。所以想请教各位做过CAS SSO的前辈给一个明确的答案。如果CAS已经自带了放置用户重复登录的功能,请问如何实现?

  • 写回答

2条回答 默认 最新

  • iteye_12977 2011-03-05 12:15
    关注

    [b]第一个问题[/b]
    我不理解你说的用户重复登录,CAS本来就是解决点单登录问题,怎么还存在在别的系统登录呢。被集成应用是可以通过部署的CAS来进行登录检验的。

    如果对CAS不熟悉可以自己动手写一个,两天时间应该可以实现单点登录的基本功能。
    我理解的流程应该是:
    浏览器-->应用1-->被filter拦截并验证(未登录)-->重定向到CAS-->进行登录后重定向到应用1-->filter拦截验证(已经登录)-->向CAS获取用户数据-->放过请求

    [b]第二个问题[/b]
    你拼接XML时是不是把中文写入了源码中,如果是应该注意源码的编码是不是UTF-8,如果是从数据库中查出,则应该注意数据库查出中文是否是UTF-8.
    另外接收XML是因该也注意相应的解析编码。

    [b]也许我说的不清楚,但希望对你有帮助。[/b]

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 drone 推送镜像时候 purge: true 推送完毕后没有删除对应的镜像,手动拷贝到服务器执行结果正确在样才能让指令自动执行成功删除对应镜像,如何解决?
  • ¥15 求daily translation(DT)偏差订正方法的代码
  • ¥15 js调用html页面需要隐藏某个按钮
  • ¥15 ads仿真结果在圆图上是怎么读数的
  • ¥20 Cotex M3的调试和程序执行方式是什么样的?
  • ¥20 java项目连接sqlserver时报ssl相关错误
  • ¥15 一道python难题3
  • ¥15 牛顿斯科特系数表表示
  • ¥15 arduino 步进电机
  • ¥20 程序进入HardFault_Handler