Auth0
Configure Auth0 for SSO authentication with Parseable
Configure Auth0 as an identity provider for Parseable using OpenID Connect.
Overview
Integrate Auth0 with Parseable to:
- Flexible Authentication - Multiple identity providers
- Social Login - Google, GitHub, and more
- Enterprise Connections - SAML, LDAP, AD
- Passwordless - Email and SMS authentication
Prerequisites
- Auth0 account
- Auth0 tenant
- Parseable instance with OIDC support
Auth0 Configuration
Create Application
- Log in to Auth0 Dashboard
- Go to Applications → Applications
- Click Create Application
- Configure:
- Name: Parseable
- Type: Regular Web Applications
- Click Create
Configure Application
- Go to Settings tab
- Configure:
- Allowed Callback URLs:
https://your-parseable.com/callback - Allowed Logout URLs:
https://your-parseable.com - Allowed Web Origins:
https://your-parseable.com
- Allowed Callback URLs:
- Click Save Changes
Get Credentials
From the Settings tab, copy:
- Domain (e.g.,
your-tenant.auth0.com) - Client ID
- Client Secret
Parseable Configuration
Environment Variables
P_OIDC_CLIENT_ID=your-client-id
P_OIDC_CLIENT_SECRET=your-client-secret
P_OIDC_ISSUER=https://your-tenant.auth0.com/
P_OIDC_REDIRECT_URI=https://your-parseable.com/callbackDocker Compose
version: '3.8'
services:
parseable:
image: parseable/parseable:latest
environment:
- P_OIDC_CLIENT_ID=${AUTH0_CLIENT_ID}
- P_OIDC_CLIENT_SECRET=${AUTH0_CLIENT_SECRET}
- P_OIDC_ISSUER=https://your-tenant.auth0.com/
- P_OIDC_REDIRECT_URI=https://your-parseable.com/callbackOIDC Endpoints
Auth0 OIDC endpoints:
| Endpoint | URL |
|---|---|
| Issuer | https://{tenant}.auth0.com/ |
| Authorization | https://{tenant}.auth0.com/authorize |
| Token | https://{tenant}.auth0.com/oauth/token |
| UserInfo | https://{tenant}.auth0.com/userinfo |
| JWKS | https://{tenant}.auth0.com/.well-known/jwks.json |
Custom Claims with Rules
Add custom claims using Auth0 Rules:
function addRolesToToken(user, context, callback) {
const namespace = 'https://parseable.com/';
const assignedRoles = (context.authorization || {}).roles || [];
context.idToken[namespace + 'roles'] = assignedRoles;
context.accessToken[namespace + 'roles'] = assignedRoles;
callback(null, user, context);
}Social Connections
Enable social login:
- Go to Authentication → Social
- Enable desired providers (Google, GitHub, etc.)
- Configure each provider with API keys
Best Practices
- Use Rules - Add custom claims for authorization
- Enable MFA - Configure multi-factor authentication
- Brute Force Protection - Enable attack protection
- Audit Logs - Monitor authentication events
Troubleshooting
Callback URL Mismatch
- Verify callback URL matches exactly (including trailing slash)
- Check for http vs https
- Verify domain is correct
Token Issues
- Check client secret is correct
- Verify issuer URL format
- Check Auth0 logs for errors
Next Steps
- Configure OAuth for other providers
- Set up RBAC in Parseable
- Review security best practices
Was this page helpful?