Skip to main content

Admin Users

Admin users are the operators and managers of the SecureLink platform. They access the management UI to configure network infrastructure, manage devices, and oversee VPN services.

Navigate to Administration > Users to manage all user accounts.

User Types

SecureLink has three user types:

  • SuperAdmin — Full platform access. Can manage all tenants, users, and system settings. SuperAdmins operate across the entire deployment and have unrestricted access to every feature.
  • TenantAdmin — Manages a specific tenant's edges, connectors, VPN users, and network configuration. TenantAdmins are scoped to their assigned tenant and cannot access other tenants or system-wide settings.
  • App User (VPN User) — End users who connect via the SecureLink VPN client. App Users do not have access to the management UI.

Tabs

The Users page is organized into tabs. The available tabs depend on your role and tenant context:

SuperAdmin View (No Tenant Selected)

TabDescription
Super AdminsAll SuperAdmin accounts across the platform
Tenant AdminsAll TenantAdmin accounts across all tenants
VPN UsersVPN/App user accounts
InvitationsPending user invitations awaiting registration

SuperAdmin View (Tenant Selected)

TabDescription
Tenant AdminsTenantAdmin accounts for the selected tenant
VPN UsersVPN/App user accounts for the selected tenant
InvitationsPending invitations for the selected tenant

TenantAdmin View

TabDescription
AdminsAdmin accounts for your tenant
App UsersVPN/App user accounts for your tenant
InvitationsPending invitations for your tenant

User List

Each user tab displays a table with:

ColumnDescription
NameThe user's display name
EmailThe email address used for sign-in
TypeSuperAdmin, TenantAdmin, or App User
TenantThe assigned tenant (visible in SuperAdmin view)
StatusActive (email verified and enabled), Inactive (invited but email not yet verified), or Disabled (admin-disabled)
Last LoginTimestamp of the most recent login

First SuperAdmin Protection

The first SuperAdmin account (determined by creation time) is the platform bootstrap admin. This account has special protection:

  • Other administrators cannot edit or delete this account
  • The bootstrap admin can view all other accounts
  • The bootstrap admin can edit their own profile and settings

This prevents accidental lockout of the primary platform administrator.

Creating an Admin User

  1. Select the target tab on the Users page:
    • Super Admins tab — the button reads Invite Super Admins.
    • Tenant Admins tab — the button reads Invite Tenant Admins.
    • VPN Users tab — the button reads Invite VPN Users (covered in VPN User Management, not this page).
  2. Click the invite button for the tab you're on.
  3. Fill in the invitation form:
    • Email — The email address of the new user.
    • Tenant — Required for TenantAdmin. Select the tenant this user will manage.
    • Role — Assign a role that determines the user's permissions.
  4. Click Send Invitation.
  5. An invitation email is sent to the user with a unique registration link.
  6. The user clicks the link and lands on the SecureLink /accept-invite page, where they choose a display name and password.
  7. After completing registration, a verification email is sent. The user must click the link in that email before they can sign in.
  8. Once verified, the user can sign in at the platform URL. The invitation is marked Accepted automatically.

Email verification lifecycle

After accepting an invitation the user's status shows as Inactive until they click the link in the Email Verification email. Once the link is clicked the status automatically flips to Active and the user can sign in.

User row actions

Each user row in the list provides quick-access action buttons:

ActionIconDescription
ViewEyeOpen the User Detail page
Send password reset emailSend arrowSends a SecureLink-branded email with a one-time /reset-password?token=X link
Set passwordKeyAdmin sets a new password directly. An optional "Require user to change on next sign-in" checkbox marks it as temporary in the identity provider
UnlockPadlock openClears a brute-force lockout. Appears only when the user's account is locked out by repeated failed attempts
EditPencilEdit name, type, or tenant assignment
DeleteTrashPermanently remove the user
info

The Unlock button appears only for users whose accounts have been locked by brute-force protection. Locked users cannot sign in until an admin clears the lockout.

User Detail Page

Click on a user row to open the User Detail page. The page is organized into tabs:

Profile Information

Displays account details in two columns:

  • Account Information — Username, full name, email, phone
  • Access & Status — User type, status (active/disabled), tenant ID
  • Timestamps — Creation date, last update, created by

Activity Log

A chronological log of actions performed by this user:

ColumnDescription
TimestampWhen the action occurred
ActionAction type with color-coded badge (Login, Update, Create, Delete, etc.)
Resource TypeWhat kind of resource was affected
ResourceThe specific resource
IPOriginating IP address
StatusSuccess or failure

Click Export CSV to download the activity log.

Permissions

Shows the user's role assignment and effective permissions:

  • Role Assignment — Current role name, type, and a summary of capabilities
  • Permission Details — Create, Read, Update, and Delete permission indicators

To change a user's role, use the Edit Info button in the page header.

note

SuperAdmin users always have full permissions. The Permissions tab shows a simplified "full access" explanation for SuperAdmin accounts.

Sessions

All active sessions for this user:

ColumnDescription
IP AddressSession IP address
DeviceBrowser and operating system
CreatedSession creation time
Last ActivityMost recent API call
ExpiresSession expiration time
StatusActive or expired

Actions:

  • Export CSV — Download the sessions list
  • Revoke All Active — Revokes all active sessions for this user. The user will receive a 401 response on their next API call and must re-authenticate.
warning

When an admin revokes another user's sessions, the user is not immediately logged out. Instead, their next API call will fail with a 401 error, and the UI will redirect them to the login page. The revoked session token cannot fall back to Keycloak authentication — it is definitively invalidated.

Editing a User

Click Edit Info in the user detail header to open the edit modal. You can:

  • Change user type — Promote a TenantAdmin to SuperAdmin, or scope a SuperAdmin down to TenantAdmin.
  • Change tenant assignment — Reassign a TenantAdmin to a different tenant.
  • Change role — Assign a different role with different permissions.

Changes take effect on the user's next login or token refresh.

Deactivating a User

Click Deactivate in the user detail header (with confirmation) to disable the account:

  • The user can no longer log in to the management UI.
  • The user's account and configuration history are preserved.
  • The user can be re-activated at any time by clicking Activate.
warning

Disabling a SuperAdmin removes their access to all tenants immediately. Any active sessions will be terminated on the next token validation.

Assume Identity (SuperAdmin)

SuperAdmins can temporarily assume the identity of a TenantAdmin to see the platform from their perspective. This is useful for troubleshooting tenant-specific issues without sharing credentials.

How It Works

  1. Navigate to Administration > Users and find the TenantAdmin account
  2. Click Assume Identity (available only for TenantAdmin accounts, type 2)
  3. The UI switches to the TenantAdmin's context — you see their tenant, their permissions, their sidebar

While assuming identity:

  • An amber banner appears at the top of every page showing whose identity you've assumed
  • All actions are performed as the assumed user (same permissions and tenant scope)
  • An audit trail entry is created recording the assumption
  • Click Return to Admin in the banner to restore your SuperAdmin session

Security

  • Only SuperAdmins can assume identity
  • The assumed session uses a real JWT with the TenantAdmin's context plus an assumedBy claim
  • Your original SuperAdmin token is stashed locally and restored when you return
  • All assumed actions are logged in the audit trail with the original SuperAdmin's identity
Environment-Gated

Assume Identity is disabled by default and must be enabled via the ENABLE_IDENTITY_ASSUME=true environment variable on the API.