[ 
https://issues.apache.org/jira/browse/GEODE-4193?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jinmei Liao resolved GEODE-4193.
--------------------------------
       Resolution: Fixed
    Fix Version/s: 1.4.0

> Using JMX password file to secure JMX manager results in connection error.
> --------------------------------------------------------------------------
>
>                 Key: GEODE-4193
>                 URL: https://issues.apache.org/jira/browse/GEODE-4193
>             Project: Geode
>          Issue Type: Bug
>          Components: gfsh, security
>            Reporter: Jinmei Liao
>            Assignee: Jinmei Liao
>             Fix For: 1.4.0
>
>
> Steps to reproduce:
> gfsh>start locator --name=locator 
> --J=-Dgemfire.jmx-manager-password-file=password.properties
> gfsh>connect
> stack trace in gfsh log:
> [info 2018/01/04 08:57:36.498 PST Gfsh Launcher tid=0x1f] (msgTID=31 msgSN=6) 
> Authentication failed! Credentials should be String[] instead of 
> java.util.Properties
> java.lang.SecurityException: Authentication failed! Credentials should be 
> String[] instead of java.util.Properties
>       at 
> com.sun.jmx.remote.security.JMXPluggableAuthenticator.authenticationFailure(JMXPluggableAuthenticator.java:211)
>       at 
> com.sun.jmx.remote.security.JMXPluggableAuthenticator.authenticate(JMXPluggableAuthenticator.java:168)
>       at 
> javax.management.remote.rmi.RMIServerImpl.doNewClient(RMIServerImpl.java:232)
>       at 
> javax.management.remote.rmi.RMIServerImpl.newClient(RMIServerImpl.java:199)
>       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>       at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>       at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>       at java.lang.reflect.Method.invoke(Method.java:498)
>       at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:357)
>       at sun.rmi.transport.Transport$1.run(Transport.java:200)
>       at sun.rmi.transport.Transport$1.run(Transport.java:197)
>       at java.security.AccessController.doPrivileged(Native Method)
>       at sun.rmi.transport.Transport.serviceCall(Transport.java:196)
>       at 
> sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:568)
>       at 
> sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:826)
>       at 
> sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:683)
>       at java.security.AccessController.doPrivileged(Native Method)
>       at 
> sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:682)
>       at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
>       at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
>       at java.lang.Thread.run(Thread.java:748)
>       at 
> sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:283)
>       at 
> sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:260)
>       at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:161)
>       at javax.management.remote.rmi.RMIServerImpl_Stub.newClient(Unknown 
> Source)
>       at 
> javax.management.remote.rmi.RMIConnector.getConnection(RMIConnector.java:2430)
>       at 
> javax.management.remote.rmi.RMIConnector.connect(RMIConnector.java:308)
>       at 
> javax.management.remote.JMXConnectorFactory.connect(JMXConnectorFactory.java:270)
>       at 
> org.apache.geode.management.internal.cli.shell.JmxOperationInvoker.<init>(JmxOperationInvoker.java:142)
>       at 
> org.apache.geode.management.internal.cli.commands.StartLocatorCommand.doAutoConnect(StartLocatorCommand.java:336)
>       at 
> org.apache.geode.management.internal.cli.commands.StartLocatorCommand.startLocator(StartLocatorCommand.java:296)
>       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>       at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>       at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>       at java.lang.reflect.Method.invoke(Method.java:498)
>       at 
> org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:216)
>       at 
> org.apache.geode.management.internal.cli.remote.CommandExecutor.invokeCommand(CommandExecutor.java:97)
>       at 
> org.apache.geode.management.internal.cli.remote.CommandExecutor.execute(CommandExecutor.java:45)
>       at 
> org.apache.geode.management.internal.cli.remote.CommandExecutor.execute(CommandExecutor.java:39)
>       at 
> org.apache.geode.management.internal.cli.shell.GfshExecutionStrategy.execute(GfshExecutionStrategy.java:79)
>       at 
> org.springframework.shell.core.AbstractShell.executeCommand(AbstractShell.java:134)
>       at 
> org.apache.geode.management.internal.cli.shell.Gfsh.promptLoop(Gfsh.java:1008)
>       at org.springframework.shell.core.JLineShell.run(JLineShell.java:179)
>       at java.lang.Thread.run(Thread.java:748)



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to