mirror of
				https://github.com/gyurix1968/guacamole-client.git
				synced 2025-10-31 17:13:21 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			56 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			SQL
		
	
	
	
	
	
			
		
		
	
	
			56 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			SQL
		
	
	
	
	
	
| --
 | |
| -- Licensed to the Apache Software Foundation (ASF) under one
 | |
| -- or more contributor license agreements.  See the NOTICE file
 | |
| -- distributed with this work for additional information
 | |
| -- regarding copyright ownership.  The ASF licenses this file
 | |
| -- to you under the Apache License, Version 2.0 (the
 | |
| -- "License"); you may not use this file except in compliance
 | |
| -- with the License.  You may obtain a copy of the License at
 | |
| --
 | |
| --   http://www.apache.org/licenses/LICENSE-2.0
 | |
| --
 | |
| -- Unless required by applicable law or agreed to in writing,
 | |
| -- software distributed under the License is distributed on an
 | |
| -- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 | |
| -- KIND, either express or implied.  See the License for the
 | |
| -- specific language governing permissions and limitations
 | |
| -- under the License.
 | |
| --
 | |
| 
 | |
| -- Create default user "guacadmin" with password "guacadmin"
 | |
| INSERT INTO guacamole_entity (name, type) VALUES ('guacadmin', 'USER');
 | |
| INSERT INTO guacamole_user (entity_id, password_hash, password_salt, password_date)
 | |
| SELECT
 | |
|     entity_id,
 | |
|     decode('CA458A7D494E3BE824F5E1E175A1556C0F8EEF2C2D7DF3633BEC4A29C4411960', 'hex'),  -- 'guacadmin'
 | |
|     decode('FE24ADC5E11E2B25288D1704ABE67A79E342ECC26064CE69C5B3177795A82264', 'hex'),
 | |
|     CURRENT_TIMESTAMP
 | |
| FROM guacamole_entity WHERE name = 'guacadmin' AND guacamole_entity.type = 'USER';
 | |
| 
 | |
| -- Grant this user all system permissions
 | |
| INSERT INTO guacamole_system_permission (entity_id, permission)
 | |
| SELECT entity_id, permission::guacamole_system_permission_type
 | |
| FROM (
 | |
|     VALUES
 | |
|         ('guacadmin', 'CREATE_CONNECTION'),
 | |
|         ('guacadmin', 'CREATE_CONNECTION_GROUP'),
 | |
|         ('guacadmin', 'CREATE_SHARING_PROFILE'),
 | |
|         ('guacadmin', 'CREATE_USER'),
 | |
|         ('guacadmin', 'CREATE_USER_GROUP'),
 | |
|         ('guacadmin', 'ADMINISTER')
 | |
| ) permissions (username, permission)
 | |
| JOIN guacamole_entity ON permissions.username = guacamole_entity.name AND guacamole_entity.type = 'USER';
 | |
| 
 | |
| -- Grant admin permission to read/update/administer self
 | |
| INSERT INTO guacamole_user_permission (entity_id, affected_user_id, permission)
 | |
| SELECT guacamole_entity.entity_id, guacamole_user.user_id, permission::guacamole_object_permission_type
 | |
| FROM (
 | |
|     VALUES
 | |
|         ('guacadmin', 'guacadmin', 'READ'),
 | |
|         ('guacadmin', 'guacadmin', 'UPDATE'),
 | |
|         ('guacadmin', 'guacadmin', 'ADMINISTER')
 | |
| ) permissions (username, affected_username, permission)
 | |
| JOIN guacamole_entity          ON permissions.username = guacamole_entity.name AND guacamole_entity.type = 'USER'
 | |
| JOIN guacamole_entity affected ON permissions.affected_username = affected.name AND guacamole_entity.type = 'USER'
 | |
| JOIN guacamole_user            ON guacamole_user.entity_id = affected.entity_id;
 |