auth0-angular

द्वारा auth0

एंगुलर एप्लिकेशन में रूट गार्ड और HTTP इंटरसेप्टर के साथ प्रमाणीकरण जोड़ते समय उपयोग करें - SPA के लिए @auth0/auth0-angular SDK को एकीकृत करता है

npx skills add https://github.com/auth0/agent-skills --skill auth0-angular

Auth0 Angular Integration

Add authentication to Angular applications using @auth0/auth0-angular.


Prerequisites

  • Angular 13+ application
  • Auth0 account and application configured
  • If you don't have Auth0 set up yet, use the auth0-quickstart skill first

When NOT to Use

  • AngularJS (1.x) - This SDK requires Angular 13+, use legacy solutions for AngularJS
  • Mobile applications - Use auth0-react-native for React Native or native SDKs for Ionic
  • Backend APIs - Use JWT validation middleware for your server language

Quick Start Workflow

1. Install SDK

npm install @auth0/auth0-angular

2. Configure Environment

For automated setup with Auth0 CLI, see Setup Guide for complete scripts.

For manual setup:

Update src/environments/environment.ts:

export const environment = {
  production: false,
  auth0: {
    domain: 'your-tenant.auth0.com',
    clientId: 'your-client-id',
    authorizationParams: {
      redirect_uri: window.location.origin
    }
  }
};

3. Configure Auth Module

For standalone components (Angular 14+):

Update src/app/app.config.ts:

import { ApplicationConfig } from '@angular/core';
import { provideAuth0 } from '@auth0/auth0-angular';
import { environment } from '../environments/environment';

export const appConfig: ApplicationConfig = {
  providers: [
    provideAuth0({
      domain: environment.auth0.domain,
      clientId: environment.auth0.clientId,
      authorizationParams: environment.auth0.authorizationParams
    })
  ]
};

For NgModule-based apps:

Update src/app/app.module.ts:

import { AuthModule } from '@auth0/auth0-angular';
import { environment } from '../environments/environment';

@NgModule({
  imports: [
    AuthModule.forRoot({
      domain: environment.auth0.domain,
      clientId: environment.auth0.clientId,
      authorizationParams: environment.auth0.authorizationParams
    })
  ]
})
export class AppModule {}

4. Add Authentication UI

Update src/app/app.component.ts:

import { Component } from '@angular/core';
import { AuthService } from '@auth0/auth0-angular';

@Component({
  selector: 'app-root',
  template: `
    <div *ngIf="auth.isLoading$ | async; else loaded">
      <p>Loading...</p>
    </div>

    <ng-template #loaded>
      <ng-container *ngIf="auth.isAuthenticated$ | async; else loggedOut">
        <div *ngIf="auth.user$ | async as user">
          <img [src]="user.picture" [alt]="user.name" />
          <h2>Welcome, {{ user.name }}!</h2>
          <button (click)="logout()">Logout</button>
        </div>
      </ng-container>

      <ng-template #loggedOut">
        <button (click)="login()">Login</button>
      </ng-template>
    </ng-template>
  `
})
export class AppComponent {
  constructor(public auth: AuthService) {}

  login(): void {
    this.auth.loginWithRedirect();
  }

  logout(): void {
    this.auth.logout({ logoutParams: { returnTo: window.location.origin } });
  }
}

5. Test Authentication

Start your dev server and test the login flow:

ng serve

Detailed Documentation

  • Setup Guide - Automated setup scripts (Bash/PowerShell), CLI commands, manual configuration
  • Integration Guide - Protected routes with guards, HTTP interceptors, error handling
  • API Reference - Complete SDK API, configuration options, services reference, testing strategies

Common Mistakes

MistakeFix
Forgot to add redirect URI in Auth0 DashboardAdd your application URL (e.g., http://localhost:4200, https://app.example.com) to Allowed Callback URLs in Auth0 Dashboard
Not configuring AuthModule properlyMust call AuthModule.forRoot() in NgModule or provideAuth0() in standalone config
Accessing auth before initializationUse isLoading$ observable to wait for SDK initialization
Storing tokens manuallyNever manually store tokens - SDK handles secure storage automatically
No token sent to APIUse either authHttpInterceptorFn for automatic token attachment, or getAccessTokenSilently() for manual control — see Integration Guide
Route guard not protecting routesApply AuthGuard (or authGuardFn) to protected routes in routing config

Related Skills

  • auth0-quickstart - Basic Auth0 setup
  • auth0-migration - Migrate from another auth provider
  • auth0-mfa - Add Multi-Factor Authentication
  • auth0-cli - Manage Auth0 resources from the terminal

Quick Reference

Core Services:

  • AuthService - Main authentication service
  • isAuthenticated$ - Observable check if user is logged in
  • user$ - Observable user profile information
  • loginWithRedirect() - Initiate login
  • logout() - Log out user
  • getAccessTokenSilently() - Get access token manually (alternative to HTTP interceptor)

Common Use Cases:


References

auth0 की और Skills

acul-screen-generator
auth0
पूर्ण, ब्रांडेड Auth0 Advanced Custom Universal Login (ACUL) स्क्रीन कार्यान्वयन उत्पन्न करता है, जो React या Vanilla JS SDK का उपयोग करता है। जब कोई डेवलपर पूछता है तो उपयोग करें…
official
auth0-android
auth0
Android अनुप्रयोगों (Kotlin/Java) में Web Auth, बायोमेट्रिक-संरक्षित क्रेडेंशियल्स और MFA के साथ प्रमाणीकरण जोड़ते समय उपयोग करें - एकीकृत करता है…
official
auth0-aspnetcore-api
auth0
ASP.NET Core Web API एंडपॉइंट्स को JWT Bearer टोकन सत्यापन, स्कोप/अनुमति जांच, या स्टेटलेस प्रमाणीकरण से सुरक्षित करते समय उपयोग करें - एकीकृत करता है…
official
auth0-cli
auth0
Auth0 CLI कमांड्स के लिए संदर्भ — ऐप्स, एपीआई, उपयोगकर्ता, भूमिकाएँ, संगठन, क्रियाएँ, लॉग, कस्टम डोमेन, यूनिवर्सल-लॉगिन, टेराफॉर्म, रॉ एपीआई मोड, और --json…
official
auth0-expo
auth0
एक्सपो (React Native) मोबाइल ऐप्स में प्रमाणीकरण जोड़ते समय उपयोग करें — लॉगिन, लॉगआउट, उपयोगकर्ता सत्र, संरक्षित रूट, बायोमेट्रिक्स, या टोकन प्रबंधन। एकीकृत करता है…
official
auth0-express
auth0
एक्सप्रेस.जेएस वेब एप्लिकेशन में प्रमाणीकरण (लॉगिन, लॉगआउट, संरक्षित रूट) जोड़ते समय उपयोग करें - सत्र-आधारित प्रमाणीकरण के लिए express-openid-connect को एकीकृत करता है।
official
auth0-fastapi-api
auth0
जब FastAPI API एंडपॉइंट्स को JWT Bearer टोकन सत्यापन, स्कोप/अनुमति जांच, या स्टेटलेस प्रमाणीकरण से सुरक्षित करना हो - REST के लिए auth0-fastapi-api को एकीकृत करता है…
official
auth0-fastify
auth0
फास्टिफाई वेब एप्लिकेशनों में प्रमाणीकरण (लॉगिन, लॉगआउट, संरक्षित रूट) जोड़ते समय उपयोग करें - सत्र-आधारित प्रमाणीकरण के लिए @auth0/auth0-fastify को एकीकृत करता है। के लिए…
official