Appearance
Troubleshooting: Login & Access
Resolve sign-in failures, session expiry, permission denials, and two-factor authentication issues.
Cannot sign in
| Error message | Cause | Fix |
|---|---|---|
Invalid email or password | Wrong credentials | Reset password via Forgot Password |
Verify your email before signing in | Email not verified | Check inbox; use OTP or confirmation link |
Your lab account is not active | Tenant suspended/inactive | Contact platform support |
| Lock reason message | Tenant locked | See Billing Troubleshooting |
| HTTP 429 | Rate limited | Wait 15 minutes; don't retry rapidly |
Forgot password not working
| Check | Action |
|---|---|
| Email in spam | Search for EaseLab reset email |
| Wrong email | Confirm registered email with admin |
| Link expired | Request new reset (links expire) |
| SMTP not configured | Platform admin must fix email settings |
Session keeps expiring
| Cause | Fix |
|---|---|
| Access token expired (15 min) | Client should auto-refresh |
| Refresh cookie blocked | Enable cookies; check SameSite settings |
| Wrong portal domain | Cookie domain must match portal host |
| Logged out elsewhere | Re-login |
Test refresh: POST /auth/refresh with credentials included.
Two-factor issues
| Symptom | Fix |
|---|---|
| Code always invalid | Sync phone time (NTP) |
| Lost authenticator | Use recovery code |
| No recovery codes | Contact admin for account recovery |
| 2FA loop | Clear cookies; try incognito window |
See 2FA documentation.
Permission denied (403)
| Message | Fix |
|---|---|
You do not have permission... | Admin must grant permission or role |
Access denied | Wrong role for this feature |
TENANT_READONLY | Billing issue — not a permission problem |
Check current access: GET /lab/admin/access
Wrong portal
| Portal | URL pattern | Users |
|---|---|---|
| Tenant | app.example.com | Lab staff |
| Admin | admin.example.com | Platform operators |
Platform admin credentials do not work on the tenant portal and vice versa.
Impersonation issues
| Error | Fix |
|---|---|
| Code expired | Codes last 2 minutes — start again |
| Code invalid | Don't refresh page; use link immediately |
| No impersonate button | Need platform.tenants.impersonate permission |
See Impersonation.
Browser checklist
| Step | Action |
|---|---|
| 1 | Clear site cookies and cache |
| 2 | Disable ad blockers temporarily |
| 3 | Try Chrome or Edge latest version |
| 4 | Ensure JavaScript enabled |
| 5 | Check system clock is correct |
Mobile app auth
Mobile uses /auth/mobile/* with refresh token in response body (not cookie). Ensure the app stores and sends the refresh token correctly.
Still stuck?
Provide to support:
- User email (not password)
- Tenant slug
- Exact error message
- Browser and OS version
- Screenshot of network tab (401/403 response)