Commit Graph

330 Commits

Author SHA1 Message Date
Virtually Nick
a4495cf6ec Merge 1.1.0 changes to master. 2019-08-11 19:05:11 -04:00
Michael Jumper
a59e20eb8d GUACAMOLE-360: Allow connections to active connections at API level. 2019-08-10 17:19:29 -07:00
James Muehlner
51b1c08cf4 Merge 1.1.0 changes back to master. 2019-08-08 22:13:05 -07:00
Michael Jumper
cbc25aac6f GUACAMOLE-630: Add field type for terminal color schemes. 2019-08-08 21:00:06 -07:00
Virtually Nick
02ef3ae2d8 Merge 1.1.0 changes back to master. 2019-08-03 17:06:42 -04:00
Michael Jumper
6ebb53477c GUACAMOLE-623: Add Kubernetes protocol/parameter definitions and translations. 2019-08-03 13:58:50 -07:00
Michael Jumper
00f59420e5 Merge 1.1.0 changes back to master. 2019-06-23 19:37:32 -07:00
Virtually Nick
a2b3e235e0 GUACAMOLE-579: Fix up documentation issues. 2019-06-22 19:27:33 -04:00
Virtually Nick
a6601a2bfd GUACAMOLE-579: Change fromAttribute to canonicalize 2019-06-21 12:54:42 -04:00
Virtually Nick
d8db630dbd GUACAMOLE-579: Clean up comments, implement convenience method for tokens without a prefix, and remove unneeded classes. 2019-06-20 20:41:41 -04:00
Nick Couchman
55c4144fbf GUACAMOLE-579: Parse tokens from attributes provided by the CAS server. 2019-06-20 19:52:06 -04:00
Virtually Nick
15bb363de3 Merge 1.1.0 changes back to master. 2019-06-15 17:11:13 -04:00
Michael Jumper
ec963dd036 GUACAMOLE-422: Define field type which represents the ID of any supported language. 2019-06-15 13:40:16 -07:00
Virtually Nick
3b60f135b9 Merge 1.1.0 changes to master. 2019-05-13 21:37:17 -04:00
Michael Jumper
803ff27468 GUACAMOLE-422: Update TIMEZONE field documentation to reference IANA time zone database. 2019-05-13 18:21:38 -07:00
Virtually Nick
b6e7fc9cfc GUACAMOLE-678: Rename UriGuacamoleProperty to URIGuacamoleProperty. 2019-03-24 15:58:59 -04:00
Nick Couchman
d761f55cf1 GUACAMOLE-678: Implement new UriGuacamoleProperty. 2019-03-24 15:49:19 -04:00
Michael Jumper
bcbac1fb57 GUACAMOLE-524: Ensure all guacamole-ext classes implementing connect() use the old connect() as their basis. Overriding the old connect() will not have the expected effect otherwise. 2019-01-22 15:49:16 -08:00
Michael Jumper
feecb6301f GUACAMOLE-524: Declare deprecation of old connect() within guacamole-ext. 2019-01-22 15:46:43 -08:00
Michael Jumper
a28b3c393a GUACAMOLE-524: Do not interpret tokens in SimpleUserContext if interpretTokens is false. 2019-01-22 14:25:27 -08:00
Michael Jumper
05553ec918 GUACAMOLE-524: Internally replace Connectable with an ABI-compatible version.
Defining an ABI-compatible version of Connectable at the guacamole-ext
level is problematic as concrete implementations of the interface will
suddenly compile despite having no implementation of connect() at all.

