From 1fa0153a8a2640115a0362d42d6b54e28717b58d Mon Sep 17 00:00:00 2001 From: Michael Jumper Date: Tue, 6 Jan 2015 05:52:16 -0800 Subject: [PATCH] GUAC-340: Filter all configurations returned by getAuthorizedConfigurations() in SimpleAuthenticationProvider. --- .../net/auth/simple/SimpleAuthenticationProvider.java | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/guacamole-ext/src/main/java/org/glyptodon/guacamole/net/auth/simple/SimpleAuthenticationProvider.java b/guacamole-ext/src/main/java/org/glyptodon/guacamole/net/auth/simple/SimpleAuthenticationProvider.java index ab9d98556..f899ce036 100644 --- a/guacamole-ext/src/main/java/org/glyptodon/guacamole/net/auth/simple/SimpleAuthenticationProvider.java +++ b/guacamole-ext/src/main/java/org/glyptodon/guacamole/net/auth/simple/SimpleAuthenticationProvider.java @@ -28,6 +28,8 @@ import org.glyptodon.guacamole.net.auth.AuthenticationProvider; import org.glyptodon.guacamole.net.auth.Credentials; import org.glyptodon.guacamole.net.auth.UserContext; import org.glyptodon.guacamole.protocol.GuacamoleConfiguration; +import org.glyptodon.guacamole.token.StandardTokens; +import org.glyptodon.guacamole.token.TokenFilter; /** * Provides means of retrieving a set of named GuacamoleConfigurations for a @@ -72,6 +74,14 @@ public abstract class SimpleAuthenticationProvider if (configs == null) return null; + // Build credential TokenFilter + TokenFilter tokenFilter = new TokenFilter(); + StandardTokens.addStandardTokens(tokenFilter, credentials); + + // Filter each configuration + for (GuacamoleConfiguration config : configs.values()) + tokenFilter.filterValues(config.getParameters()); + // Return user context restricted to authorized configs return new SimpleUserContext(credentials.getUsername(), configs);