【发布时间】:2015-07-28 14:52:17
【问题描述】:
我正在使用一个 servlet,我想在其中添加过滤器以使用 cas 登录,成功登录后,我需要从身份验证中获取一些信息(我需要用户名和用户组)。那么,为了了解如何做到这一点,有人可以告诉我,或者让我参考文档,CAS 的响应是什么以及其中的内容是什么?提前谢谢你。
【问题讨论】:
我正在使用一个 servlet,我想在其中添加过滤器以使用 cas 登录,成功登录后,我需要从身份验证中获取一些信息(我需要用户名和用户组)。那么,为了了解如何做到这一点,有人可以告诉我,或者让我参考文档,CAS 的响应是什么以及其中的内容是什么?提前谢谢你。
【问题讨论】:
如果您将 CAS 与 Spring Security 一起使用,您可以为此使用 AuthenticationSuccessHandler。您可以从“身份验证”参数中获取所有信息。
如果不是,您可以覆盖您用于票证验证的过滤器的某些方法。 AbstractTicketValidationFilter 中有 onSuccessfulValidation 和 onFailedValidation 方法,默认为空。您可以扩展您正在使用的过滤器并覆盖这些方法。该信息将在“assertion”参数下提供。
最后,我认为您可以创建自己的过滤器,并在该过滤器中检查用户是否已登录并检索所需的信息。但由于我没有在没有 Spring Security 的情况下使用 CAS,因此我不确定您是否可以获得所需的信息。
【讨论】: