为什么 Oracle Access Manager 的 HTTP 标头没有从 IHS 传递到 WebSphere?



我有一个IBM HTTP Web Server设置作为WebSphere应用程序服务器的反向代理。我们使用Oracle Access Manager进行用户身份验证。在IHS服务器上还运行了一个Oracle Webgate来拦截请求并根据Oracle策略检查它们。

我可以看到认证正在进行,Oracle传递回HTTP头OAM_REMOTE_USER所需的值。问题是,在流程中的某个点上,该标头没有传递到WebSphere Application Server。

Oracle Webgate正在监控端口8443,但我不明白这是否意味着Web服务器或应用服务器,因为两者都在同一台物理机器上,并且具有相同的服务器名称。如果我只是在Web服务器上为8443创建一个虚拟主机,而没有在应用服务器上创建端口,则报头将正确通过。这样做的问题是,我必须使用PreserveProxyHeader请求通过WebGate 8443端口,所以在身份验证后,它会回来寻找端口8443上的应用程序,这在Web服务器上不存在。它可以在端口8443上找到我的应用程序的唯一方法是,如果我还在应用服务器上为该端口添加一个端口,该端口包含应用程序。

我想我正在努力理解的主要事情是,如果我需要在HTTP服务器和应用服务器上定义端口Webgate监视器,或者如果它应该只在HTTP服务器端。似乎无论我做什么,在某些时候请求会从HTTP服务器重定向到应用服务器,并剥离任何OAM HTTP标头。我已经设法防止他们从应用服务器删除8443端口,但现在我的应用程序无法映射到。

这是websphereappserver8.0和IBM HTTP Server 8.0.0.5.

在管理控制台中,单击Servers> Server Types> Web Servers> web_server_name> Plug-in properties> Request routing。禁用"Remove special headers"。重新生成您的插件配置XML,并重新发布它。

最新更新