WebSphere 8 是否有类似于 Tomcat Valves 的东西来拦截请求(不是应用内 Servlet 过滤器..)?



我必须配置一个现有的应用程序,该应用程序通常部署在Tomcat或Jetty上的WebSphere Application Server v8上。我遇到的主要问题是,在部署它的环境中,它需要通过JAAS处理身份验证/授权。不幸的是,该应用程序使用了一个自制的身份验证系统,并且与JAAS或WebSphere的JAAS实现不兼容。

到目前为止,为了提供一个垫片,使应用程序能够在WebSphere上和谐地运行,我一直在尝试编写一个WebSphere信任关联拦截器,从WebSphere的接口中提取Subject(通过对com.ibm.websphere.security.auth.WSSubject.getCallerSubject()的调用),并将其放入HttpServlet请求中,在正常操作过程中,我的Web应用程序将提取添加的属性供我们使用。但这似乎。。。棘手的它似乎是专门建造的,我们似乎无法将其用于这种类型的操作。

理想情况下,我希望远离应用程序内过滤器,因为我希望尽可能地将IBM特定的代码排除在应用程序之外。

这里有人有什么建议吗?

一个可能的解决方案是使用位于应用程序外部的过滤器,类似于以下示例:

https://www-03.ibm.com/support/techdocs/atsmastr.nsf/WebIndex/WP101859

这仍然是过滤器链的一部分,其功能与任何其他过滤器相同,但代码将不属于应用程序的一部分。它将驻留在一个单独的jar文件中。

最新更新