Commit Graph
100 Commits
Author SHA1 Message Date
Mike Jumper b8770589f3 Merge 1.5.1 changes back to master. 2023-04-07 12:06:02 -07:00
Mike Jumper 860cb1930b GUACAMOLE-1765: Merge changes migrating JS unit tests to frontend-maven-plugin and headless Firefox. 2023-04-07 12:01:04 -07:00
Mike Jumper 6ba8971fa6 GUACAMOLE-1754: Merge automatic PR verification builds. 2023-04-04 09:44:47 -07:00
Michael Jumper de3a1f5ec6 GUACAMOLE-839: Omit properties added by AngularJS core from auth request parameters. 2023-04-04 09:10:13 -07:00
Michael Jumper 1d0714f185 GUACAMOLE-1763: Update JavaScript dependencies to latest compatible versions. 2023-04-03 14:31:07 -07:00
Michael Jumper 8ee9ee40dc GUACAMOLE-1763: Update Java dependencies to latest compatible versions. 2023-04-03 14:24:58 -07:00
Mike Jumper 7e89895818 GUACAMOLE-1758: Merge updates to Czech translation of webapp. 2023-03-28 14:20:48 -07:00
Michael Jumper 08e5938493 GUACAMOLE-839: Redirect user to proper URI for SSL/TLS client auth (rather than just refuse). 2023-03-28 13:36:15 -07:00
Michael Jumper e6449d2c57 GUACAMOLE-1757: Ensure SSO provider list is added to login UI only once. 2023-03-23 12:30:58 -07:00
Michael Jumper 7d5ec77adf GUACAMOLE-1756: Clean up assignment of application state. 2023-03-23 00:16:32 -07:00
Michael Jumper c21ee0f830 GUACAMOLE-1756: Display login failures regardless of whether the interactive login form was used. 2023-03-22 14:08:52 -07:00
Michael Jumper f98901f933 GUACAMOLE-839: Add sanity checks around parsed PEM data, which may indeed be null. 2023-03-08 09:34:52 -08:00
Michael Jumper 6424b063f2 GUACAMOLE-839: Correct WildcardURIGuacamoleProperty to correctly handle missing (null) properties. 2023-03-08 09:34:26 -08:00
Michael Jumper 82073a5976 GUACAMOLE-839: Correct typo in JavaDoc of decode() - "valid", not "value". 2023-03-07 16:38:51 -08:00
Michael Jumper 9f8bb71b0e GUACAMOLE-839: Correct JavaDoc for parameters of getUsername(). 2023-03-07 16:37:00 -08:00
Michael Jumper d0574f8d82 GUACAMOLE-839: Use BouncyCastle for retrieval of certificate details.
Java's build-in support for reading X.509 certificates does not deal
well with PIV certificates containing the username as a "serialNumber"
attribute. Rather than exposing the string value of that attribute, the
Java implementation exposes a byte array that does not fully match the
string value shown by a tool like OpenSSL.

