diff --git a/extensions/guacamole-auth-quickconnect/src/main/java/org/apache/guacamole/auth/quickconnect/QuickConnectAuthenticationProvider.java b/extensions/guacamole-auth-quickconnect/src/main/java/org/apache/guacamole/auth/quickconnect/QuickConnectAuthenticationProvider.java index a3add1185..e3f0bbd44 100644 --- a/extensions/guacamole-auth-quickconnect/src/main/java/org/apache/guacamole/auth/quickconnect/QuickConnectAuthenticationProvider.java +++ b/extensions/guacamole-auth-quickconnect/src/main/java/org/apache/guacamole/auth/quickconnect/QuickConnectAuthenticationProvider.java @@ -21,11 +21,14 @@ package org.apache.guacamole.auth.quickconnect; import com.google.inject.Inject; import com.google.inject.Provider; +import java.util.Collections; import java.util.HashMap; import java.util.Map; import org.apache.guacamole.GuacamoleException; import org.apache.guacamole.net.auth.AuthenticatedUser; import org.apache.guacamole.net.auth.Credentials; +import org.apache.guacamole.net.auth.credentials.CredentialsInfo; +import org.apache.guacamole.net.auth.credentials.GuacamoleInvalidCredentialsException; import org.apache.guacamole.net.auth.simple.SimpleAuthenticationProvider; import org.apache.guacamole.net.auth.UserContext; import org.apache.guacamole.protocol.GuacamoleConfiguration; @@ -41,8 +44,6 @@ public class QuickConnectAuthenticationProvider extends SimpleAuthenticationProv */ private final Logger logger = LoggerFactory.getLogger(QuickConnectAuthenticationProvider.class); - private Map quickConnections = new HashMap(); - private UserContext userContext = null; @Inject @@ -70,18 +71,13 @@ public class QuickConnectAuthenticationProvider extends SimpleAuthenticationProv public AuthenticatedUser authenticateUser(Credentials credentials) throws GuacamoleException { - logger.debug(">>>QuickConnect<<< authenticateUser NOT IMPLEMENTED."); + logger.debug(">>>QuickConnect<<< authenticateUser running for user {}.", credentials.getUsername()); - GuacamoleConfiguration config = new GuacamoleConfiguration(); + String username = credentials.getUsername(); + if(username == null || username.isEmpty()) + throw new GuacamoleInvalidCredentialsException("You must login.", CredentialsInfo.USERNAME_PASSWORD); - config.setProtocol("ssh"); - config.setParameter("hostname","ussalxapps005t.cotyww.com"); - config.setParameter("port","22"); - - quickConnections.put("Adhoc 1", config); - - if (userContext == null) - userContext = new QuickConnectUserContext(this, credentials.getUsername(), quickConnections); + userContext = new QuickConnectUserContext(this, credentials.getUsername()); return null; @@ -94,18 +90,11 @@ public class QuickConnectAuthenticationProvider extends SimpleAuthenticationProv logger.debug(">>>QuickConnect<<< Retrieving configurations for user {}", credentials.getUsername()); - GuacamoleConfiguration config = new GuacamoleConfiguration(); - - config.setProtocol("ssh"); - config.setParameter("hostname","ussalxapps005t.cotyww.com"); - config.setParameter("port","22"); - - quickConnections.put("Adhoc 1", config); - if(userContext == null) - userContext = new QuickConnectUserContext(this, credentials.getUsername(), quickConnections); + userContext = new QuickConnectUserContext(this, credentials.getUsername()); + + return Collections.emptyMap(); - return quickConnections; } private Map @@ -160,7 +149,7 @@ public class QuickConnectAuthenticationProvider extends SimpleAuthenticationProv // Return user context restricted to authorized configs // return new QuickConnectUserContext(this, authenticatedUser.getIdentifier(), configs); - return userContext; + return new QuickConnectUserContext(this, authenticatedUser.getIdentifier()); } diff --git a/extensions/guacamole-auth-quickconnect/src/main/java/org/apache/guacamole/auth/quickconnect/QuickConnectUserContext.java b/extensions/guacamole-auth-quickconnect/src/main/java/org/apache/guacamole/auth/quickconnect/QuickConnectUserContext.java index 02038604d..9d12eaab2 100644 --- a/extensions/guacamole-auth-quickconnect/src/main/java/org/apache/guacamole/auth/quickconnect/QuickConnectUserContext.java +++ b/extensions/guacamole-auth-quickconnect/src/main/java/org/apache/guacamole/auth/quickconnect/QuickConnectUserContext.java @@ -112,6 +112,7 @@ public class QuickConnectUserContext implements UserContext { public QuickConnectUserContext(AuthenticationProvider authProvider, Map configs) { this(authProvider, UUID.randomUUID().toString(), configs); + logger.debug(">>>QuickConnect<<< Constructor with authProvider and configs."); } /** @@ -216,6 +217,9 @@ public class QuickConnectUserContext implements UserContext { @Override public Directory getUserDirectory() throws GuacamoleException { + + logger.debug(">>>QuickConnect<<< Returning the entire user directory: {}", userDirectory.getIdentifiers()); + return userDirectory; }