15 KiB
User Management Guide
This comprehensive guide covers user administration, authentication, role-based access control, and user preferences in Readur.
Table of Contents
- Overview
- Authentication Methods
- User Roles and Permissions
- Admin User Management
- User Settings and Preferences
- OIDC/SSO Integration
- Security Best Practices
- Troubleshooting
Overview
Readur provides a comprehensive user management system with support for both local authentication and enterprise SSO integration. The system features:
- Dual Authentication: Local accounts and OIDC/SSO support
- Role-Based Access Control: Admin and User roles with distinct permissions
- User Preferences: Extensive per-user configuration options
- Enterprise Integration: OIDC support for corporate identity providers
- Security Features: JWT tokens, bcrypt password hashing, and session management
Authentication Methods
Local Authentication
Local authentication uses traditional username/password combinations stored securely in Readur's database.
Features:
- Secure Storage: Passwords hashed with bcrypt (cost factor 12)
- JWT Tokens: 24-hour token validity with secure signing
- User Registration: Self-service account creation (if enabled)
- Password Requirements: Configurable complexity requirements
Creating Local Users:
-
Admin Creation (via Settings):
- Navigate to Settings → Users (Admin only)
- Click "Add User"
- Enter username, email, and initial password
- Assign user role (Admin or User)
-
Self Registration (if enabled):
- Visit the registration page
- Provide username, email, and password
- Account created with default User role
OIDC/SSO Authentication
OIDC (OpenID Connect) authentication integrates with enterprise identity providers for single sign-on.
Supported Features:
- Standard OIDC Flow: Authorization code flow with PKCE
- Automatic Discovery: Reads provider configuration from
.well-known/openid-configuration - User Provisioning: Automatic user creation on first login
- Identity Linking: Maps OIDC identities to local user accounts
- Profile Sync: Updates user information from OIDC provider
Supported Providers:
- Microsoft Azure AD: Enterprise identity management
- Google Workspace: Google's enterprise SSO
- Okta: Popular enterprise identity provider
- Auth0: Developer-friendly authentication platform
- Keycloak: Open-source identity management
- Generic OIDC: Any standards-compliant OIDC provider
See the OIDC Setup Guide for detailed configuration instructions.
User Roles and Permissions
User Role
Standard Users have access to core document management functionality:
Permissions:
- ✅ Upload and manage own documents
- ✅ Search all documents (based on sharing settings)
- ✅ Configure personal settings and preferences
- ✅ Create and manage personal labels
- ✅ Use OCR processing features
- ✅ Access personal sources (WebDAV, local folders, S3)
- ✅ View personal notifications
- ❌ User management (cannot create/modify other users)
- ❌ System-wide settings or configuration
- ❌ Access to other users' private documents
Admin Role
Administrators have full system access and user management capabilities:
Additional Permissions:
- ✅ User Management: Create, modify, and delete user accounts
- ✅ System Settings: Configure global system parameters
- ✅ User Impersonation: Access other users' documents (if needed)
- ✅ System Monitoring: View system health and performance metrics
- ✅ Advanced Configuration: OCR settings, source configurations
- ✅ Security Management: Token management, authentication settings
Default Admin Account:
- Username:
admin - Default Password:
readur2024⚠️ Change immediately in production!
Admin User Management
Accessing User Management
- Log in as an administrator
- Navigate to Settings → Users
- The user management interface displays all system users
User Management Operations
Creating Users
- Click "Add User" in the Users section
- Fill out user information:
Username: john.doe Email: john.doe@company.com Password: [secure-password] Role: User (or Admin) - Save to create the account
- Notify the user of their credentials
Modifying Users
- Find the user in the user list
- Click "Edit" or the user row
- Update information:
- Change email address
- Reset password
- Modify role (User ↔ Admin)
- Update username (if needed)
- Save changes
Deleting Users
- Select the user to delete
- Click "Delete"
- Confirm deletion (this action cannot be undone)
Important Notes:
- Users cannot delete their own accounts
- Deleting a user removes all their documents and settings
- Consider disabling instead of deleting for user retention
Bulk Operations
Future Feature: Bulk user operations for enterprise deployments:
- Bulk user import from CSV
- Bulk role changes
- Bulk user deactivation
User Information Display
The user management interface shows:
- Username and Email: Primary identification
- Role: Current role assignment
- Created Date: Account creation timestamp
- Last Login: Recent activity indicator
- Auth Provider: Local or OIDC authentication method
- Status: Active/disabled status (future feature)
User Settings and Preferences
Personal Settings Access
Users can configure their preferences via:
- User Menu → Settings (top-right corner)
- Settings Page → Personal tab
Settings Categories
OCR Preferences
Language Settings:
- OCR Language: Primary language for text recognition (25+ languages)
- Fallback Languages: Secondary languages for mixed documents
- Auto-Detection: Automatic language detection (if supported)
Processing Options:
- Image Enhancement: Enable preprocessing for better OCR results
- Auto-Rotation: Automatically rotate images for optimal text recognition
- Confidence Threshold: Minimum confidence level for OCR acceptance
- Processing Priority: User's OCR queue priority level
Search Preferences
Display Settings:
- Results Per Page: Number of search results to display (10-100)
- Snippet Length: Length of text previews in search results
- Fuzzy Search Threshold: Sensitivity for fuzzy/approximate matching
- Search History: Enable/disable search query history
Search Behavior:
- Default Sort Order: Relevance, date, filename, size
- Auto-Complete: Enable search suggestions
- Real-time Search: Search as you type functionality
File Processing
Upload Settings:
- Default File Types: Preferred file types for uploads
- Auto-OCR: Automatically queue uploads for OCR processing
- Duplicate Handling: How to handle duplicate file uploads
- File Size Limits: Personal file size restrictions
Storage Preferences:
- Compression: Enable compression for storage savings
- Retention Period: How long to keep documents (if configured)
- Archive Behavior: Automatic archiving of old documents
Interface Preferences
Display Options:
- Theme: Light/dark mode preference
- Timezone: Local timezone for timestamp display
- Date Format: Preferred date/time display format
- Language: Interface language (separate from OCR language)
Navigation:
- Default View: List or grid view for document browser
- Sidebar Collapsed: Default sidebar state
- Items Per Page: Default pagination size
Notification Settings
Notification Types:
- OCR Completion: Notify when document processing completes
- Source Sync: Notifications for source synchronization events
- System Alerts: Important system messages and warnings
- Storage Warnings: Alerts for storage space or quota issues
Delivery Methods:
- In-App Notifications: Browser notifications within Readur
- Email Notifications: Email delivery for important events (future)
- Desktop Notifications: Browser push notifications (future)
Source-Specific Settings
WebDAV Preferences:
- Connection Timeout: How long to wait for WebDAV responses
- Retry Attempts: Number of retries for failed downloads
- Sync Schedule: Preferred automatic sync frequency
Local Folder Settings:
- Watch Interval: How often to scan local directories
- File Permissions: Permission handling for processed files
- Symlink Handling: Follow symbolic links during scans
Saving and Applying Settings
- Modify preferences in the settings interface
- Click "Save Settings" to apply changes
- Settings take effect immediately for most options
- Some settings may require logout/login to fully apply
OIDC/SSO Integration
Overview
OIDC integration allows users to authenticate using their corporate credentials without creating separate passwords for Readur.
User Experience with OIDC
First-Time Login
- User clicks "Login with SSO" on login page
- Redirected to corporate identity provider (e.g., Azure AD, Okta)
- User authenticates with corporate credentials
- Readur creates user account automatically with information from OIDC provider
- User is logged in and can immediately start using Readur
Subsequent Logins
- Click "Login with SSO"
- Automatic redirect to identity provider
- Single sign-on (may not require re-authentication)
- Immediate access to Readur
OIDC User Account Details
Automatic Account Creation:
- Username: Derived from OIDC
preferred_usernameorsubclaim - Email: Uses OIDC
emailclaim - Role: Default "User" role (admins can promote later)
- Auth Provider: Marked as "OIDC" in user management
Identity Mapping:
- OIDC Subject: Unique identifier from identity provider
- OIDC Issuer: Identity provider URL
- Linked Accounts: Maps OIDC identity to Readur user
Mixed Authentication Environments
Readur supports both local and OIDC users in the same installation:
- Local Admin Accounts: For initial setup and emergency access
- OIDC User Accounts: For regular enterprise users
- Role Management: Admins can promote OIDC users to admin role
- Account Linking: Future feature to link local and OIDC accounts
OIDC Configuration
See the detailed OIDC Setup Guide for complete configuration instructions.
Security Best Practices
Password Security
For Local Accounts:
- Use Strong Passwords: Minimum 12 characters with mixed case, numbers, symbols
- Regular Rotation: Change passwords periodically
- Unique Passwords: Don't reuse passwords from other systems
- Admin Passwords: Use extra-strong passwords for administrator accounts
JWT Token Security
Token Management:
- Secure Storage: Tokens stored securely in browser localStorage
- Automatic Expiration: 24-hour token lifetime
- Secure Transmission: HTTPS required for production
- Token Rotation: Regular token refresh (future feature)
Access Control
Role Management:
- Principle of Least Privilege: Grant minimum necessary permissions
- Regular Review: Periodically audit user roles and permissions
- Admin Accounts: Limit number of administrator accounts
- Account Deactivation: Disable accounts for departed users
OIDC Security
Provider Configuration:
- Use HTTPS: Ensure all OIDC endpoints use HTTPS
- Client Secret Protection: Secure storage of OIDC client secrets
- Scope Limitation: Request only necessary OIDC scopes
- Token Validation: Proper verification of OIDC tokens
Monitoring and Auditing
Access Monitoring:
- Login Tracking: Monitor successful and failed login attempts
- Role Changes: Audit administrator role assignments
- Account Activity: Track user document access patterns
- Security Events: Log authentication and authorization events
Troubleshooting
Common Authentication Issues
Local Login Problems
Symptom: "Invalid username or password" Solutions:
- Verify credentials: Check username/password carefully
- Account existence: Confirm account exists in user management
- Password reset: Admin can reset user password
- Account status: Ensure account is active/enabled
OIDC Login Problems
Symptom: OIDC login fails or redirects incorrectly Solutions:
- Check OIDC configuration: Verify client ID, secret, and issuer URL
- Redirect URI: Ensure redirect URI is registered with OIDC provider
- Provider status: Confirm OIDC provider is operational
- Network connectivity: Verify Readur can reach OIDC endpoints
JWT Token Issues
Symptom: "Invalid token" or frequent logouts Solutions:
- Check system time: Ensure server time is accurate
- JWT secret: Verify JWT_SECRET environment variable
- Token expiration: Tokens expire after 24 hours
- Browser storage: Clear localStorage and re-login
User Management Issues
Cannot Create Users
Symptom: User creation fails Solutions:
- Admin permissions: Ensure logged in as administrator
- Duplicate usernames: Check for existing username/email
- Database connectivity: Verify database connection
- Input validation: Ensure all required fields are provided
User Settings Not Saving
Symptom: Settings changes don't persist Solutions:
- Check permissions: Ensure user has permission to modify settings
- Database issues: Verify database write permissions
- Browser issues: Try clearing browser cache
- Network connectivity: Ensure stable connection during save
Role and Permission Issues
Users Cannot Access Features
Symptom: User reports missing functionality Solutions:
- Check user role: Verify user has appropriate role assignment
- Permission scope: Confirm feature is available to user role
- Session refresh: User may need to logout/login after role change
- Feature availability: Ensure feature is enabled in system configuration
Admin Access Problems
Symptom: Admin cannot access management features Solutions:
- Role verification: Confirm user has Admin role
- Token validity: Ensure JWT token contains correct role information
- Database consistency: Verify role is correctly stored in database
- Login refresh: Try logging out and logging back in
Performance Issues
Slow User Operations
Symptom: User management operations are slow Solutions:
- Database performance: Check database query performance
- User count: Large user counts may require pagination
- Network latency: OIDC operations may be affected by provider latency
- System resources: Monitor CPU and memory usage
Next Steps
- Configure OIDC integration for enterprise authentication
- Set up sources for document synchronization
- Review security best practices
- Explore advanced search capabilities
- Configure labels and organization for document management