Skip to content

User Creation and Administration

Feature Overview

Enables staffing company administrators to add new users to the system with appropriate roles and permissions, utilizing Auth0 for authentication while maintaining user data in the local database.

User Stories

US-UM-01: Create New User Account with Auth0 Integration

As a staffing company administrator, I want to create new user accounts in the system that are synchronized with Auth0, So that authorized staff members can access the platform securely on behalf of our company.

Acceptance Criteria: - Given I am logged in as a staffing company administrator - When I navigate to the user management section - Then I should see an option to create a new user - When I click on "Create New User" - Then I should see a form with fields for: - First name - Last name - Email address - Phone number (optional) - Job title - Department (optional) - Role selection (Admin or Standard User) - When I submit the form with valid information - Then the system should: - Create a user in the local database with all provided information - Create a corresponding user in Auth0 with appropriate roles - Establish a link between the local user and Auth0 user - And send an email notification to the new user with account setup instructions - And the user should receive an Auth0 email to complete their registration

US-UM-02: View User List with Auth0 Status

As a staffing company administrator, I want to view a list of all users in my organization with their Auth0 status, So that I can manage user accounts effectively across both systems.

Acceptance Criteria: - Given I am logged in as a staffing company administrator - When I navigate to the user management section - Then I should see a list of all users in my organization - And the list should display: - User name - Email address - Role - Account status (Active/Inactive) - Auth0 status (Synced/Not Synced) - Last login date - And I should be able to search for users by name or email - And I should be able to filter users by role, status, and Auth0 sync status - And I should see visual indicators for any users where local data and Auth0 data are out of sync

US-UM-03: Bulk User Import with Auth0 Synchronization

As a staffing company administrator, I want to import multiple users at once using a CSV file with Auth0 synchronization, So that I can efficiently onboard teams without manual data entry while maintaining security.

Acceptance Criteria: - Given I am logged in as a staffing company administrator - When I navigate to the user management section - Then I should see an option for bulk user import - When I select the bulk import option - Then I should be able to download a CSV template - When I upload a completed CSV file - Then the system should validate the data - And display any validation errors before proceeding - When I confirm the import - Then the system should: - Create accounts in the local database for all valid entries - Create corresponding accounts in Auth0 with appropriate roles - Establish links between local users and Auth0 users - And send email notifications to all new users - And users should receive Auth0 emails to complete their registration - And provide a summary of successful imports and failures for both local database and Auth0

US-UM-04: Assign User Roles with Auth0 Synchronization

As a staffing company administrator, I want to assign appropriate roles to users that synchronize with Auth0, So that they have the correct permissions for their job responsibilities across both systems.

Acceptance Criteria: - Given I am logged in as a staffing company administrator - When I create a new user or edit an existing user - Then I should be able to select from available roles (Admin or Standard User for MVP) - When I assign a role to a user - Then the system should: - Apply the corresponding permissions in the local database - Update the user's roles in Auth0 - Ensure role consistency between both systems - And log the role assignment for audit purposes - And the user should only have access to features appropriate for their role - And any role changes should be immediately reflected in Auth0 permissions

US-UM-05: Validate User Information Across Systems

As a staffing company administrator, I want to ensure that user information is validated before account creation in both local database and Auth0, So that the system maintains data integrity and prevents errors across both systems.

Acceptance Criteria: - Given I am creating or editing a user account - When I enter user information - Then the system should validate: - Email address format - Required fields are completed - Email address is not already in use in the local database - Email address is not already in use in Auth0 - When validation fails - Then the system should display clear error messages - And prevent the submission until errors are corrected - When validation passes - Then the system should allow the account to be created or updated in both systems

US-UM-06: Synchronize Existing Users with Auth0

As a staffing company administrator, I want to synchronize existing users with Auth0, So that all users can benefit from enhanced authentication security.

Acceptance Criteria: - Given I am logged in as a staffing company administrator - When I navigate to the user management section - Then I should see an option to synchronize users with Auth0 - When I select this option - Then I should see a list of users that are not yet synchronized with Auth0 - When I select users to synchronize - Then the system should: - Create corresponding accounts in Auth0 - Link the local accounts with Auth0 accounts - Send email notifications to users to complete their Auth0 setup - And provide a summary of successful synchronizations and failures - And users should be able to continue using the platform during the transition

Dependencies

  • Organization onboarding must be completed before users can be added to the system
  • Email service integration for sending notifications to new users
  • Auth0 tenant setup and configuration
  • Integration between local database and Auth0