【发布时间】:2015-10-29 19:03:04
【问题描述】:
我在 http-connector (ApplicationRealm) 级别有一个安全领域,我的远程出站连接还有另一个安全领域,即 MyRealm。当我设置 jboss-ejb-client 属性时,我设置了以下两个属性:
remote.connection.default.username=${username}
remote.connection.default.password=${密码}
这有助于我使用远程服务器验证 ApplicationRealm。我遇到的问题是,当我在远程服务器上时,无法通过安全领域:MyRealm,因为主体不在服务器之间共享,而且我没有或不知道发送所需信息的方法验证另一台服务器上的用户,因为我从 JBossCallbackHandler 获得的用户名和密码实际上是用于 ApplicationRealm 的凭据,而不是我需要验证我的第二个领域的凭据。
我试图删除 security-realm="ApplicationRealm" 但它失败了,因为它需要身份验证机制。
除了用户名/密码之外,有没有办法向远程服务器发送信息,例如验证 MyRealm 的主体?有没有办法停用 ApplicationRealm、替换它或删除它?
<subsystem xmlns="urn:jboss:domain:remoting:2.0">
<endpoint worker="default"/>
<http-connector name="http-remoting-connector" connector-ref="default" security-realm="ApplicationRealm"/>
<outbound-connections>
<remote-outbound-connection name="remote-ejb-connection" outbound-socket-binding-ref="remote-ejb" username="ejb" security-realm="MyRealm" protocol="http-remoting">
<properties>
<property name="SASL_POLICY_NOANONYMOUS" value="true"/>
<property name="SSL_ENABLED" value="false"/>
<property name="SASL_POLICY_NOPLAINTEXT" value="false"/>
</properties>
</remote-outbound-connection>
</outbound-connections>
</subsystem>
谢谢!
【问题讨论】: