Understood. I just finished testing - here's exactly what I did:- Check out guacamole-client staging/0.9.13-incubating and build (mvn clean package)- Make sure extensions folder is clean, then copy JDBC extension to the extensions folder (I'm using PostgreSQL)- Create a clean database for Guacamole, then run both the 001-create-schema.sql and 002-create-admin-user.sql scripts- Load Guacamole into Tomcat- Log in with the guacadmin user and create a single connection.- Create a Guacamole user with a username that matches my SSO username, and give it permissions to the new connection.- Log out of Guacamole- Copy the CAS extension to the extensions folder- Re-load Guacamole into Tomcat- Go to Guacamole URL, which redirects to CAS- Log on with CAS credentials- Redirected back to Guacamole page- Connection starts automatically. I set up a SSH test connection with just the hostname and port configured, so I get prompted for logon credentials. I'm not seeing any errors in the tomcat catalina.out file from Guacamole, and the connection auto-starts just fine. Once you get a chance if you can try to determine what's triggering that 500 error, maybe that'll help track it down. I'm unable to reproduce it, unfortunately :-/. -NickOn Monday, July 17, 2017, 8:56:59 AM EDT, Kaushik Srinivasan <[email protected]> wrote:
I'm currently working and would not be able to check it. I'd get back to you by the end of the day. Thanks. Regards Kaushik Srinivasan On 17 Jul 2017 8:54 a.m., "Nick Couchman" <[email protected]> wrote: > So, I checked out the staging/0.9.13-incubating branch of the repo and > built the client and extensions, loaded the JDBC and CAS modules, and then > loaded Guacamole. I am not seeing any sort of error message like this when > I log on with CAS. I have multiple connections available to me at the > moment, so it's going to the home screen - I'll see if I can get it down to > a single connection and try it out that way, but so far no error. > Not sure what browser you're using, but if you're using Chrome can you > pull up the Developer console, go to the Network tab, and then go through > the login process and see which API call generates the Error 500? > -Nick > > > On Sunday, July 16, 2017, 10:50:01 PM EDT, Kaushik Srinivasan < > [email protected]> wrote: > > Hi All, > > I have tried using the guacamole-auth-cas with 0.9.13 as suggested. I > further used jdbc connection (mysql) for connection properties. > > The CAS authentication works now but does not redirect to my connection > after that. I verified that the jdbc connection works independently ( by > removing auth-cas extension). Also the username returned from auth-cas is > the same as the username I have stored in the mysql table. > > In the Tomcat-8 logs the following error is thrown. > > 17-Jul-2017 02:42:07.648 SEVERE [http-nio-8080-exec-4] > com.sun.jersey.spi.container.ContainerResponse.logException Mapped > exception to response: 500 (Internal Server Error) > org.apache.guacamole.rest.APIException > at > org.apache.guacamole.rest.RESTExceptionWrapper.invoke( > RESTExceptionWrapper.java:184) > 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 > com.sun.jersey.spi.container.JavaMethodInvokerFactory$1.invoke( > JavaMethodInvokerFactory.java:60) > at > com.sun.jersey.server.impl.model.method.dispatch. > AbstractResourceMethodDispatchProvider$TypeOutInvoker._dispatch( > AbstractResourceMethodDispatchProvider.java:185) > at > com.sun.jersey.server.impl.model.method.dispatch. > ResourceJavaMethodDispatcher.dispatch(ResourceJavaMethodDispatcher. > java:75) > at > com.sun.jersey.server.impl.uri.rules.HttpMethodRule. > accept(HttpMethodRule.java:302) > at > com.sun.jersey.server.impl.uri.rules.ResourceClassRule. > accept(ResourceClassRule.java:108) > at > com.sun.jersey.server.impl.uri.rules.RightHandPathRule. > accept(RightHandPathRule.java:147) > at > com.sun.jersey.server.impl.uri.rules.RootResourceClassesRule.accept( > RootResourceClassesRule.java:84) > at > com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest( > WebApplicationImpl.java:1511) > at > com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest( > WebApplicationImpl.java:1442) > at > com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest( > WebApplicationImpl.java:1391) > at > com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest( > WebApplicationImpl.java:1381) > at > com.sun.jersey.spi.container.servlet.WebComponent.service( > WebComponent.java:416) > at > com.sun.jersey.spi.container.servlet.ServletContainer. > service(ServletContainer.java:538) > at > com.sun.jersey.spi.container.servlet.ServletContainer. > service(ServletContainer.java:716) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:742) > at > com.google.inject.servlet.ServletDefinition.doService( > ServletDefinition.java:263) > at > com.google.inject.servlet.ServletDefinition.service( > ServletDefinition.java:178) > at > com.google.inject.servlet.ManagedServletPipeline.service( > ManagedServletPipeline.java:91) > at > com.google.inject.servlet.FilterChainInvocation.doFilter( > FilterChainInvocation.java:62) > at > com.google.inject.servlet.ManagedFilterPipeline.dispatch( > ManagedFilterPipeline.java:118) > at > com.google.inject.servlet.GuiceFilter.doFilter(GuiceFilter.java:113) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter( > ApplicationFilterChain.java:193) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter( > ApplicationFilterChain.java:166) > at > org.apache.catalina.core.StandardWrapperValve.invoke( > StandardWrapperValve.java:198) > at > org.apache.catalina.core.StandardContextValve.invoke( > StandardContextValve.java:96) > at > org.apache.catalina.authenticator.AuthenticatorBase.invoke( > AuthenticatorBase.java:478) > at > org.apache.catalina.core.StandardHostValve.invoke( > StandardHostValve.java:140) > at > org.apache.catalina.valves.ErrorReportValve.invoke( > ErrorReportValve.java:80) > at > org.apache.catalina.valves.AbstractAccessLogValve.invoke( > AbstractAccessLogValve.java:624) > at > org.apache.catalina.core.StandardEngineValve.invoke( > StandardEngineValve.java:87) > at > org.apache.catalina.connector.CoyoteAdapter.service( > CoyoteAdapter.java:342) > at > org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:799) > at > org.apache.coyote.AbstractProcessorLight.process( > AbstractProcessorLight.java:66) > at > org.apache.coyote.AbstractProtocol$ConnectionHandler.process( > AbstractProtocol.java:861) > at > org.apache.tomcat.util.net.NioEndpoint$SocketProcessor. > doRun(NioEndpoint.java:1455) > at > org.apache.tomcat.util.net.SocketProcessorBase.run( > SocketProcessorBase.java:49) > at > java.util.concurrent.ThreadPoolExecutor.runWorker( > ThreadPoolExecutor.java:1145) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run( > ThreadPoolExecutor.java:615) > at > org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run( > TaskThread.java:61) > at java.lang.Thread.run(Thread.java:745) > > > If anyone can help me resolve this, it'd be great. Thanks in advance. > > Regards > Kaushik Srinivasan > > On Thu, Jul 13, 2017 at 10:08 AM, Kaushik Srinivasan < > [email protected]> > wrote: > > > Hi Nick, > > > > Thank you for the information. I will work on using Guacamole 0.9.13 and > > see how I can add the connection through some module. > > > > Thank you for your time. > > > > Regards > > Kaushik Srinivasan > > > > On Thu, Jul 13, 2017 at 10:04 AM, Nick Couchman <[email protected] > . > > invalid> wrote: > > > >> On Thursday, July 13, 2017, 9:54:47 AM EDT, Kaushik Srinivasan < > >> [email protected]> wrote: > >> > >> > >> > Hi Nick > >> > >> > Thanks a lot for helping me out. > >> > >> > I'm currently using Guacamole-0.9.12 and CAS version is 3.4.1. The CAS > >> > module was obtained from the github (incubator-guacamole-client > >> > <https://github.com/apache/incubator-guacamole-client/tree/ > >> master/extensions/guacamole-auth-cas>) > >> > and version modified to support 0.9.12 instead of 0.9.13. > >> > >> I suspect this is the issue. There were some changes made outside of > the > >> CAS module between 0.9.12 and the 0.9.13 branch to improve the CAS > redirect > >> support, so I suspect you're hitting a case where the 0.9.12 code > doesn't > >> match up with the 0.9.13 module. Is there any way you can try it with > >> consistent versions across the board? > >> > >> > Apache-Tomcat 8.5.15 is my java application server and currently for > >> > testing purposes I'm not using any front end proxy server. > >> > >> > My guacamole.properties file contains the following Data > >> > >> > cas-authorization-endpoint: https://cas.iu.edu/cas/login > >> > cas-redirect-uri: http://poc1.dyndns-at-work.com:8080/guacamole > >> Looks good. > >> > >> > CAS auth module is the only authentication module I'm loading. > >> The thing to keep in mind about the CAS authentication module is that it > >> does not supply any actual connections. So, using it by itself is > going to > >> be less-than-useful - you'll need to configure connections some other > way, > >> either using the file module, or by loading another module (JDBC is > >> probably the most useful in this scenario) and configuring the > connections > >> in that module. > >> -Nick > > > > > > >
