User Impersonation
Learn how to use the impersonation feature to troubleshoot user issues while respecting privacy and consent.
What is User Impersonation?
User impersonation allows authorized administrators to temporarily access My platform as another user. This feature is useful for:
- Troubleshooting: Reproduce issues users are experiencing
- Support: Help users with complex operations
- Training: Demonstrate features to users
- Testing: Verify permissions and access controls
Key Features
Privacy-Focused Design
- User Consent Required: Users must explicitly enable impersonation
- Time-Limited: Users control how long impersonation is allowed (1-168 hours)
- Complete Transparency: All actions logged and visible to the user
- Easy Revocation: Users can disable consent at any time
Security Controls
- Permission-Based: Only Super Admin or Owner organization users can impersonate
- No Self-Impersonation: Cannot impersonate your own account
- No Chaining: Cannot impersonate while already impersonating another user
- Automatic Expiration: Consent automatically expires after user-defined duration
- Session Tracking: Each impersonation session has unique ID for audit
Complete Audit Trail
- Every API call during impersonation is logged
- Users can view all actions performed during impersonation
- Sensitive data automatically redacted from logs
- Session-based organization for easy review
Who Can Impersonate?
Required Permissions
Super Admin Role:
- Users with Super Admin role have
impersonate:userspermission - Can impersonate any user (with their consent)
- Assigned by Owner organization users only
Owner Organization Users:
- Automatically have impersonation capability
- Can impersonate users in their organization hierarchy
- No additional role assignment needed
Everyone Else:
- Cannot see impersonation features
- Cannot impersonate any user
Impersonation Workflow
Step 1: User Enables Consent
Before impersonation can occur, the target user must enable consent.
For Users:
- Log in to your account
- Navigate to Account Settings > Impersonation
- Find Consent to Impersonation section
- Click Enable Impersonation
- Set duration (1-168 hours)
- Click Save
What happens:
- Consent is recorded with timestamp
- Administrator is notified consent is available
- Expires automatically after duration
- Can be revoked at any time
Duration Options:
- 1-24 hours: Short-term troubleshooting
- 24-72 hours: Multi-day support
- 72-168 hours: Extended access (max 1 week)
Step 2: Administrator Impersonates User
For Administrators (Super Admin or Owner):
- Navigate to Users
- Find the target user
- Check if Impersonate user is available (using kebab menu)
- Click Impersonate User
- Confirm the action
- You are now acting as that user
During Impersonation:
You will see:
- Banner at top: "You are impersonating [User Name]"
- Exit button: Click to return to your account
- All features: Exactly as the user sees them
- User's permissions: Filtered by their actual permissions
Step 3: Perform Support Actions
While impersonating:
- Navigate the platform as the user would
- Reproduce reported issues
- Perform actions on behalf of the user
- Test features and permissions
- Document findings
All actions are logged and visible to the impersonated user. Treat user data with respect and exit impersonation when done.
Step 4: Exit Impersonation
To exit impersonation:
- Click Exit Impersonation button in banner
- You return to your original account
- Impersonation session is closed
Automatic Exit:
- Session expires after user's consent duration
- If user revokes consent during impersonation
- If token expires (follows consent duration)
For Users: Managing Consent
Enabling Impersonation Consent
When to enable:
- When you have an issue and need support
- When requesting help from administrator
- Before training session
- When administrator asks for consent
How to enable:
- Go to Account Settings > Impersonation
- Click Consent to Impersonation
- Choose duration:
1 hour - Quick support24 hours - Same day support72 hours - Multi-day issueCustom - Specify hours (max 168)
- Click Enable
Confirmation:
Impersonation consent enabled
Expires: [Date and time]
Duration: [X] hours
Checking Consent Status
To check if consent is active:
- Go to Account Settings > Impersonation
- View Impersonation Consent section:
Status: ActiveExpires: 2025-11-07 10:30:00 UTC
Revoking Consent
To disable consent:
- Go to Account Settings > Impersonation
- Click Revoke Consent
- Confirm the action
Effects:
- Consent immediately disabled
- Active impersonation sessions terminated
- Administrator can no longer impersonate
- Can be re-enabled anytime
Viewing Impersonation Audit
To see who impersonated you:
-
Go to Account Settings > Impersonation
-
Under Sessions
-
See complete history:
Started: 2025-11-06 10:00:00 UTCEnded: 2025-11-06 11:30:00 UTCDuration: 1.5 hoursImpersonator: John Admin (john@example.com)Status: Ongoing -
Click Show audit log to see all actions
Audit Information:
- Date and time of each action
- API endpoint called
- Sensitive data automatically redacted
- Result (success/failure)
For Administrators: Using Impersonation
Checking Impersonation Availability
In user list:
Users with active consent show:
- Impersonate user status enabled
- Consent expiration time
- Click to impersonate
Users without consent:
- Impersonate user status disabled
Starting Impersonation
Requirements:
- User has active consent
- You have Super Admin role or Owner organization role
- User is not deleted or suspended
- You are not already impersonating someone
Steps:
-
Find User:
- Navigate to Users
- Search for target user
-
Verify Consent:
- Check Impersonate user status enabled
- Check consent expiration time
- Ensure sufficient time for your needs
-
Initiate Impersonation:
- Click Impersonate User (using kebab menu)
- Confirm dialog:
You will temporarily act as user [Name] and have their permissions.To return to your account, click the close icon on the impersonationbadge in the top bar.[Cancel] [Impersonate user]
-
Confirmation:
- You are now impersonating the user
- Banner appears at top
- Session starts
During Impersonation Session
What You See:
- Exact same interface as user
- User's permissions (may be more restrictive than yours)
- User's organization and data
- User's customizations and preferences
What You Can Do:
- Navigate all pages user can access
- Perform any action user can perform
- Create/edit/delete based on user permissions
- Test features and reproduce issues
What You Cannot Do:
- Access features user cannot access
- Bypass user's permission restrictions
- Impersonate another user while impersonating
- Modify your own account
Best Practices:
- Document your actions
- Minimize time in impersonation
- Only perform necessary actions
- Inform user what you did
- Exit when finished
Exiting Impersonation
Normal Exit:
- Click X button in banner
- Return to your account
Automatic Exit:
Impersonation automatically ends when:
- Consent duration expires
- User revokes consent
- Session token expires
- You log out
- User is suspended/deleted
Security and Privacy
What is Logged
Logged Information:
- Timestamp of each action
- API endpoint and method (GET, POST, etc.)
- HTTP status code (200, 404, etc.)
- Request parameters (sensitive data redacted)
- Response status (sensitive data redacted)
Automatically Redacted:
- Passwords
- Authentication tokens
- System secrets
- Any field containing "password", "secret", "token"
Example Log Entry:
{
"timestamp": "2025-11-06T10:15:23Z",
"session_id": "imp_abc123",
"impersonator": "admin@example.com",
"impersonated_user": "user@example.com",
"method": "POST",
"endpoint": "/api/users",
"status": 201,
"request_body": {
"name": "John Doe",
"email": "john@example.com",
"password": "[REDACTED]"
}
}
Data Protection
User Control:
- Users choose when to enable consent
- Users control duration
- Users can revoke at any time
- Users see complete audit trail
Platform Protection:
- No access without consent
- Automatic expiration
- Complete logging
- Sensitive data redaction
Compliance:
- Audit trail for regulatory requirements
- Consent-based access model
- User visibility and control
- Data privacy respected
Common Use Cases
Troubleshooting User Issues
Scenario: User reports they cannot see a feature
Workflow:
- User enables impersonation consent (1 hour)
- Administrator impersonates user
- Administrator navigates to reported area
- Reproduces issue
- Identifies permission/configuration problem
- Exits impersonation
- Fixes issue in user's settings
- User confirms fix
Training New Users
Scenario: Training user on complex workflow
Workflow:
- User enables impersonation (24 hours)
- Administrator impersonates
- Performs workflow steps
- Documents each action
- Exits impersonation
- Shares audit with user
- User reviews actions performed
- User practices independently
Permission Verification
Scenario: Verify user has correct permissions
Workflow:
- User enables impersonation (1 hour)
- Administrator impersonates
- Tests access to various features
- Documents what is visible/accessible
- Exits impersonation
- Adjusts permissions if needed
Troubleshooting
Cannot Impersonate User
Problem: Impersonate button is disabled
Solutions:
- Check user has enabled consent:
- Ask user to enable in Profile > Security
- Verify consent hasn't expired
- Verify you have permissions:
- Super Admin role OR
- Owner organization role
- Check user status:
- User is not suspended
- User is not deleted
- Verify not already impersonating:
- Exit current impersonation first
Consent Not Showing
Problem: User enabled consent but administrator doesn't see it
Solutions:
- Refresh the page (Ctrl+F5)
- Wait 30 seconds (cache propagation)
- Check consent expiration time
- Verify user saved the consent
- Check user didn't accidentally revoke
Impersonation Session Ends Unexpectedly
Problem: Kicked out of impersonation session
Possible Causes:
- User revoked consent
- Consent duration expired
- Token expired
- User was suspended
- Network interruption
Solutions:
- Check if consent is still active
- Ask user to re-enable consent
- Check consent expiration time
- Verify your network connection
Cannot See User's Data
Problem: During impersonation, cannot see expected data
Explanation:
- You see exactly what user sees
- User may have restricted permissions
- Organization access may be limited
- This is expected behavior
Solutions:
- Verify user's assigned roles
- Check user's organization membership
- Review hierarchical permissions
- Adjust user permissions if needed
Best Practices
For Users
Enabling Consent:
- Only enable when requested or needed
- Set minimum necessary duration
- Revoke when support is complete
- Review audit trail after impersonation
Privacy:
- Trust your administrators
- Consent is entirely voluntary
- You control when and how long
- You can see everything they did
For Administrators
Before Impersonating:
- Have clear purpose for impersonation
- Request user enable consent
- Plan what you need to do
- Estimate time needed
During Impersonation:
- Work efficiently
- Document your actions
- Only perform necessary operations
- Respect user's privacy
- Exit promptly when done
After Impersonation:
- Inform user what was done
- Document findings
- Share audit if requested
- Follow up on issues found
For Organizations
Policy:
- Define when impersonation is appropriate
- Document approval process
- Train administrators
- Review audit trails regularly
Security:
- Limit Super Admin role assignment
- Monitor impersonation usage
- Review audit logs
- Investigate unusual patterns