Agent Module - Users
Overview
The Agent Module is responsible for managing Agents registered within the system.
An Agent is a service that runs on the user's own server and communicates with the system to execute Docker image build operations. Once registered, an Agent receives build requests from the system and performs Docker image builds within the user's own environment.
During the build process, the Agent streams build logs back to the system in real time, allowing users to monitor the progress and status of build operations as they execute.
The Users page of the Agent Module allows administrators to manage user permissions for the Agent module.
By default, the page displays only users who already have at least one permission assigned for the Agent module. Users are displayed in a paginated list.
When Edit Mode is enabled, all users in the system are displayed, regardless of whether they currently have any permissions for the Agent module. Administrators can then assign, update, or remove Agent module permissions.
Prerequisites
Before managing Agent module user permissions, ensure that:
- You have administrator privileges.
- Users have already been created.
- At least one Agent has been registered in the system.
Viewing Users
When the page is opened:
- Users are displayed in a paginated table.
- Only users with at least one permission in the Agent module are shown.
- Each row displays the user's current Agent module permissions.
Edit Mode
Administrators can enable Edit Mode to modify user permissions.
When Edit Mode is enabled:
- All users in the system are displayed.
- Agent module permissions become editable.
- Permission changes are stored locally until they are saved.
- No changes are applied immediately.
Permission Assignment
Permissions can be assigned or removed directly from the user's row.
Selecting or deselecting a permission immediately updates the local state.
Changes remain pending until the administrator clicks Save.
Access Requirements
To access this page, the user must have the ACL permission for the Agent module.
The ACL permission allows users to manage authorization settings for the Agent module. Users without this permission cannot access this page unless they have administrator privileges.
Users without the required permission cannot view this page and will receive the following authorization error:
Access Denied
You don't have access to this resource.
Available Permissions
The following permissions are available within the Agent module.
| Permission | Description |
|---|---|
| GET | Allows the user to view the list of registered Agents. Users without this permission cannot access the Agent module or view registered Agents. |
| CREATE | Allows the user to register new Agents. |
| ACL | (Access Control List) Allows the user to manage permissions for other users within the Agent module. Users without this permission cannot modify user permissions in the Agent module. |
Saving Changes
After permission changes have been made:
- Review the pending changes.
- Click Save.
- Only modified permissions are sent to the server.
- Once the request succeeds, the new permissions become effective.
Reset Changes
Clicking Reset discards all unsaved modifications.
The permission list is restored to its last saved state.
No requests are sent to the server when Reset is used.
Validation
The system validates all permission changes before saving.
Permission updates are persisted only after a successful save operation.
Permission Dependencies
Having the ACL permission in the Agent module alone is not sufficient to manage user permissions.
To manage users within the Agent module, the administrator must also have at least the GET permission in the Users Module.
Without the Users Module GET permission:
- Users cannot be retrieved.
- Agent module user permissions cannot be managed.
- The operation results in an authorization error.
This dependency exists because Agent module user management requires access to user information provided by the Users module.
Notes
- Permission changes are stored locally until Save is clicked.
- Reset discards all unsaved changes.
- Only modified permissions are submitted to the server.
- The user list is displayed using pagination for better performance.