如何在两个 Weblogic 域之间进行通信?
Posted
技术标签:
【中文标题】如何在两个 Weblogic 域之间进行通信?【英文标题】:How to communicate between two Weblogic domains? 【发布时间】:2013-03-08 02:15:05 【问题描述】:我在 Weblogic 域上部署了一个应用程序,该应用程序从浏览器获取登录请求。
实际的登录过程发生在位于同一台机器上的第二个 Weblogic 域上。
我需要以下内容: - 在第一个域上识别为登录而进行的调用。 - 将登录请求转发到第二个域。 - 将第二个域的响应发送到第一个域,以便继续该过程;例如如果用户验证成功,则需要为他打开一个会话,向浏览器返回响应等。
注意事项 - 我假设我应该在 web.xml 中使用过滤器来识别登录请求已经到达,如果我是对的,我想听听它是如何连接到第二台服务器的调用的。 - 我对如何实现两个域之间的通信感兴趣。 - 您将如何防止对第一个域的虚假“成功身份验证”调用;即我想确保如果我的第一个域获得了成功的身份验证调用,那么我想确保该调用确实通过了身份验证服务器(即第二个域)。
如果有任何想法或帮助,我将不胜感激,谢谢!!!
【问题讨论】:
“登录过程发生在 SECOND Weblogic 上”是什么意思?您是否在第二个域上运行了用于用户验证的应用程序? @Harry.Chan 是的,这正是我的意思。目前,我在第一个应用程序(= 第一个 Weblogic 域)中使用了一个过滤器,它过滤登录请求并将请求传递给第二个应用程序(= 第二个 Weblogic 域),该应用程序作为 Web 服务公开。你推荐另一种沟通方式吗?正如我上面所问的,有没有办法识别对第一个域的虚假“成功身份验证”调用?提前谢谢!!! 【参考方案1】:好吧,我有两个想法,仅供你自己考虑!
首先,只需使用数字证书对请求进行签名,webservice https 是选项,这是处理制造问题的常用方法。
其次,实现您的自定义安全提供程序是一种比在过滤器中更标准的方式,它通常是一个 JAAS LoginModule 实现,它调用第二个域上的 web 服务进行身份验证。通过这种方式,身份验证被委托给 weblogic 服务器并且第一个域的应用程序与第二个域松散耦合。
顺便说一下,查看 weblogic 文档以了解如何实现自定义提供程序的详细信息,这是针对 weblogic 版本 10.3.2 Developing Security Providers
【讨论】:
非常感谢您的想法;我将阅读有关开发安全提供程序的内容。以上是关于如何在两个 Weblogic 域之间进行通信?的主要内容,如果未能解决你的问题,请参考以下文章