weixin_42400429
2010-09-27 16:13 阅读 710
已采纳

在cas server中登录后怎么取得当前的用户名

在网上搜索到很多资料都是讲述在cas client中取得当前用户名的方法,请问在cas server中登录后怎么取得当前的用户名。

在这里还有一个问题请教,使用cas 单点登录,那么注册这个功能(还有包括修改密码)模块是放在cas server中,还是放在cas client应用中。

谢谢

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

4条回答 默认 最新

  • 已采纳
    iteye_19165 iteye_19165 2010-10-01 14:39

    多个web客户端应用,那么每个地方都做个注册功能,还是所有客户端都统一到某一个客户注册功能。

    这两种方式都可以,根据你的需要,如果所有系统的注册数据都一样的话就统一到一个客户注册功能

    点赞 评论 复制链接分享
  • iteye_19165 iteye_19165 2010-09-27 23:36

    在client中可以在session中取得用户名
    CASReceipt receipt = (CASReceipt )session.getAttribute(CASFilter.CAS_FILTER_RECEIPT);
    或者
    CASReceipt receipt = (CASReceipt )session.getAttribute("edu.yale.its.tp.cas.client.filter.receipt");

    注册这个功能(还有包括修改密码)放到client中,server端只做认证

    点赞 评论 复制链接分享
  • iteye_19165 iteye_19165 2010-09-28 13:33

    在server的org.jasig.cas.web.flow.AuthenticationViaFormAction类的doBind方法中
    [code="java"]UsernamePasswordCredentials credentials = (UsernamePasswordCredentials) binder.getTarget();[/code]
    credentials里就有用户名
    在cas client上注册时,把用户和密码再同步到cas server数据库中
    就是这个意思

    点赞 评论 复制链接分享
  • yanlianglu 卢艳亮 2013-04-15 16:40

    String username = request.getAttribute("credentials").toString();

    点赞 评论 复制链接分享

相关推荐