Manage User Roles

Roles define level of access users have and what they are able to do with the Exasol cluster. The following are the possible roles you can assign to a user: 

Role Access Level Description
Master Has all possible rights and permissions.
Administrator Can manage the cluster, but cannot change the license, change the password for disk encryption, or assign the master role to a user.
Supervisor Is able to view the cluster configuration, but is not able to make any changes to the system.
User Can only view the basic state of nodes and databases.

Using EXAoperation

You can follow the below steps on how to assign or change a user role: 

  1. Log into EXAoperation.
  2. Select Configuration >Access Management.
  3. Click the Roles tab.

  4. In the Role column, select the role for the user.
  5. Click Apply to save your changes.


Do the following to edit a user role using XML-RPC:

  1. Run the following commands to import the XML-RPC packages:
  2. from xmlrpc.client import ServerProxy
    from xmlrpc.client import ServerProxy as xmlrpc

  3. Run the following command to create a connection with your Exasol cluster:
  4. import ssl
    server = ServerProxy ('https://user:password@<IP_Address>/cluster1', context=ssl._create_unverified_context (), allow_none = True)

  5. Run the following command to edit the user role.
    server.grantRole('<object_name>', '<user ID>', '<new role name')
    #for example,
    server.grantRole('db_exa_db1','8', 'Master')

    You can run the following commands to check object name and user ID for the above command.

    server.getUserByName ('<username>')
    server.listObjects ()