Home
Softono

Nuxt Oidc Auth

Open source MIT TypeScript
159
Stars
47
Forks
39
Issues
0
Watchers
4 months
Last Commit

 About Nuxt Oidc Auth

OIDC (OpenID connect) focused auth module for Nuxt

Platforms

Web Self-hosted Cloud

Languages

TypeScript

Need Help Installing Nuxt Oidc Auth?

We provide expert installation service for this software. Our team will install, configure, and secure Nuxt Oidc Auth on your server. plans start at just $30.

Nuxt Oidc Auth

View on GitHub

nuxt-oidc-auth-social-card

Nuxt OIDC Auth

npm version npm downloads License Nuxt

Welcome to Nuxt OIDC Auth, a Nuxt module focusing on native OIDC (OpenID Connect) based authentication for Nuxt with a high level of customizability and security for SSR applications. This module doesn't use any external dependencies outside of the unjs ecosystem except for token validation (the well known and tested jose library for JWT interactions).

πŸ‘‰ Documentation

Features

↩️  Automatic session and token renewal
πŸ’Ύ  Encrypted server side refresh/access token storage powered by Nitro storage
πŸ”‘  Token validation
πŸ”’  Secured & sealed cookies sessions
βš™οΈ  Presets for popular OIDC providers
πŸ“€  Global middleware with automatic redirection to default provider or a custom login page (see playground)
πŸ‘€  useOidcAuth composable for getting the user information, logging in and out, refetching the current session and triggering a token refresh
πŸ—‚οΈ  Multi provider support with auto registered routes (/auth/<provider>/login, /auth/<provider>/logout, /auth/<provider>/callback)
πŸ“  Generic spec OpenID compatible connect provider with fully configurable OIDC flow (state, nonce, PKCE, token request, ...)
πŸ•™  Session expiration check

Installation

Add nuxt-oidc-auth dependency to your project

With nuxi

pnpm dlx nuxi@latest module add nuxt-oidc-auth

or manually

pnpm add nuxt-oidc-auth

Add nuxt-oidc-auth to the modules section of nuxt.config.ts

export default defineNuxtConfig({
  modules: ['nuxt-oidc-auth'],
})

⚠️ Disclaimer

This module is still in development, feedback and contributions are welcome! Use at your own risk.