We can instead rely on the web application to ensure binary
compatibility, leaving guacamole-ext to define the interface that new
code should use.
2019-01-22 12:29:03 -08:00
Michael Jumper
9d74d9911e GUACAMOLE-524: Correct JavaDoc references to previous iteration of API rework. 2019-01-22 00:28:44 -08:00
Michael Jumper
49cd4e5531 GUACAMOLE-524: Clarify and document SimpleConnection implementation. 2019-01-21 22:04:44 -08:00
Michael Jumper
6be722ed9d GUACAMOLE-524: Require usages of SimpleConnection to explicitly request automatic interpretation of parameter tokens. Do not enable by default.
Previous implementations of SimpleConnection did not interpret parameter
tokens automatically. Adding that behavior now could have security
implications for downstream users of the class if parameter values may
unexpectedly contain substrings which would be interpreted as tokens,
particularly if parameter values are built from untrusted input.
2019-01-21 19:55:33 -08:00
Michael Jumper
7e67dde751 GUACAMOLE-524: Leverage thread-local storage to allow overriding the deprecated connect() function to have the expected effect within subclasses of SimpleConnection. 2019-01-21 17:52:54 -08:00
Michael Jumper
b638387920 GUACAMOLE-524: Provide distinct, documented, internal access to raw GuacamoleConfiguration within SimpleConnection.
While raw, internal access to the GuacamoleConfiguration was originally
present in older versions of SimpleConnection, this access was
undocumented and could result in unexpected behavior if the default
constructor was used, getConfiguration() was overridden, or
setConfiguration() was called.
2019-01-21 17:38:24 -08:00
Michael Jumper
4a1527b1d4 GUACAMOLE-524: Provide bridge implementations of both old and new versions of connect() for sake of compatibility. 2019-01-20 13:30:55 -08:00
James Muehlner
756ec2fcc4 Merge 1.0.0 changes back to master. 2018-11-08 21:26:43 -08:00
Michael Jumper
b355106c77 GUACAMOLE-220: Remove unnecessary explicit type parameters. 2018-11-08 20:11:17 -08:00
Michael Jumper
2d6ba84a3d GUACAMOLE-220: Refactor default behavior of SimpleUser and SimpleUserGroup into AbstractUser and AbstractUserGroup. 2018-11-03 14:52:24 -07:00
Michael Jumper
90a6d8e371 GUACAMOLE-220: Clarify usage of SimpleUser and SimpleUserGroup. 2018-11-03 14:14:04 -07:00
Michael Jumper
d533de118f GUACAMOLE-220: Add EMPTY_SET convenience constant to all core set interfaces. 2018-11-03 14:08:46 -07:00
Michael Jumper
d10256e151 GUACAMOLE-220: Deprecate built-in support for storage of permissions in SimpleUser. Add convenience constructors for SimpleObjectPermissionSet. 2018-11-03 13:58:50 -07:00
Michael Jumper
929c7de2c9 GUACAMOLE-220: Add user group permissions to SimpleUser. 2018-11-03 12:41:54 -07:00
Michael Jumper
5362bc6708 GUACAMOLE-220: Add SimpleUserGroup (read-only UserGroup implementation with no members). 2018-11-03 12:41:54 -07:00
Michael Jumper
143c10b6ef GUACAMOLE-524: Correct handling of tokens within SimpleConnection. The copy of the configuration should be filtered, not the original, and token values need to actually be set. 2018-10-16 14:53:10 -07:00
Michael Jumper
333a8c411f GUACAMOLE-524: Provide convenience constructor for TokenFilter which initializes the filter with provided tokens. 2018-10-16 14:53:10 -07:00
Michael Jumper
98bd3ead21 GUACAMOLE-524: Remove Attributes interface from AuthenticatedUser. Rely instead on tokens injected via decoration of connections. 2018-10-05 12:47:26 -07:00
Michael Jumper
0d7cff5f2d GUACAMOLE-524: Add convenience classes for injecting custom parameter tokens through decoration. 2018-10-05 12:47:26 -07:00
Michael Jumper
1210d5624c GUACAMOLE-524: Deprecate and replace StandardTokens with arbitrary tokens provided to Connectable.connect(). 2018-10-05 12:47:26 -07:00
Nick Couchman
01709fb26b Merge 1.0.0 changes back to master. 2018-10-05 15:13:36 -04:00
Michael Jumper
11c1d8c97e GUACAMOLE-96: Add protected convenience method for retrieving delegate object. 2018-10-05 10:36:47 -07:00
Nick Couchman
d1a6c297b8 Merge 1.0.0 changes back to master. 2018-09-29 16:50:32 -04:00
Michael Jumper
182f204c95 GUACAMOLE-635: Heap pollution is not possible within SimpleDirectory(ObjectType... objects).
From https://docs.oracle.com/javase/tutorial/java/generics/nonReifiableVarargsType.html#vulnerabilities:

"Heap pollution occurs when a variable of a parameterized type refers
to an object that is not of that parameterized type."

In this case, the parameterized type (ObjectType) and the array of that
type within this constructor are always used as their formal types.
2018-09-29 13:19:21 -07:00
Nick Couchman
d320606295 Merge 1.0.0 changes to master. 2018-09-08 18:42:08 -04:00
Michael Jumper
3492b556c3 GUACAMOLE-220: Add missing definitions for CREATE_USER_GROUP system permission. 2018-09-08 13:09:24 -07:00
Michael Jumper
d53b43ce29 Merge 1.0.0 changes back to master. 2018-07-01 23:18:04 -07:00
Nick Couchman
2ff416bb1c GUACAMOLE-540: Remove unused imports. 2018-06-30 14:31:24 -04:00
Nick Couchman
3d593a4ca1 GUACAMOLE-540: Remove processing of X-Forwarded-For header. 2018-06-30 14:28:53 -04:00
Nick Couchman
a9637494ac GUACAMOLE-524: Merge allow user attributes to be used as tokens. 2018-06-21 11:14:06 -04:00