远程连接到 JBoss 4.2.3 中的身份验证

标签 authentication jboss jmx

我正在尝试连接到 JBoss MBean,但由于身份验证失败而被阻止。

        Hashtable<String, String> env = new Hashtable<String, String>();
        env.put(Context.INITIAL_CONTEXT_FACTORY, "org.jnp.interfaces.NamingContextFactory");
        env.put(Context.PROVIDER_URL, "jnp://"+testIP+":"+testPort);
        env.put(Context.URL_PKG_PREFIXES, "org.jboss.naming:org.jnp.interfaces");

        env.put(Context.SECURITY_PRINCIPAL, "admin");
        env.put(Context.SECURITY_CREDENTIALS, "admin");

        InitialContext ic = new InitialContext(env);
        RMIAdaptor server = (RMIAdaptor) ic.lookup("jmx/invoker/RMIAdaptor");
        // Get the MBeanInfo for the JNDIView MBean
        ObjectName name = new ObjectName("my.service:service=MyBean");
        MBeanInfo info = server.getMBeanInfo(name);         

在连接方面似乎一切正常,直到最后一行我得到:

java.lang.SecurityException: Failed to authenticate principal=null, securityDomain=jmx-console
at org.jboss.jmx.connector.invoker.AuthenticationInterceptor.invoke(AuthenticationInterceptor.java:97)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
at org.jboss.invocation.jrmp.server.JRMPProxyFactory.invoke(JRMPProxyFactory.java:179)
:
:

安全域配置为使用 JAAS(在 jmx-invoker-service.xml 中):

<interceptor code="org.jboss.jmx.connector.invoker.AuthenticationInterceptor"
                 securityDomain="java:/jaas/jmx-console"/>

并且用户在 jmx-console-users.properties 中正确定义。

在我看来,校长根本没有被正确阅读。 JBoss 是否使用 Context.SECURITY_PRINCIPAL/CREDENTIALS 以外的东西?它出现在 Their Naming Documentation他们没有,但为什么会失败呢?

非常感谢,

-C

最佳答案

尝试像这样设置您的初始上下文工厂:

env.setProperty(Context.INITIAL_CONTEXT_FACTORY, "org.jboss.security.jndi.LoginInitialContextFactory");

关于远程连接到 JBoss 4.2.3 中的身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13862435/

相关文章:

Java JMX 拒绝与非常奇怪的案例的连接

java - 这段用于 RMI JMX 连接的 Java 代码有什么问题?

java - jmx通信选择哪种方式

c# - 使用 ASP .NET MVC(缓存、Cookie...)自定义身份验证的最佳选择

php - 使用 PHP 和 MySQL 登录到管理员 - 成员(member)网站 - 登录不工作

java - Wildfly 10.0.0 最终版是否像Tomcat一样支持OCSP?

java - Hibernate 库与日志 jar 中的 jbossall-client 库冲突

php - Laravel 网站上的虚假帐户创建预防

Javascript cookie 来记住输入值

java - ojdbc6.jar 和 ojdbc14.jar 有什么区别?