在Jasig CAS 4.0.0中,如何注销指定用户?

时间:2015-03-18 07:28:58

标签: java single-sign-on cas jasig

我的方案是用户A已登录“admin”。用户B尝试以“admin”身份登录,customAuthenticationHandler发现“admin”已登录并返回错误异常(此部分已完成)。

之后,如何在CAS中注销“admin”?

1 个答案:

答案 0 :(得分:0)

        List<Ticket> list = new ArrayList<Ticket>();
        list.addAll(ticketRegistry.getTickets());
        for( Ticket x : list )
        {
            TicketGrantingTicketImpl ticket = (TicketGrantingTicketImpl) x;
            String name = ticket.getAuthentication().getPrincipal().getId();
            if(username.equals(name))
            {
                logoutManager.performLogout(ticket);
            }
        }

获取ticketRegistry和logoutManager,找出名称并执行loginLogout。