Commit Graph

5568 Commits

Author SHA1 Message Date
Michael Jumper
483c01a6ac GUACAMOLE-221: Ensure the underlying protocol is exposed for database-driven connections.
The protocol associated with a tunnel should be correctly set
regardless of whether the tunnel results from a Connection,
ConnectionGroup, or ActiveConnection.
2020-11-25 15:26:50 -08:00
Michael Jumper
7e1be61bed GUACAMOLE-221: Retrieve protocol name and parameters from tunnel-based REST API endpoint.
If the protocol name and parameters are retrieved from Connection-
specific endpoints, then the protocol-specific context needed for
Guacamole instructions like "argv" and "required" will only be
available for Connections (not ConnectionGroups or ActiveConnections).
2020-11-25 15:24:31 -08:00
Michael Jumper
1b18c51c74 GUACAMOLE-221: Provide REST API endpoint for retrieving the underlying protocol of a tunnel. 2020-11-25 15:24:31 -08:00
Michael Jumper
5ad3389a23 GUACAMOLE-221: Define event for client-side receipt of a tunnel UUID. 2020-11-25 15:24:31 -08:00
Michael Jumper
7fc94e236b GUACAMOLE-221: Expose underlying protocol of a GuacamoleSocket via getProtocol(). 2020-11-25 15:24:31 -08:00
Michael Jumper
a71de2f155 GUACAMOLE-221: Update guacamole-common build to Java 1.8.
Without Java 1.8, we cannot add new functions to established interfaces
without breaking backward compatibility.
2020-11-24 00:30:49 -08:00
Mike Jumper
920d83f786 GUACAMOLE-1172: Merge support for retrieving user group membership from an OpenID IDP. 2020-11-22 13:22:52 -08:00
mildis
0279a31d12 GUACAMOLE-1172: add logic to retrieve groups from OIDC token 2020-11-21 11:12:26 +01:00
Mike Jumper
c4b9b0173c GUACAMOLE-1205: Merge bump of version numbers to 1.3.0. 2020-11-03 22:17:21 -08:00
Virtually Nick
5da40bd633 GUACAMOLE-1205: Bump Guacamole Client components to version 1.3.0 2020-11-03 18:06:47 -05:00
Virtually Nick
c68a817b46 GUACAMOLE-1078: Merge add Catalan translations to Guacamole 2020-11-03 13:48:06 -05:00
Jordi Roman
5972b006ff GUACAMOLE-1078: Catalan I18N. Generation of a translation into the Catalan language.
The modifications add translation file for the webapp and the following extensions:
  - guacamole-auth-cas
  - guacamole-auth-duo
  - guacamole-auth-jdbc
  - guacamole-auth-openid
  - guacamole-auth-quickconnect
  - guacamole-auth-radius
  - guacamole-auth-saml
  - guacamole-auth-totp

