User entity
Overview
A User represents an authenticated individual interacting with Chargeworx. Users can belong to multiple companies or projects, depending on their role and permissions. Access is secured via IdentityServer authentication and role-based authorization.Fields
| Field | Type | Description |
|---|---|---|
User ID | GUID | Unique identifier used internally for authentication and audit logs. |
Full Name | Text | Display name shown in the Admin UI and logs. |
Email | Text | Primary contact and login credential. |
Role | Enum | Defines user privileges (Admin, Manager, Developer, Viewer). |
MFA Enabled | Boolean | Indicates whether multi-factor authentication is enforced. |
Status | Enum | Active, Pending Invitation, or Disabled. |
Last Login | DateTime | Most recent authentication timestamp. |
Relationships
- Many-to-One → Company: Each user is assigned to at least one company.
- Many-to-Many → Project: Users may collaborate across multiple projects.
- One-to-Many → Logs/Actions: Tracks user activities and access across Chargeworx services.
Security & authentication
- Managed via IdentityServer and OAuth2 scopes.
- MFA supported through
AuthControllerand middleware verification. - Role-based access determines visibility of administrative, financial, and operational data.
User accounts are federated and secured with MFA and role-based scopes.
