Project: springxd
Issue XD-3221: Enabling security breaks xd-shell
After enabling security in {{XD_HOME/config/servers.yml}} {code} spring: profiles: admin security: basic: enabled: true # false to disable security settings (default) realm: SpringXD user: # valid only if security.basic.enabled=true name: johndoe password: johndoe role: ADMIN, VIEW, CREATE {code} It's no longer possible to connect to admin server through xd-shell {code} server-unknown:>admin config server --username johndoe --password johndoe Unable to contact XD Admin Server at 'http://localhost:9393/'. server-unknown:>admin config info ------------- -------------------------------------------------------------- Credentials [username='johndoe, password=****'] Result Unable to contact XD Admin Server at 'http://localhost:9393/'. Target http://localhost:9393/ Timezone used Greenwich Mean Time (UTC 0:00) ------------- -------------------------------------------------------------- ------------------------------------------------------------------------------- An exception ocurred during targeting: org.springframework.web.client.HttpClientErrorException: 403 Forbidden at org.springframework.web.client.DefaultResponseErrorHandler.handleError(DefaultResponseErrorHandler.java:91) at org.springframework.xd.rest.client.impl.VndErrorResponseErrorHandler.handleError(VndErrorResponseErrorHandler.java:50) at org.springframework.web.client.RestTemplate.handleResponse(RestTemplate.java:614) at org.springframework.web.client.RestTemplate.doExecute(RestTemplate.java:570) at org.springframework.web.client.RestTemplate.execute(RestTemplate.java:545) at org.springframework.web.client.RestTemplate.getForObject(RestTemplate.java:253) at org.springframework.xd.rest.client.impl.SpringXDTemplate.(SpringXDTemplate.java:114) at org.springframework.xd.rest.client.impl.SpringXDTemplate.(SpringXDTemplate.java:102) at org.springframework.xd.shell.command.ConfigCommands.target(ConfigCommands.java:112) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:202) at org.springframework.shell.core.SimpleExecutionStrategy.invoke(SimpleExecutionStrategy.java:64) at org.springframework.shell.core.SimpleExecutionStrategy.execute(SimpleExecutionStrategy.java:57) at org.springframework.shell.core.AbstractShell.executeCommand(AbstractShell.java:127) at org.springframework.shell.core.JLineShell.promptLoop(JLineShell.java:533) at org.springframework.shell.core.JLineShell.run(JLineShell.java:179) at java.lang.Thread.run(Thread.java:745) {code} It looks like admin base URL (http://localhost:9393/) is not defined in security section of {{application.yml}} so {{SpringXDTemplate}} can't be initialized.
Story points: 1