Commit Graph
100 Commits
Author SHA1 Message Date
Michael Jumper 21f184f42e GUACAMOLE-78: Render the usernames of anonymous users differently. 2016-08-12 20:05:33 -07:00
Michael Jumper 42cd4dca5d GUACAMOLE-78: Preserve query parameters when redirecting to user's home page. 2016-08-12 14:53:54 -07:00
Michael Jumper 225736d237 GUACAMOLE-78: Store anonymous users' authentication results in memory only. Do not persist via cookie. 2016-08-12 14:49:37 -07:00
Michael Jumper 22b3e268d6 GUACAMOLE-78: Use documented AuthenticationResult type for auth result storage. 2016-08-12 14:21:58 -07:00
Michael Jumper c6323503d8 GUACAMOLE-78: Do not display user menu for anonymous users. 2016-08-12 13:55:59 -07:00
Michael Jumper df3f54a02d GUACAMOLE-78: Report users authenticated via share keys as anonymous. 2016-08-12 13:51:37 -07:00
Michael Jumper fcefa7a7c7 GUACAMOLE-78: Define a standard identifier for anonymous users. 2016-08-12 12:51:53 -07:00
Michael Jumper db02d9a7fb GUACAMOLE-5: Implement management of sharing profiles. 2016-08-10 21:12:04 -07:00
Michael Jumper 726613cbc8 GUACAMOLE-5: Include sharing profiles within connection management display. 2016-08-10 19:23:08 -07:00
Michael Jumper 12f899a148 GUACAMOLE-5: Fix targeting of share tag HTML patch. 2016-08-10 18:59:54 -07:00
Michael Jumper 5779274e25 GUACAMOLE-5: Use contextual actions to add connections and connection groups. 2016-08-07 23:41:09 -07:00
Michael Jumper 4c7af7e692 GUACAMOLE-5: Allow uses of the guacGroupList directive to decorate any rendered GroupListItems. 2016-08-07 23:10:25 -07:00
Michael Jumper 56d9c90940 GUACAMOLE-5: Generalize and clean the guacGroupList directive such that arbitrary GroupListItem types can be supported. 2016-08-07 23:10:20 -07:00
Michael Jumper 558d242060 GUACAMOLE-5: Define sorting weight for GroupListItem. 2016-08-07 23:09:37 -07:00
Michael Jumper 94ce151f69 GUACAMOLE-5: Add "read-only" parameter to all protocols. 2016-08-07 22:53:32 -07:00
Michael Jumper 14365ff72e GUACAMOLE-5: Define connection and sharing profile parameters separately. 2016-08-07 22:50:26 -07:00
Michael Jumper 909fb4ebd9 GUACAMOLE-5: Implement JavaScript service for accessing the sharing profile REST resource. 2016-08-07 22:41:49 -07:00
Michael Jumper 7a0dd884f3 GUACAMOLE-5: Add sharing profile attributes to schema resource. 2016-08-07 22:41:49 -07:00
Michael Jumper f3a201a415 GUACAMOLE-5: Rename permission granted/revoked flag sensibly. 2016-08-04 20:42:19 -07:00
Michael Jumper 031763af05 GUACAMOLE-5: Fix CSS selector match of open/closed groups. 2016-08-04 19:48:58 -07:00
Michael Jumper f4ad97e732 GUACAMOLE-5: Switch to nice rendering of connection tree lines. 2016-08-04 19:48:58 -07:00
Michael Jumper e3db19d633 GUACAMOLE-5: Implement management interface for sharing profile permissions. 2016-08-04 19:48:58 -07:00
Michael Jumper 8a8ae8496c GUACAMOLE-5: Add support for sharing profile permissions to JavaScript implementations of REST API objects. 2016-08-04 19:48:58 -07:00
Michael Jumper 85f15b7cd1 GUACAMOLE-5: Correct and simply guacGroupList styling/structure. 2016-08-04 19:48:58 -07:00
Michael Jumper da9ddf7683 GUACAMOLE-5: Add support for sharing profiles to the guacGroupList directive. 2016-08-04 19:48:58 -07:00
Michael Jumper 60152e3841 GUACAMOLE-5: Include sharing profiles within connection tree. 2016-08-04 19:48:58 -07:00
Michael Jumper 3f22d1d09a GUACAMOLE-5: Use more semantically-sound "menu-contents" class. 2016-08-02 14:24:37 -07:00
Michael Jumper 73c2e68922 GUACAMOLE-5: Display share links within Guacamole menu. Persist within ManagedClient. 2016-08-02 13:25:38 -07:00
Michael Jumper e1cf5821fc GUACAMOLE-5: Add share icon. 2016-08-02 13:25:15 -07:00
Michael Jumper 91254f7f98 GUACAMOLE-5: Add sharing support to the Guacamole client UI. 2016-08-02 13:25:15 -07:00
Michael Jumper 3484d32302 GUACAMOLE-5: Clean up header and dropdown style. 2016-08-02 13:25:15 -07:00
Michael Jumper 8b193ad89a GUACAMOLE-5: Separate menu semantics from guacUserMenu into own guacMenu directive. 2016-08-02 13:25:09 -07:00
Michael Jumper 8e99d2414b GUACAMOLE-5: The root connection group is ORGANIZATIONAL, not BALANCING. 2016-07-31 09:52:23 -07:00
Michael Jumper c2f429360c GUACAMOLE-5: Use connection name for SharedConnection, not sharing profile name. 2016-07-30 23:11:13 -07:00
Michael Jumper ff3c57dff0 GUACAMOLE-5: Display the username of the user that shares a connection. 2016-07-30 23:11:12 -07:00
Michael Jumper ecaf5be84e GUACAMOLE-5: Update the SharedUserContext whenever a new share key is used. 2016-07-30 23:11:12 -07:00
Michael Jumper 96094a1c58 GUACAMOLE-5: Implement exposure of a dynamic set of share keys as connections within a connection directory. 2016-07-30 23:11:12 -07:00
Michael Jumper 3d3be46bb4 GUACAMOLE-5: All strings are valid user identifiers. 2016-07-30 11:27:54 -07:00
Michael Jumper 690e8996e3 GUACAMOLE-5: Move identifier validity check to ModeledDirectoryObjectService. It must be object-specific, as not all objects have numeric identifiers in the database auth. 2016-07-30 11:27:51 -07:00
Michael Jumper 12abb3c59c GUACAMOLE-67: Always clean up the connection upon WebSocket error. 2016-07-29 22:39:26 -07:00
Michael Jumper abbc83a15b GUACAMOLE-5: Provide most recent Credentials to updateUserContext(). Doing otherwise relies on the AuthenticatedUser being updated, which is not guaranteed to happen. 2016-07-29 22:16:39 -07:00
Michael Jumper 212e559edf GUACAMOLE-5: Rename JDBC-specific UserContext to ModeledUserContext for clarity. 2016-07-29 22:05:39 -07:00
Michael Jumper 544b3c6767 GUACAMOLE-5: Clarify the JDBC-specific implementation of AuthenticatedUser. 2016-07-29 21:55:19 -07:00
Michael Jumper ad697c4fc5 GUACAMOLE-5: Establish distinction between the AuthenticationProvider storing a user's data and the AuthenticationProvider which authenticated the user. 2016-07-29 21:55:19 -07:00
Michael Jumper 06a7ca1b7a GUACAMOLE-5: Handle shared connections via dedicated AuthenticationProvider. 2016-07-29 18:46:58 -07:00
Michael Jumper 4e3212f9fd GUACAMOLE-5: Use AuthenticationProviderService as the means of defining AuthenticationProvider behavior. 2016-07-29 18:46:58 -07:00
Michael Jumper 600002531e GUACAMOLE-5: Use singleton Guice Injector via common base class. 2016-07-29 18:46:57 -07:00
Michael Jumper f2cd109e3f GUACAMOLE-5: Properly validate identifiers before attempting to query. 2016-07-27 21:30:49 -07:00
Michael Jumper 0ec42d2b1d GUACAMOLE-66: Merge removal of unnecessary dependency. 2016-07-27 21:05:24 -07:00
Michael Jumper cadaefa5f6 GUACAMOLE-5: Do not bind/inject AuthenticationProvider. 2016-07-26 21:28:31 -07:00
Michael Jumper 7325b7e9c9 GUACAMOLE-5: Merge fix for MySQL syntax. 2016-07-26 12:19:26 -07:00
Michael Jumper f119b97230 GUACAMOLE-5: Column "sharing_profile_id" is ambiguous without the table name. 2016-07-25 14:44:48 -07:00
Michael Jumper 8fad01c65c GUACAMOLE-5: Include the sensitive information of an active connection if the current user started that active connection. 2016-07-25 14:44:48 -07:00
Michael Jumper a5af6c00d2 GUACAMOLE-5: Throw clean "resource not found" if the active connection of a tunnel cannot be determined. 2016-07-25 14:34:54 -07:00
Michael Jumper afb377d5ed GUACAMOLE-5: Automatically clean up share keys and any associated tunnels when the connection being shared is closed. 2016-07-25 12:07:20 -07:00
Michael Jumper e54d36cae5 GUACAMOLE-5: Implement thread-safe automatic cleanup of a group of shared objects. 2016-07-24 19:51:17 -07:00
Michael Jumper b201eac617 GUACAMOLE-5: Use ActiveConnectionRecord as the basis for sharing. TrackedActiveConnection is really only meant for interchange via the ActiveConnection Directory. 2016-07-24 19:51:17 -07:00
Michael Jumper 16fce2931f GUACAMOLE-5: Store SharedConnectionDefinition directly, rather than passing around its contents. 2016-07-24 19:51:17 -07:00
Michael Jumper d334aa97d6 GUACAMOLE-5: Store share key within SharedConnectionDefinition. 2016-07-24 19:51:17 -07:00
Michael Jumper 702441d720 GUACAMOLE-5: Do not attempt to join a closed connection. 2016-07-21 15:35:32 -07:00
Michael Jumper 43761ef482 GUACAMOLE-5: Verify sharing profile belongs to the requested connection. 2016-07-21 15:16:09 -07:00
Michael Jumper 19f80dac95 GUACAMOLE-5: Implement joining of shared connections via temporary credentials. 2016-07-21 14:25:51 -07:00
Michael Jumper bfa5c38123 GUACAMOLE-5: Implement sharing-specific user context and in-memory storage. Add additional tracking of connections for sake of sharing. 2016-07-21 13:44:24 -07:00
Michael Jumper b68a8c128c GUACAMOLE-5: Implement storage of ActiveConnection/SharingProfile pairs by an assigned share key. 2016-07-20 13:47:30 -07:00
Michael Jumper 75f74eec94 GUACAMOLE-5: Extract common base class for AuthenticatedUser. 2016-07-20 13:42:57 -07:00
Michael Jumper e1f4e6574e GUACAMOLE-5: Add randomly-generated connection sharing keys. 2016-07-20 13:35:24 -07:00
Michael Jumper fc05224512 GUACAMOLE-5: Expose sharing profiles at connection level. 2016-07-19 22:26:30 -07:00
Michael Jumper c304a981e1 GUACAMOLE-5: Expose sharing profile permissions. 2016-07-19 22:26:30 -07:00
Michael Jumper a03b76d9dd GUACAMOLE-5: Expose sharing profiles via a Directory on the UserContext according to granted permissions. 2016-07-19 22:26:30 -07:00
Michael Jumper 53a856b285 GUACAMOLE-5: Add sharing profile properties to connection record model. 2016-07-19 22:26:30 -07:00
Michael Jumper cfac865807 GUACAMOLE-5: Map sharing profile model objects to database schema. 2016-07-19 22:26:30 -07:00
Michael Jumper 21f5aba548 GUACAMOLE-5: Add sharing profiles to database schema. 2016-07-19 11:21:45 -07:00
Michael Jumper 9b2909445a GUACAMOLE-5: Move single space from UserTunnel to PermissionSetResource. 2016-07-17 14:54:32 -07:00
Michael Jumper 7ea4af7016 GUACAMOLE-5: Provide direct access via REST to the sharing profiles available for the active connection of a given tunnel. 2016-07-16 20:44:40 -07:00
Michael Jumper bb36045ff8 GUACAMOLE-5: Add DirectoryView object, providing a Directory interface around a restricted subset of objects within another existing Directory. 2016-07-16 11:42:48 -07:00
Michael Jumper 62dcd9e9ec GUACAMOLE-5: Implement JavaScript service for retrieving sharing credentials from an active connection. 2016-07-16 11:42:48 -07:00
Michael Jumper c6ce92bd0a GUACAMOLE-5: Implement retrieval of sharing credentials from an active connection via REST. 2016-07-16 11:42:47 -07:00
Michael Jumper 3dce3bc5b8 GUACAMOLE-5: Add Connection subresource to the ActiveConnection resource. 2016-07-16 11:42:47 -07:00
Michael Jumper aeb60e7e53 GUACAMOLE-5: Add ActiveConnection subresource to the tunnel REST resource. 2016-07-16 11:42:47 -07:00
Michael Jumper e4fe1a3a65 GUACAMOLE-5: Associate the UserContext with any created tunnel. 2016-07-16 11:42:47 -07:00
Michael Jumper c231f4eb57 GUACAMOLE-5: Add SharingProfiles to REST API. 2016-07-16 11:42:47 -07:00
Michael Jumper 2131abb480 GUACAMOLE-5: Bring JDBC authentication up to date with sharing profile API changes. 2016-07-16 11:42:47 -07:00
Michael Jumper 4eebc3b301 GUACAMOLE-5: Bring LDAP authentication up to date with sharing profile API changes. 2016-07-16 11:42:47 -07:00
Michael Jumper 0a0b5000bf GUACAMOLE-5: ActiveConnections should be Shareable, to allow sharing links to be generated based on a SharingProfile. 2016-07-16 11:42:47 -07:00
Michael Jumper e687ed040f GUACAMOLE-5: Define Shareable interface which defines a mechanism for generating (likely temporary) credentials. 2016-07-16 11:42:47 -07:00
Michael Jumper f9f78a64fc GUACAMOLE-5: Define UserCredentials object which couples a CredentialsInfo with defined parameter values. 2016-07-16 11:42:47 -07:00
Michael Jumper ad50a77293 GUACAMOLE-5: Implement QUERY_PARAMETER field type. 2016-07-16 11:42:47 -07:00
Michael Jumper 0f49c39ed4 GUACAMOLE-5: Track the sharing profile associated with an active connection. 2016-07-16 11:42:47 -07:00
Michael Jumper a2ad7a69ab GUACAMOLE-5: Add sharing profile permissions. 2016-07-16 11:42:47 -07:00
Michael Jumper eededc33ca GUACAMOLE-5: Define sharing profiles and their relationship to connections. 2016-07-16 11:39:44 -07:00
Michael Jumper 4e7f086f83 GUACAMOLE-5: Move common identifier equals() / hashCode() of abstract Identifiable implementations to common base class. 2016-07-16 11:09:10 -07:00
Michael Jumper cdd71411fb GUACAMOLE-5: All REST resources MUST be non-generic. Type parameters of generic classes will otherwise be handled as Object by Jersey due to type erasure, resulting in class cast exceptions due to JSON being deserialized as a Map instead of the intended type. 2016-07-14 14:37:33 -07:00
Michael Jumper bd8c37c737 GUACAMOLE-5: Ensure all exceptions from within REST make their way to a JSON response, even if not a GuacamoleException. 2016-07-14 14:34:59 -07:00
Michael Jumper 6b98ce2c67 GUACAMOLE-5: Remove path from tunnel collection resource, as it is no longer a root resource. 2016-07-13 22:16:24 -07:00
Michael Jumper b66925c3d0 GUACAMOLE-5: Update tunnelService to match REST changes. 2016-07-12 22:02:41 -07:00
Michael Jumper abef36e11f GUACAMOLE-5: Increase the documentation factor of DirectoryResource. 2016-07-12 21:42:15 -07:00
Michael Jumper aeec3eca40 GUACAMOLE-5: DirectoryResource deals with objects, not users. 2016-07-12 21:40:58 -07:00
Michael Jumper e4ed85cfcb GUACAMOLE-5: Refactor away ObjectRetrievalService. 2016-07-12 21:38:07 -07:00
Michael Jumper b189f5fef9 GUACAMOLE-5: Consolidate UserContexts and tunnels under the same hierarchy. 2016-07-12 21:23:47 -07:00
Michael Jumper 60c672eeea GUACAMOLE-5: Ensure all API errors are returned as JSON. 2016-07-12 21:23:47 -07:00