Integrate Auth0 authentication into your Aurelia 2 application using the modern Auth0 SPA SDK.
Prerequisites
Auth0 account with configured application
Install the Auth0 SPA SDK:
npminstall@auth0/auth0-spa-js
Environment Configuration
Store Auth0 configuration securely:
// src/environment.tsexportconstenvironment={auth0:{domain:process.env.AUTH0_DOMAIN!,clientId:process.env.AUTH0_CLIENT_ID!,redirectUri:window.location.origin, // Additional scopes for your applicationscope:'openid profile email'}};
Auth Service
Application Setup
Register the service and initialize Auth0:
Authentication Component
Router Integration
Protect routes using Auth0:
API Calls with Tokens
Use access tokens for API requests:
Best Practices
Store Auth0 credentials as environment variables
Use refresh tokens for better security in browsers that block third-party cookies
Handle token expiration gracefully
Implement proper error handling for authentication failures
Test authentication flows in different browsers
This integration follows Auth0's latest SDK patterns and Aurelia 2 best practices for dependency injection and component lifecycle management.