BouncyCastle, on the other hand, _does_ match the output of OpenSSL, and
provides a predictable means of decoding the certificate.
2023-03-07 16:36:37 -08:00
Mike Jumper b283341846 GUACAMOLE-1740: Merge corrections to breadth of clipboard editor CSS. 2023-03-07 12:09:25 -08:00
Michael Jumper b9958fa331 GUACAMOLE-839: Include SSL/TLS auth support within SSO dist archive. 2023-03-05 21:38:30 -08:00
Mike Jumper a25fa1c982 GUACAMOLE-1730: Merge correction to missing comma in guacamole-history-recording-storage guac-manifest.json. 2023-03-05 19:17:20 -08:00
Michael Jumper 0b5b82cc48 GUACAMOLE-839: Allow accepted subject DNs to be restricted via configuration. 2023-03-01 09:10:53 -08:00
Michael Jumper 8255326512 GUACAMOLE-839: Move SSL/TLS client auth logic to separate service. 2023-03-01 09:10:53 -08:00
Michael Jumper 38f1360dec GUACAMOLE-839: Ensure SSL/TLS client auth failures are reflected in the Guacamole UI. 2023-03-01 09:10:53 -08:00
Michael Jumper b6ce477625 GUACAMOLE-839: Support deferred retrieval of authentication parameters. 2023-03-01 09:10:52 -08:00
Michael Jumper 9177cac3cc GUACAMOLE-839: Allow authenticationService to affect login screen even if not invoked by login screen. 2023-03-01 09:10:52 -08:00
Michael Jumper e2a6947ff6 GUACAMOLE-839: Implement base support for SSO using SSL/TLS authentication (certificates / smart cards). 2023-03-01 09:10:52 -08:00
Michael Jumper 6bf0b8cf63 GUACAMOLE-839: Allow testing of null nonce values. 2023-03-01 09:10:52 -08:00
Michael Jumper 2e8cf82234 GUACAMOLE-839: As with NonceService, ensure each auth session manager instance has its own context and will not validate the sessions of other session managers. 2023-03-01 09:10:52 -08:00
Michael Jumper e51d548995 GUACAMOLE-839: Ensure each NonceService instance has its own context (will not validate the nonces of other contexts). 2023-03-01 09:10:52 -08:00
Michael Jumper 841190df5a GUACAMOLE-839: Generate case-insensitive nonce values that can safely be used in domains. 2023-03-01 09:10:52 -08:00
Michael Jumper f2c7d746ea GUACAMOLE-839: Move authentication session management service to internal common SSO library. 2023-03-01 09:10:52 -08:00
Michael Jumper 1015df6b47 GUACAMOLE-839: Move nonce-generation service to internal common SSO library. 2023-03-01 09:10:52 -08:00
Michael Jumper 5b8170eee4 GUACAMOLE-1744: Clean up UI only if user is not logged in. 2023-02-28 11:01:42 -08:00
Michael Jumper d10c35396e GUACAMOLE-1744: Automatically reset UI if session is no longer valid. 2023-02-27 14:53:09 -08:00
Michael Jumper f61f016fdf GUACAMOLE-1744: Provide REST API mechanism for testing session validity.
NOTE: This test must not have the effect of resetting a session's last
accessed time, or periodic validity tests will erroneously act as
session keep-alives.
2023-02-27 14:53:09 -08:00
Michael Jumper cfffcdf0b7 GUACAMOLE-1745: Ensure deep copies of session storage are created only if necessary. 2023-02-27 14:44:46 -08:00
Mike Jumper 72b0634a5f GUACAMOLE-1730: Merge Polish translation. 2023-02-04 13:08:30 -08:00
Mike Jumper 309350a909 GUACAMOLE-1293: Display anonymous users within a shared session as "Anonymous". 2023-02-03 16:37:19 -08:00
Mike Jumper bd91327415 GUACAMOLE-1293: Allow "onmsg" to determine whether "onjoin" and "onleave" fire. 2023-01-31 15:27:00 -08:00
Mike Jumper b7e3f73ffa GUACAMOLE-1293: Clarify message parameter mapping with variable naming. 2023-01-30 12:07:50 -08:00
Mike Jumper c45c529522 GUACAMOLE-1293: Display user count and join/leave notifications in out-of-the-way status indicator. 2023-01-30 10:16:22 -08:00
Mike Jumper a0d5824e83 GUACAMOLE-1293: Add "onjoin" and "onleave" events as alternative to handling low-level "msg" instructions directly. 2023-01-30 10:16:22 -08:00
Mike Jumper 250039aaf9 GUACAMOLE-1293: Replace message list with overall shared user count. 2023-01-30 10:16:22 -08:00
Mike Jumper f194ca6367 Merge 1.5.0 changes back to master. 2023-01-22 09:33:31 -08:00
Mike Jumper 9a587a16eb GUACAMOLE-1322: Merge correction to SAML sanity-checking logic regarding SAML_IDP_URL. 2023-01-22 09:32:17 -08:00
Mike Jumper 56b4cc436d GUACAMOLE-1731: Correct parent project version (bumped to 1.5.0). 2023-01-10 23:30:47 -08:00
Mike Jumper 0614861578 Merge 1.5.0 changes back to master. 2023-01-10 21:59:48 -08:00
Mike Jumper 28ae0a9331 GUACAMOLE-1293: Merge client support for join/leave notifications. 2023-01-10 21:59:14 -08:00
Mike Jumper 9f176ed489 Merge 1.5.0 changes back to master. 2023-01-10 21:52:26 -08:00
Mike Jumper b35873f79e GUACAMOLE-1604: Add 1.5.0 to list of compatible API versions. 2023-01-10 16:41:23 -08:00
Mike Jumper 0eed915d28 GUACAMOLE-1604: Bump Guacamole.API_VERSION to 1.5.0. 2023-01-10 16:40:52 -08:00
Mike Jumper 5ecee2efaa GUACAMOLE-1604: Bump version numbers of all projects to 1.5.0. 2023-01-10 16:40:19 -08:00
Mike Jumper 0f3cb8d056 GUACAMOLE-1594: Update JavaScript dependencies to latest compatible versions. 2023-01-10 16:28:08 -08:00
Mike Jumper 9262a2b33b GUACAMOLE-1594: Update Java dependencies to latest compatible versions. 2023-01-10 16:28:08 -08:00
Mike Jumper 6721f20b93 GUACAMOLE-1728: Merge correction to attribute filtering (null values should be allowed). 2022-12-29 13:58:46 -08:00
Mike Jumper c2f2defcba GUACAMOLE-1402: Merge proper API definitions of all possible client state values. 2022-12-11 13:23:06 -08:00
Mike Jumper 1ea6968882 GUACAMOLE-1488: Merge support for configuring LDAP SSL protocol. 2022-12-11 13:11:49 -08:00
Mike Jumper ff44f03c1c GUACAMOLE-1723: Merge automatic enforcement of access time restrictions for logged in users. 2022-12-09 15:57:29 -08:00
Mike Jumper 7c502fdd0e GUACAMOLE-1772: Merge support for configuring KSM API call interval. 2022-11-30 09:31:52 -08:00
Mike Jumper af204001fd GUACAMOLE-1721: Merge changes migrating to storage only of auth token. 2022-11-29 15:53:32 -08:00
Mike Jumper c1b6ce4d8d GUACAMOLE-1656: Merge corrections to rendering of KSM-related fields/preferences. 2022-11-22 12:44:33 -08:00
Mike Jumper 3cbd1d9962 GUACAMOLE-1664: Merge corrections/additions to Czech translation. 2022-11-13 12:23:43 -08:00
Mike Jumper 79f72aad4f GUACAMOLE-1716: Remove usage of AccessController (deprecated in Java 17 and later). 2022-11-13 12:12:59 -08:00
Michael Jumper 9ca7d00dab GUACAMOLE-1594: Exclude optional JavaMail dependency from Logback. 2022-11-11 16:04:16 -08:00
Mike Jumper 22f2f89009 GUACAMOLE-1594: Switch to Logback 1.3.x (supports Java 8). 2022-11-11 15:27:28 -08:00
Mike Jumper 4c8ba81c10 GUACAMOLE-1594: Override transitive common-text for LDAP with latest release (1.10.0). 2022-11-06 22:06:22 -08:00
Mike Jumper 6637f4911d GUACAMOLE-1594: Update to Spring Security 5.7.5. 2022-11-06 22:06:17 -08:00
Mike Jumper 753cfc3e5c GUACAMOLE-1594: Update to latest version of Jackson (2.14.0). 2022-11-06 22:06:06 -08:00
Mike Jumper ce9922e08c GUACAMOLE-1594: Update all Java and JavaScript dependencies to latest compatible.
NOTE: Several WebPack plugins could not be updated as all plugins within
WebPack's "webpack-contrib" have dropped support for WebPack v4
entirely, but Closure Compiler only supports WebPack v4.
2022-10-27 12:54:58 -07:00
Michael Jumper 89433ee3c7 GUACAMOLE-1224: Log extension sources of objects affected by REST API. 2022-10-14 16:08:46 -07:00
Michael Jumper f43b119818 GUACAMOLE-1224: Log receipt of authentication requests at trace level. 2022-10-14 16:08:46 -07:00
Michael Jumper 36b5842d42 GUACAMOLE-1224: Log user password updates. 2022-10-14 16:08:46 -07:00
Michael Jumper 606c7bd55c GUACAMOLE-1224: Improve readability of JavaDoc by shortening text of hyperlinked enum values. 2022-10-14 16:08:46 -07:00
Michael Jumper a0a5335c4d GUACAMOLE-1224: Further clarify DirectoryObjectEvent, renaming to IdentifiableObjectEvent. 2022-10-14 16:08:46 -07:00
Michael Jumper 9b7982a7f2 GUACAMOLE-1224: Clarify context of getAuthenticationProvider() for DirectoryObjectEvents. 2022-10-14 16:08:46 -07:00
Michael Jumper 93e7422466 GUACAMOLE-1224: Extract base interface for events affecting objects stored in a Directory. 2022-10-14 16:08:46 -07:00
Michael Jumper e5761551e4 GUACAMOLE-1224: Log identifiers of extensions reporting authentication failures. 2022-10-14 16:08:46 -07:00
Michael Jumper 818471ac84 GUACAMOLE-1224: Migrate existing auth-related logging to global event listener. 2022-10-14 16:08:46 -07:00
Michael Jumper b3319b817d GUACAMOLE-1224: Add user session invalidation/logout event. 2022-10-14 16:08:46 -07:00
Michael Jumper 63de886e5d GUACAMOLE-1224: Ensure all user sessions are explicitly invalidated prior to application shutdown. 2022-10-14 16:08:46 -07:00
Michael Jumper 8c36eaf55d GUACAMOLE-1224: Add events for overall webapp startup/shutdown. 2022-10-14 16:07:09 -07:00
Michael Jumper 9bda1b2c19 GUACAMOLE-1224: Add a default, global event listener providing logging. 2022-10-14 16:07:09 -07:00
Michael Jumper 79a1bcb2a3 GUACAMOLE-1224: Extract getName() / setName() into common Nameable interface. 2022-10-14 15:55:17 -07:00
Michael Jumper 417587259f GUACAMOLE-1224: Add CRUD-type events for Directory modifications. 2022-10-14 15:55:17 -07:00
Mike Jumper 0af17df712 GUACAMOLE-1628: Merge changes adding unzip tool required by LOGBACK_LEVEL. 2022-10-03 13:50:30 -07:00
Mike Jumper 89c981127a GUACAMOLE-1656: Merge fix for possible NPE if user KSM config is unset. 2022-09-28 21:17:59 -07:00
Mike Jumper 6c43611f51 GUACAMOLE-1656: Merge support for per-user KSM vaults. 2022-09-28 15:06:40 -07:00
Michael Jumper 7f2ea222bb GUACAMOLE-1687: Clean, document, and clarify usage of tunnel timer reset function. 2022-09-28 10:50:25 -07:00
Michael Jumper 3036c96a1f GUACAMOLE-1687: Leverage network activity to ensure keep-alive pings are sent. 2022-09-27 16:46:25 -07:00
Michael Jumper b7deee427d GUACAMOLE-990: Ensure internal errors during auth reach global error handling/logging. 2022-09-26 11:42:23 -07:00
Michael Jumper 719e957be1 GUACAMOLE-990: Guarantee auth banning occurs before all other auth processing. 2022-09-12 09:17:32 -07:00
Mike Jumper 6b03b113a9 GUACAMOLE-1661: Merge support for indexing KSM records by user domain. 2022-08-25 09:07:45 -07:00
Michael Jumper 2e5d3f4faf GUACAMOLE-990: Disable tracking if max addresses is not a positive integer. 2022-08-22 15:16:46 -07:00
Michael Jumper 584db45a4f GUACAMOLE-990: Enabled/disable auth failure tracking via implementations of a common interface. 2022-08-22 15:16:46 -07:00
Michael Jumper a9ed4c2982 GUACAMOLE-990: Revise guacamole-auth-ban log levels to generally always notify of problematic addresses. 2022-08-22 15:16:46 -07:00
Michael Jumper 8b981d9213 GUACAMOLE-990: Add Docker image support for guacamole-auth-ban. 2022-08-22 15:16:45 -07:00
Michael Jumper 43f65357c8 GUACAMOLE-990: Limit maximum number of tracked addresses. 2022-08-22 15:16:45 -07:00
Michael Jumper 2b19bc95da GUACAMOLE-990: Use translation string for "too many failed attempts" error. 2022-08-22 15:16:45 -07:00
Michael Jumper f9d8abcfde GUACAMOLE-990: Clear out any previous authentication token that is known to be invalid. 2022-08-22 15:16:45 -07:00
Michael Jumper ffb023c6c3 GUACAMOLE-1614: Include chromium-driver in Docker build for sake of JS unit tests. 2022-08-22 11:41:10 -07:00
Michael Jumper 275b5bee13 GUACAMOLE-990: Add extension for automatically blocking brute-force auth attempts. 2022-08-22 09:59:06 -07:00