Github user mike-jumper commented on a diff in the pull request:

    https://github.com/apache/guacamole-client/pull/301#discussion_r196267141
  
    --- Diff: 
guacamole/src/main/webapp/app/navigation/services/userPageService.js ---
    @@ -257,15 +257,23 @@ 
angular.module('navigation').factory('userPageService', ['$injector',
                     canManageConnections.push(dataSource);
                 }
     
    -            // Determine whether the current user needs access to the 
session management UI or view connection history
    +            // Determine whether the current user needs access to view 
connection history
                 if (
    -                    // A user must be a system administrator to manage 
sessions
    +                    // A user must be a system administrator to view 
connection records
                         PermissionSet.hasSystemPermission(permissions, 
PermissionSet.SystemPermissionType.ADMINISTER)
                 ) {
    -                canManageSessions.push(dataSource);
                     canViewConnectionRecords.push(dataSource);
                 }
     
    +            // Determine whether the current user needs access to view 
session management
    +            if (
    +                    // Permission to manage active sessions.
    +                       PermissionSet.hasSystemPermission(permissions,      
     PermissionSet.SystemPermissionType.ADMINISTER)
    +                    || 
PermissionSet.hasActiveConnectionPermission(permissions, 
PermissionSet.ObjectPermissionType.DELETE)
    --- End diff --
    
    Also regarding that corner case, such a connection could be configured to 
allow only one concurrent user. The user attempting to connect would be 
disallowed with a warning that the connection is in use. If they wish to kick 
off the existing session (and have permission to do so), they could then open 
the menu with Ctrl+Alt+Shift, go to Settings, and manually kill it.


---

Reply via email to