Modify the guac-manifest file of the different translated extensions and place translations in alphabetical order
2020-11-03 18:59:10 +01:00
Virtually Nick
df3600addc GUACAMOLE-221: Merge add support for parameter prompting via "required". 2020-11-02 09:45:47 -05:00
Michael Jumper
f3101688e2 GUACAMOLE-221: Prompt user to provide additional parameters when "required" instruction is received. 2020-11-01 21:03:25 -08:00
Michael Jumper
718145ce24 GUACAMOLE-221: Extend the guacNotification service to support generic parameter prompting. 2020-11-01 20:46:41 -08:00
Michael Jumper
688ff5310c GUACAMOLE-221: Add client support for the "required" instruction. 2020-11-01 20:46:41 -08:00
Virtually Nick
ada45ce8a5 GUACAMOLE-1021: Merge do not duplicate objects when permissions are inherited from multiple entities. 2020-10-31 20:44:49 -04:00
Michael Jumper
624d49847c GUACAMOLE-1021: Refactor SQL Server queries to NOT duplicate results across related entities.
Previous versions of the SQL Server queries relied on permission for
each object being granted from exactly one location, thus allowing
queries to be narrowed by permission using a simple JOIN. This is no
longer the case, as permissions may be inherited from multiple
locations (groups).
2020-10-31 15:36:11 -07:00
Michael Jumper
349fc36109 GUACAMOLE-1021: Refactor MySQL queries to NOT duplicate results across related entities.
Previous versions of the MySQL queries relied on permission for each
object being granted from exactly one location, thus allowing queries
to be narrowed by permission using a simple JOIN. This is no longer
the case, as permissions may be inherited from multiple locations
(groups).
2020-10-31 15:36:11 -07:00
Michael Jumper
a37e0accb6 GUACAMOLE-1021: Refactor PostgreSQL queries to NOT duplicate results across related entities.
Previous versions of the PostgreSQL queries relied on permission for
each object being granted from exactly one location, thus allowing
queries to be narrowed by permission using a simple JOIN. This is no
longer the case, as permissions may be inherited from multiple
locations (groups).
2020-10-31 15:36:11 -07:00
Mike Jumper
61dce8bdb1 GUACAMOLE-1081: Merge correction to token modifier case within TokenFilter unit tests. 2020-10-30 18:14:01 -07:00
Virtually Nick
1488bb6968 GUACAMOLE-1081: Fix JUnit tests for token modifiers. 2020-10-30 20:02:20 -04:00
Mike Jumper
df0a3fb6b6 GUACAMOLE-1081: Merge migration to uppercase token modifiers. 2020-10-30 14:07:57 -07:00
Mike Jumper
1f8c240f8e GUACAMOLE-1123: Merge standardization on ActivityRecordSet for history retrieval. 2020-10-30 11:27:04 -07:00
Virtually Nick
ba060f5534 GUACAMOLE-1123: Provide default interface implementations for history methods. 2020-10-30 12:26:29 -04:00
Virtually Nick
0430d5510a GUACAMOLE-1123: Fixes to comments, method scope, and minor code tweaks. 2020-10-30 12:26:29 -04:00
Virtually Nick
3d761ea794 GUACAMOLE-1123: Deprecate getHistory() method. 2020-10-30 12:26:29 -04:00
Virtually Nick
71625340f5 GUACAMOLE-1123: Implement new methods for retrieving user and connection history. 2020-10-30 12:26:29 -04:00
Virtually Nick
54b80f94bf GUACAMOLE-1123: Add RecordMapper support for searching history limited by the identifier of a record. 2020-10-30 11:51:16 -04:00
Virtually Nick
51f93ece8d GUACAMOLE-1081: Switch token modifiers to upper-case for consistency. 2020-10-30 09:16:29 -04:00
Virtually Nick
acf40b06b8 GUACAMOLE-1146: Merge take configured "totp-period" into account when generating tokens. 2020-10-28 16:05:58 -04:00
Michael Jumper
f0c96c1e1e GUACAMOLE-1146: Take configured "totp-period" into account when generating tokens. 2020-10-28 12:27:09 -07:00
Mike Jumper
23eaaa9132 GUACAMOLE-760: Merge support for configuring MySQL / MariaDB server timezone. 2020-10-26 12:54:23 -07:00
Virtually Nick
6d7456ec31 GUACAMOLE-760: Add JUnit tests for TimeZone getAvailableIDs. 2020-10-26 11:09:49 -04:00
Virtually Nick
3630e7800c GUACAMOLE-760: Add validation and tests for the TimeZoneGuacamoleProperty 2020-10-25 22:32:28 -04:00
Virtually Nick
0ec9bec4c8 GUACAMOLE-760: Add support for configuring server timezone. 2020-10-15 14:37:03 -04:00
Virtually Nick
0091bb1aea GUACAMOLE-1149: Merge correct regression in TOTP support if user accounts are not automatically created. 2020-08-21 07:22:26 -04:00
Virtually Nick
1af7b15825 GUACAMOLE-942: Merge correct race condition in retrieval of readable connection identifiers. 2020-08-21 07:14:00 -04:00
Michael Jumper
b07356164c GUACAMOLE-1149: Refresh model of current user after automatic account creation.
The proper database IDs must be populated in the current user's
ModeledUser for other parts of the database extension to work
correctly, including saving of user attributes.
2020-08-20 22:38:48 -07:00
Michael Jumper
cb50cea104 GUACAMOLE-1149: Refuse to update skeleton database users. 2020-08-20 22:37:27 -07:00
Michael Jumper
0bddff8bad GUACAMOLE-942: Correct race condition in retrieval of readable connection identifiers.
As activeTunnels is a live map which may change while
getActiveConnections() is running, it is possible for an initial call
to activeTunnels.isEmpty() to pass yet for the set of connection
identifiers produced to be empty.
2020-08-20 19:17:45 -07:00
Virtually Nick
f00f6d6935 GUACAMOLE-1152: Merge correct handling of client vs. server exceptions. 2020-08-20 12:19:25 -04:00
Michael Jumper
2ffe8d9705 GUACAMOLE-1152: Ensure field values accurately represent login state.
If expected fields are deleted rather than reset to empty, those fields
will not be resubmitted in future requests, resulting in the content of
those requests not accurately representing true client-side login state.

For example, if a user receives an insufficient credentials error due to
their password expiring, failing to provide any new password should
result in at least the following fields:

 1. Their original username (part of the initial login attempt)
 2. Their original password (part of the initial login attempt)
 3. Their new password (empty)

If fields are incorrectly reset to null, those fields will not be
submitted, resulting instead in a request containing only:

 1. Their original username (part of the initial login attempt)
 2. Their original password (part of the initial login attempt)

which is indistinguishable from a normal login attempt.
2020-08-19 14:32:45 -07:00
Michael Jumper
10e47a19ff GUACAMOLE-1152: Correctly differentiate between client errors and server errors.
By definition, a client error is not an internal error, but an
intentional refusal of the server to handle a malformed or otherwise
invalid request. These should not be handled in the same way as server
errors which unexpectedly block processing of a request and should be
corrected by an administrator.

In the case of GUACAMOLE-1152, client errors should not be ignored even
if failures are explicitly configured as tolerated for the associated
authentication provider.
2020-08-17 16:48:52 -07:00
Virtually Nick
d4fb1b0549 GUACAMOLE-1135: Merge return MySQL StoreUrls in URI format 2020-08-05 16:17:27 -04:00
Richard Grime
d32ebd656a GUACAMOLE-1135: Return StoreUrls in URI format 2020-08-05 08:52:54 +00:00
Virtually Nick
21eb3b4e23 GUACAMOLE-1147: Merge add support for additional LDAP properties in Docker container 2020-08-04 11:18:08 -04:00
Virtually Nick
d4fdafef23 GUACAMOLE-1150: Merge fix for correctly checking connection group permissions. 2020-08-04 11:12:50 -04:00
quantumhu
5d64a842d0 GUACAMOLE-1150: Fix for correctly checking connection group permissions. 2020-08-04 09:59:13 -04:00
Erwan
4ba33dcbc0 GUACAMOLE-1147: Add all ldap attributes from the doc 2020-08-03 20:32:52 +02:00