Java 实现SSO登录

Java 实现SSO登录,java,single-sign-on,servlet-filters,servlet-listeners,Java,Single Sign On,Servlet Filters,Servlet Listeners,我正在为一个应用程序实施SSO登录功能,其中来自主机站点的SSO凭据将与我的应用程序URL一起发送到请求正文中,我需要在启动页面的index.jsp时处理该URL。 我尝试的方法是将这些SSO凭据作为值对象存储在Servlet上下文中,如下所示: context.setAttributessoCredentials,SSOLIGINVO 使用Servlet过滤器,然后通过调用 servletContext.getAttributessoCredentials 从登录页面上的PhaseListen

我正在为一个应用程序实施SSO登录功能,其中来自主机站点的SSO凭据将与我的应用程序URL一起发送到请求正文中,我需要在启动页面的index.jsp时处理该URL。 我尝试的方法是将这些SSO凭据作为值对象存储在Servlet上下文中,如下所示: context.setAttributessoCredentials,SSOLIGINVO

使用Servlet过滤器,然后通过调用 servletContext.getAttributessoCredentials

从登录页面上的PhaseListener。但是,尝试获取属性不起作用,尽管我在打印属性名称列表时确实看到其他属性


这种方法是否有缺陷,或者我是否没有使用正确的方法来满足我的需求?谢谢你在这方面的帮助

通过在会话本身内部设置值来解决此问题。然后在bean类中检索它。但是,在使用SSO登录时,我必须注意防止会话在这种情况下失效。

您的问题是:从servlet上下文获取属性,还是使用servlet上下文存储凭据,这是不常见的?您是否使用Kerberos?问题是从上下文获取属性。不,我没有使用Kerberos,因为它是一个自主开发的SSO实现。