0
我们的应用程序依靠AuthorizationModule
来过滤远程上下文中的某些IP地址。这个模块在JBoss 5.1.0.GA(with a known workaround)上完美工作,但在EAP-6.1.0.Alpha上失败,因为Thread
名称模式发生了明显变化。在JBoss 7的AuthorizationModule中获取远程客户端IP
问:是否可以在以下上下文中获取客户端IP地址?
import org.jboss.security.authorization.modules.AbstractAuthorizationModule;
public class MyAuthorizationModule extends AbstractAuthorizationModule {
@Override
public int authorize(Resource resource) {
//Caller is a standalone Java client, that connects to JBoss 7.x using EJB Remoting
String callerIP = ...;
}
}
我试过到目前为止:
调用
java.rmi.server.RemoteServer.getClientHost()
。这导致ServerNotActiveException
。解析
JBossThread
名称(relateddiscussions)。
为什么不用JBoss配置过滤IP地址,使用org.apache.catalina.valves.RemoteAddrValve阀? – Thomas 2013-05-04 19:59:45
@Thomas:我认为这只会在[web]模块中有用,而不适用于过滤_remoting_连接? – 2013-06-03 17:05:45