function AuthPlugin
AuthPlugin(options: AuthPluginOptions): IPlugin

AuthPlugin factory.

Creates a plugin that registers:

  • IJwtService under CAPABILITIES.JWT
  • IAuthService under CAPABILITIES.AUTH
  • IAuthorizationService under CAPABILITIES.AUTHORIZATION when rbac is configured

Examples

Example 1

app.register(AuthPlugin({
  jwt: { secret: process.env.JWT_SECRET! },
  rbac: {
    roles: {
      admin: { permissions: ['*'], inherits: ['user'] },
      user: { permissions: ['users:read'] },
    },
  },
}));
// Register the global middleware at the priority ARCHITECTURE.md §10
// reserves for it; a bare add() takes the kernel default of 500.
app.middleware.add(authMiddleware(), { priority: 300 });

Parameters

Plugin configuration options

Return Type

IPlugin

A configured IPlugin instance

Usage

import { AuthPlugin } from "auth-plugin/src/index.ts";