This is an automated email from the ASF dual-hosted git repository.
mjumper pushed a change to branch next
in repository https://gitbox.apache.org/repos/asf/guacamole-client.git
from fccbb23a6 Merge main branch changes to next.
add 1088f60a4 GUACAMOLE-1020: Implement extension with enhanced login and
connection restrictions.
add e7279f0a8 GUACAMOLE-1020: Remove Weekend and Weekday definitions to
avoid locale issues.
add 1b7c35e18 GUACAMOLE-1020: Correct issues with DST not being
interpreted correctly.
add 422db894f GUACAMOLE-1020: Fix issues with Timezone offset and next day
calculations.
add 8ad254e89 GUACAMOLE-1020: Add Docker mapping for the restrict
extension module.
add 042b99bed GUACAMOLE-1020: Implement a new Restrictable interface and
make slight name changes to classes.
add 7cfe979ed GUACAMOLE-1020: Move time conversion to shared function.
add d97cde0e6 GUACAMOLE-1020: Clean up unnecessary Java imports.
add cc14281f0 GUACAMOLE-1020: Handle differences in Sunday processing for
Java and JavaScript.
add 1e04d6d36 GUACAMOLE-1020: Pull effective group membership from the
AuthenticatedUser object.
add 95cd38679 GUACAMOLE-1020: Make sure only admin users can modify
restrictions.
add 5d44ae4f3 GUACAMOLE-1020: Merge extension providing additional
connection/login restrictions.
add 9557cc912 Merge 1.6.0 changes back to patch.
add 9320cdb48 Merge changes from patch branch back to main.
new 66e0e8bd8 Merge changes from main branch back to next.
The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
.../.gitignore | 0
.../.ratignore | 0
.../pom.xml | 26 +-
.../src/main/assembly/dist.xml | 0
.../guacamole/auth/restrict/Restrictable.java | 67 +++
.../RestrictionAuthenticationProvider.java} | 51 +-
.../restrict/RestrictionVerificationService.java | 538 +++++++++++++++++++++
...TranslatableInvalidHostConnectionException.java | 73 +++
.../TranslatableInvalidHostLoginException.java | 72 +++
...TranslatableInvalidTimeConnectionException.java | 73 +++
.../TranslatableInvalidTimeLoginException.java | 73 +++
.../restrict/connection/RestrictedConnection.java | 200 ++++++++
.../connectiongroup/RestrictedConnectionGroup.java | 202 ++++++++
.../auth/restrict/form/HostRestrictionField.java | 31 +-
.../auth/restrict/form/TimeRestrictionField.java | 31 +-
.../auth/restrict/user/RestrictedUser.java | 199 ++++++++
.../auth/restrict/user/RestrictedUserContext.java | 214 ++++++++
.../restrict/usergroup/RestrictedUserGroup.java | 160 ++++++
.../guacamole/calendar/DailyRestriction.java | 140 ++++++
.../apache/guacamole/calendar/RestrictionType.java | 109 +++++
.../guacamole/calendar/TimeRestrictionParser.java | 157 ++++++
.../guacamole/host/HostRestrictionParser.java | 77 +++
.../src/main/resources/config/restrictConfig.js | 25 +-
.../controllers/hostRestrictionFieldController.js | 170 +++++++
.../controllers/timeRestrictionFieldController.js | 317 ++++++++++++
.../src/main/resources/guac-manifest.json | 29 ++
.../src/main/resources/license.txt | 0
.../src/main/resources/restrictModule.js} | 9 +-
.../src/main/resources/styles/restrict.css | 19 +-
.../resources/templates/hostRestrictionField.html | 23 +
.../resources/templates/timeRestrictionField.html | 38 ++
.../src/main/resources/translations/en.json | 67 +++
.../main/resources/types/HostRestrictionEntry.js | 33 +-
.../main/resources/types/TimeRestrictionEntry.js | 69 +++
extensions/guacamole-auth-totp/pom.xml | 2 +-
extensions/pom.xml | 1 +
.../build.d/000-build-and-install-guacamole.sh | 2 +-
.../build.d/010-map-guacamole-extensions.sh | 3 +-
guacamole-docker/build.d/020-download-drivers.sh | 2 +-
.../entrypoint.d/700-configure-features.sh | 2 +-
40 files changed, 3177 insertions(+), 127 deletions(-)
copy extensions/{guacamole-auth-duo => guacamole-auth-restrict}/.gitignore
(100%)
copy extensions/{guacamole-auth-ban => guacamole-auth-restrict}/.ratignore
(100%)
copy extensions/{guacamole-auth-totp => guacamole-auth-restrict}/pom.xml (89%)
copy extensions/{guacamole-auth-duo =>
guacamole-auth-restrict}/src/main/assembly/dist.xml (100%)
create mode 100644
extensions/guacamole-auth-restrict/src/main/java/org/apache/guacamole/auth/restrict/Restrictable.java
copy
extensions/{guacamole-auth-quickconnect/src/main/java/org/apache/guacamole/auth/quickconnect/QuickConnectAuthenticationProvider.java
=>
guacamole-auth-restrict/src/main/java/org/apache/guacamole/auth/restrict/RestrictionAuthenticationProvider.java}
(51%)
create mode 100644
extensions/guacamole-auth-restrict/src/main/java/org/apache/guacamole/auth/restrict/RestrictionVerificationService.java
create mode 100644
extensions/guacamole-auth-restrict/src/main/java/org/apache/guacamole/auth/restrict/TranslatableInvalidHostConnectionException.java
create mode 100644
extensions/guacamole-auth-restrict/src/main/java/org/apache/guacamole/auth/restrict/TranslatableInvalidHostLoginException.java
create mode 100644
extensions/guacamole-auth-restrict/src/main/java/org/apache/guacamole/auth/restrict/TranslatableInvalidTimeConnectionException.java
create mode 100644
extensions/guacamole-auth-restrict/src/main/java/org/apache/guacamole/auth/restrict/TranslatableInvalidTimeLoginException.java
create mode 100644
extensions/guacamole-auth-restrict/src/main/java/org/apache/guacamole/auth/restrict/connection/RestrictedConnection.java
create mode 100644
extensions/guacamole-auth-restrict/src/main/java/org/apache/guacamole/auth/restrict/connectiongroup/RestrictedConnectionGroup.java
copy
guacamole-ext/src/main/java/org/apache/guacamole/net/auth/Disableable.java =>
extensions/guacamole-auth-restrict/src/main/java/org/apache/guacamole/auth/restrict/form/HostRestrictionField.java
(56%)
copy
guacamole-ext/src/main/java/org/apache/guacamole/net/auth/Disableable.java =>
extensions/guacamole-auth-restrict/src/main/java/org/apache/guacamole/auth/restrict/form/TimeRestrictionField.java
(56%)
create mode 100644
extensions/guacamole-auth-restrict/src/main/java/org/apache/guacamole/auth/restrict/user/RestrictedUser.java
create mode 100644
extensions/guacamole-auth-restrict/src/main/java/org/apache/guacamole/auth/restrict/user/RestrictedUserContext.java
create mode 100644
extensions/guacamole-auth-restrict/src/main/java/org/apache/guacamole/auth/restrict/usergroup/RestrictedUserGroup.java
create mode 100644
extensions/guacamole-auth-restrict/src/main/java/org/apache/guacamole/calendar/DailyRestriction.java
create mode 100644
extensions/guacamole-auth-restrict/src/main/java/org/apache/guacamole/calendar/RestrictionType.java
create mode 100644
extensions/guacamole-auth-restrict/src/main/java/org/apache/guacamole/calendar/TimeRestrictionParser.java
create mode 100644
extensions/guacamole-auth-restrict/src/main/java/org/apache/guacamole/host/HostRestrictionParser.java
copy
guacamole/src/main/frontend/src/app/form/controllers/checkboxFieldController.js
=>
extensions/guacamole-auth-restrict/src/main/resources/config/restrictConfig.js
(56%)
create mode 100644
extensions/guacamole-auth-restrict/src/main/resources/controllers/hostRestrictionFieldController.js
create mode 100644
extensions/guacamole-auth-restrict/src/main/resources/controllers/timeRestrictionFieldController.js
create mode 100644
extensions/guacamole-auth-restrict/src/main/resources/guac-manifest.json
copy extensions/{guacamole-auth-radius =>
guacamole-auth-restrict}/src/main/resources/license.txt (100%)
copy
extensions/{guacamole-auth-quickconnect/src/main/resources/quickconnectModule.js
=> guacamole-auth-restrict/src/main/resources/restrictModule.js} (76%)
copy guacamole/src/main/frontend/src/app/settings/styles/sessions.css =>
extensions/guacamole-auth-restrict/src/main/resources/styles/restrict.css (79%)
create mode 100644
extensions/guacamole-auth-restrict/src/main/resources/templates/hostRestrictionField.html
create mode 100644
extensions/guacamole-auth-restrict/src/main/resources/templates/timeRestrictionField.html
create mode 100644
extensions/guacamole-auth-restrict/src/main/resources/translations/en.json
copy guacamole/src/main/frontend/src/app/rest/types/Form.js =>
extensions/guacamole-auth-restrict/src/main/resources/types/HostRestrictionEntry.js
(60%)
create mode 100644
extensions/guacamole-auth-restrict/src/main/resources/types/TimeRestrictionEntry.js