Search docs.molo17.com
    Configuration guide Security

    Manage users, groups, and roles in Gluesync

    Give each person the access they need and no more. In this guide you create Gluesync accounts, pick the right role for each person, group users so that they share Query Studio data access rules, and confirm in practice what a Viewer, a Monitor, a Manager, and a Super Admin can do.

    In this guide

    You will learn how to create a user and share the temporary password, complete the first sign-in, change a role or reset a password, create a Monitor or a second Super Admin with the REST API, create a user group, restrict what a group can query, and compare what each role sees in the Control Plane. The guide ends with a role comparison table you can use as a quick reference.

    The examples use a pipeline named RBAC demo that replicates a customers table, and four test accounts named rbac-viewer, rbac-monitor, rbac-manager, and rbac-superadmin.

    Quick information

    Goal

    Create accounts with the right role, group users, limit the data a group can query, and verify the result

    Audience

    Gluesync administrators and security owners

    Level

    Intermediate

    Time required

    About 30 minutes

    Area

    Control Plane → Settings → Users & access

    Applies to

    Gluesync 2.3

    Before you begin

    Make sure that:

    1. You can sign in to the Gluesync Control Plane as a Super Admin, for example with the default admin account;

    2. At least one pipeline exists, so that you can see what each role can and cannot do with it;

    3. You have a second browser, or a private window, to sign in as the test users without signing out of your administrator session;

    4. For the REST steps, you can reach the Core Hub address with curl.

    Users and roles apply to the whole Gluesync instance. There is no per-pipeline role: a user who can see the Control Plane sees every pipeline, and the role decides what that user can do with them. To limit what a person can read through Query Studio, use user groups and Query data access, as described later in this guide.

    Guide steps

    Create a user

    UI

    1. Select the Settings gear icon in the upper-right corner of the Control Plane;

    2. Select Users & access, then keep the Users tab open;

    3. In Add account, enter a Username, for example rbac-viewer;

    4. Open User role and select Viewer or Manager;

    5. Optionally enter Name (optional), Surname (optional), and Email (optional);

    6. Select Create user.

    Add account form with the username field marked 1
    Figure 1. Enter the username (1), choose the role (2), and create the user (3).
    Expected result

    Gluesync shows User created and an Account created successfully message with a generated Temporary password. The new account appears in the Accounts list with a Password change required badge.

    The User role list offers Viewer and Manager. Gluesync generates the password for you: there is no password field in the form. To create a Monitor or another Super Admin, use the REST API as shown in Create a Monitor or a Super Admin with the REST API.

    Share the temporary password

    UI

    The temporary password is shown only once, directly below the form.

    1. Select the copy icon to copy the password to the clipboard, or the download icon to save it as a file;

    2. If an email address was entered and email is configured for Gluesync, you can also select Send via email to send the credentials to the user;

    3. Pass the password to the user through a secure channel, then close the message.

    Account created successfully message with a masked temporary password and the copy
    Figure 2. The temporary password is masked in this image. Copy it or send it by email before you leave the page.
    Expected result

    You have the temporary password. If you used Send via email, Gluesync shows Credentials sent by email.

    If you close the message without saving the password, reset it from the Accounts list (see Change a role, reset a password, or delete a user) to get a new one.

    Complete the first sign-in

    UI

    Do this as the new user, in a second browser or a private window.

    1. Open the Control Plane sign-in page and sign in with the username and the temporary password;

    2. When Gluesync asks you to create a new password, enter it in New password and again in Repeat new password. The password must contain at least 8 characters, 1 lowercase letter, 1 uppercase letter, 1 symbol, and 1 number;

    3. Select Create password;

    4. Sign in again with the new password.

    First sign-in panel asking for a new password and its repetition
    Figure 3. The first sign-in asks for a new password before anything else.
    Expected result

    The sign-in page opens again. After you sign in with the new password, the Control Plane opens, and the Password change required badge disappears from the user’s row in the Accounts list.

    Change a role, reset a password, or delete a user

    UI

    1. In Settings → Users & access → Users, find the account in Accounts. Use the search box to filter by username, for example rbac-;

    2. To change the role, open the role list on the user’s row (1) and select the new role. The change takes effect immediately;

    3. To issue a new temporary password, select the reset icon (2) and confirm Reset. The user must change the password at the next sign-in;

    4. To remove the account, select the delete icon (3) and confirm.

    Accounts list filtered by rbac- showing four accounts
    Figure 4. Role list (1), reset password (2), and delete (3) on a user’s row.
    Expected result

    The row shows the new role. A reset user gets the Password change required badge again.

    The admin account and Super Admin accounts do not have a role list or a reset icon. You cannot delete your own account or change your own role, so a Super Admin who needs a different role must ask another Super Admin to change it.

    Create a Monitor or a Super Admin with the REST API

    API

    The Monitor role and the Super Admin role are not offered in the User role list. Create them with the Core Hub REST API instead. Replace <core-hub-host> with your Core Hub address.

    1. Sign in as a Super Admin to get a token:

      curl -s -X POST https://<core-hub-host>/authentication/login \
        -H 'Content-Type: application/json' \
        -d '{"username":"admin","password":"<admin-password>"}'

      The response contains apiToken.

    2. Create the user, setting role to MONITOR or SUPER_ADMIN:

      curl -s -X POST https://<core-hub-host>/users \
        -H "Authorization: Bearer <apiToken>" \
        -H 'Content-Type: application/json' \
        -d '{"username":"rbac-monitor","password":"<temporary-password>","role":"MONITOR","name":"Monica","surname":"Monitor","email":"rbac-monitor@example.com"}'
    3. Give the temporary password to the user. As with accounts created in the UI, the user must set a new password at the first sign-in.

    Expected result

    The call returns 201 and a JSON object with the new user’s id, role, and "changeRequired": true. The account appears in the Accounts list, with a Monitor or Super Admin label.

    To change or delete a user with the REST API, call PUT /users/<id> or DELETE /users/<id> with the id returned by GET /users, not with the username. In the Accounts list, a Monitor account shows User role in its role list instead of Monitor: use the REST API to change that role.

    Create a user group

    UI

    A user group collects users so that you can give them the same Query Studio data access rules at once. Groups do not change what a role can do in the rest of the Control Plane. Only a Super Admin can create and edit groups.

    1. In Settings → Users & access, select the User groups tab;

    2. In New user group, enter a Name, for example RBAC analysts;

    3. Open Members (optional) and select the users to include, for example rbac-viewer and rbac-monitor;

    4. Optionally enter a Description (optional);

    5. Select Create user group.

    New user group form with the name field marked 1
    Figure 5. Name the group (1), select its members (2), and create it (3).
    Expected result

    User group created appears, and the group is listed under Current user groups with its number of members.

    Change the members of a group

    UI

    1. In Current user groups, find the group;

    2. Select Manage members, the middle icon on the group’s row;

    3. In Members of RBAC analysts, add or remove users;

    4. Select Save members.

    Members of RBAC analysts dialog with two users selected and the Save members button marked 1
    Figure 6. Add or remove users, then select Save members (1).
    Expected result

    User group members updated appears and the group row shows the new number of members.

    Current user groups list with the RBAC analysts group
    Figure 7. Each group row shows its member count and the Edit user group, Manage members, and Delete user group icons (1).

    Deleting a group also deletes the data access rules that belong to it. Deleting a user removes the user from every group.

    Limit what a group can query

    UI

    Query data access controls which schemas and tables a user or a group can read in Query Studio, Query Studio AI, and the AI query tools. A user’s access combines their own rules with the rules of every group they belong to. A Super Admin always has full access.

    1. Open Settings → Query data access;

    2. Under Applies to, select User group;

    3. In User group, select the group, for example RBAC analysts;

    4. In Connection, select the connection to restrict, for example RBAC demo-source;

    5. Under Connection mode, select Restricted (1);

    6. Select Add rule, enter the Schema shop and the Table (optional, * for all) customers, and switch Allow on (2);

    7. Select Save policy (3).

    Query data access panel with the Restricted mode marked 1
    Figure 8. Set the connection to Restricted (1), allow one table (2), and save the policy (3).
    Expected result

    Data access policy saved appears. Members of the group can query shop.customers on this connection and nothing else; a rule with Allow switched off denies a table, and a denial always wins over an allow.

    Query data access is available to Super Admins only, and it limits queries. It does not hide pipelines or entities. A Viewer or a Monitor still sees every pipeline in the Control Plane.

    Check the data access rule as a group member

    UI

    1. In the second browser, sign in as a member of the group, for example rbac-viewer;

    2. Open Query Studio, select + to open a new session, and then open the SQL-capable Agent list and choose the source agent of RBAC demo;

    3. Expand the shop schema in the schema tree;

    4. Run SELECT count(*) FROM shop.orders.

    Query Studio as rbac-viewer: the shop schema lists only the customers table
    Figure 9. Only customers is listed (1), and the query on orders is refused (2).
    Expected result

    The schema tree lists only customers, and the query returns Access denied to shop.orders. A query on shop.customers runs normally. Users who are not in the group, such as rbac-manager, are not restricted.

    Query Studio shows this refusal under the heading Read-only query rejected. The text that matters is the line Access denied to shop.orders.

    Compare what a Viewer and a Manager see

    UI

    Sign in to the second browser as each user in turn and open the same pipeline.

    1. Sign in as rbac-viewer and open RBAC demo. Compare it with the Manager screenshot that follows;

    2. Open Settings and note which sections are listed;

    3. Sign in as rbac-manager and open the same pipeline and the same Settings dialog.

    RBAC demo pipeline as rbac-viewer: the list header without a create button marked 1
    Figure 10. A Viewer has no create pipeline button (1), no pipeline settings or Entities button (2), and no start or delete controls (3).
    RBAC demo pipeline as rbac-manager: the create pipeline button marked 1
    Figure 11. A Manager can create pipelines (1), open pipeline settings (2), add entities (3), and start, snapshot, or delete entities (4).
    Settings dialog as rbac-viewer: the five sections listed marked 1 and the Role field showing Viewer marked 2
    Figure 12. A Viewer sees only Account, Conversation settings, License, Support, and About (1), and the Account tab shows the assigned role (2).
    Settings dialog as rbac-manager: Users & access section with the accounts rbac-viewer and rbac-manager editable and rbac-monitor and rbac-superadmin shown as labels
    Figure 13. A Manager sees the Users & access section and manages Viewer and Manager accounts. Monitor and Super Admin accounts are read-only.
    Expected result

    The same pipeline looks different for each role: the Viewer can only look, while the Manager sees the controls to create, configure, start, and delete. A Monitor sees the pause and start controls of the entities but not the create, settings, or delete controls.

    Try a forbidden action

    API

    Controls that a role cannot use are hidden or disabled in the Control Plane, and Core Hub also refuses the request itself. Test it with the Viewer’s token.

    1. Sign in as the Viewer with POST /authentication/login to get an apiToken;

    2. Try to start an entity:

      curl -s -X POST "https://<core-hub-host>/pipelines/<pipeline-id>/commands/sync/start?entity=<entity-id>" \
        -H "Authorization: Bearer <viewer-apiToken>"
    3. Try to list users:

      curl -s https://<core-hub-host>/users -H "Authorization: Bearer <viewer-apiToken>"
    Expected result

    Both calls return 403. The first answers Your role (VIEWER) does not have permission to perform this action, the second Only super admin or manager can view users. With a Monitor token the first call is accepted (202), and with a Manager token the second call returns the user list.

    Compare the roles

    Gluesync has four roles that you can assign to people. A fifth role, External Module, is used internally by Gluesync modules such as Chronos and cannot be assigned in the Accounts list.

    Capability Viewer Monitor Manager Super Admin

    See pipelines, entities, status, metrics, and notifications

    Yes

    Yes

    Yes

    Yes

    Run read-only SQL in Query Studio (subject to Query data access rules)

    Yes

    Yes

    Yes

    Yes

    Save queries in Query Studio

    No

    Yes

    Yes

    Yes

    Share saved queries and reveal masked PII values in Query Studio

    No

    No

    Yes

    Yes

    Run SQL that changes data in Query Studio

    No

    No

    Yes

    Yes

    Start, pause, and stop entities, and run snapshots

    No

    Yes

    Yes

    Yes

    Edit the settings of an existing entity

    No

    Yes

    Yes

    Yes

    Run now, enable, and disable existing schedules in Schedules & events

    No

    Yes

    Yes

    Yes

    Create, edit, and delete schedules and events

    No

    No

    Yes

    Yes

    Create or delete pipelines and entities, manage connections and agents

    No

    No

    Yes

    Yes

    Change global settings: email, webhooks, alert thresholds, logging, license, session length, support bundle, restart

    No

    No

    Yes

    Yes

    Create, change, and delete user accounts

    No

    No

    Viewer and Manager accounts only

    Any role

    Create user groups and set Query data access rules

    No

    No

    No

    Yes

    Turn PII masking on or off for the whole platform, see the Query Studio audit log, manage LLM providers

    No

    No

    No

    Yes

    The Settings dialog also changes with the role:

    Role Sections listed in Settings

    Viewer

    Account, Conversation settings, License, Support, About

    Monitor

    Account, Conversation settings, Support, About

    Manager

    Account, Global settings, AI agents, Notifications, Smart alerts, Users & access, LLM providers, License, Support, Danger zone, About

    Super Admin

    All of the Manager sections plus Query data access

    Choose the lowest role that does the job. Use Viewer for people who only need to look and run read-only queries, Monitor for operators who start, pause, and tune entities but must not create or delete anything, Manager for people who build and run pipelines, and Super Admin for the few people who manage users, data access, and platform-wide security settings.

    Single sign-on

    If your organization uses an identity provider, the OIDC configuration tab next to Users and User groups in Settings → Users & access is where a Super Admin maps identity provider groups to Gluesync roles. Users provisioned that way appear in the OIDC list of Accounts, and their role comes from the mapping rather than from the role list. This guide does not configure single sign-on: see Configure OIDC authentication.

    Verify the result

    You have successfully set up access if:

    • Each test user appears in Accounts with the role you chose, and a new user shows Password change required until the first sign-in;

    • The user can sign in after setting a new password;

    • The Settings dialog and the pipeline page show fewer controls for a Viewer than for a Manager;

    • A Viewer request to start an entity or to list users returns 403;

    • A member of the user group is refused a table that the group is not allowed to query, and a user outside the group is not.

    Troubleshooting

    Problem Possible cause What to do

    The user does not see Settings → Users & access or Query data access

    The role does not include it: Users & access needs Manager or Super Admin, and Query data access and User groups need Super Admin

    Check the role in Settings → Account and ask a Super Admin to change it if needed

    The temporary password was not saved

    The password is shown only once

    In Accounts, select the reset icon on the user’s row and confirm Reset to get a new temporary password

    Create user is disabled

    Username is empty

    Enter a username

    The user cannot create a new password at the first sign-in

    The password does not follow the rules

    Use at least 8 characters with a lowercase letter, an uppercase letter, a symbol, and a number

    The role list does not offer Monitor or Super Admin

    The User role list only offers Viewer and Manager

    Create the account with the REST API, as shown in Create a Monitor or a Super Admin with the REST API

    A user group with this name already exists

    Group names are unique, ignoring uppercase and lowercase

    Choose a different name

    A group member can still query a table that the rule should block

    The member has a personal data access rule on the connection, which replaces the rules of their groups, or another group that allows the table

    Open Query data access, select User, and review the member’s own policy. A Deny rule always wins over an Allow rule

    A request returns 403 with Your role (VIEWER) does not have permission to perform this action

    The role does not include the action

    Use an account with a higher role, or ask a Super Admin to change the role

    Contact MOLO17 Support if you need assistance with users, roles, or access control.