Ticket #263: Fixed usages of CREATE_CONNECTION_GROUP permission throughout.

This commit is contained in:
James Muehlner
2013-08-13 21:00:57 -07:00
parent 2269073aed
commit e13429c818
6 changed files with 16 additions and 6 deletions

View File

@@ -139,7 +139,7 @@ CREATE TABLE `guacamole_system_permission` (
`user_id` int(11) NOT NULL,
`permission` enum('CREATE_CONNECTION',
'CREATE_GROUP',
'CREATE_CONNECTION_GROUP',
'CREATE_USER',
'ADMINISTER') NOT NULL,

View File

@@ -63,6 +63,6 @@ CREATE TABLE `guacamole_connection_group_permission` (
ALTER TABLE `guacamole_system_permission` MODIFY `permission`
enum('CREATE_CONNECTION',
'CREATE_GROUP',
'CREATE_CONNECTION_GROUP',
'CREATE_USER',
'ADMINISTER') NOT NULL;

View File

@@ -6,7 +6,7 @@ insert into guacamole_user values(1, 'guacadmin',
-- Grant this user create permissions
insert into guacamole_system_permission values(1, 'CREATE_CONNECTION');
insert into guacamole_system_permission values(1, 'CREATE_GROUP');
insert into guacamole_system_permission values(1, 'CREATE_CONNECTION_GROUP');
insert into guacamole_system_permission values(1, 'CREATE_USER');
insert into guacamole_system_permission values(1, 'ADMINISTER');

View File

@@ -242,9 +242,10 @@ public final class MySQLConstants {
// Convert permission type to MySQL constant
switch (type) {
case CREATE_USER: return SYSTEM_USER_CREATE;
case CREATE_CONNECTION: return SYSTEM_CONNECTION_CREATE;
case ADMINISTER: return SYSTEM_ADMINISTER;
case CREATE_USER: return SYSTEM_USER_CREATE;
case CREATE_CONNECTION: return SYSTEM_CONNECTION_CREATE;
case CREATE_CONNECTION_GROUP: return SYSTEM_CONNECTION_GROUP_CREATE;
case ADMINISTER: return SYSTEM_ADMINISTER;
}
// If we get here, permission support was not properly implemented

View File

@@ -778,6 +778,10 @@ public class PermissionCheckService {
else if(systemPermission.getPermission().equals(MySQLConstants.SYSTEM_CONNECTION_CREATE))
permissions.add(new SystemPermission(SystemPermission.Type.CREATE_CONNECTION));
// System creation permission
else if(systemPermission.getPermission().equals(MySQLConstants.SYSTEM_CONNECTION_GROUP_CREATE))
permissions.add(new SystemPermission(SystemPermission.Type.CREATE_CONNECTION_GROUP));
// System administration permission
else if(systemPermission.getPermission().equals(MySQLConstants.SYSTEM_ADMINISTER))
permissions.add(new SystemPermission(SystemPermission.Type.ADMINISTER));

View File

@@ -61,6 +61,11 @@ public class SystemPermission implements Permission<SystemPermission.Type> {
*/
CREATE_CONNECTION,
/**
* Create connection groups.
*/
CREATE_CONNECTION_GROUP,
/**
* Administer the system in general, including adding permissions
* which affect the system (like user creation, connection creation,