We have a (mostly) working custom authentication provider which allows us
to perform some remote configuration on a target RDP server after a user
has successfully authenticated on the guacamole web interface. This is done
via a Listener handling the TunnelConnectEvent associated with a successful
login coupled with getting the user's authentication credentials.

We now need to extend this by passing some additional information in the
URL used to login—for example if the user goes to
https://guacamole.server/#/?setting=42, we need to be able to get that key
/ value pair at the point the tunnel connects (once they've authenticated).

I tried in the authenticateUser() overload of our custom auth provider, and
although I can see that query string on the initial page load (from
credentials.getRequest()), when they fill in their username / password and
click 'login', the next call to authenticateUser() only provides username
and password in the request parameters, and the URL parameters are missing.

I did try storing the URL parameters on the first load of the page, but
that seems quite fragile—if the user changes them without a page refresh,
they won't be updated, etc.

Is there any way to get the actual current URL the client is using at the
point of connection?

Many thanks,

David

Reply via email to