1.4.0 • Published 4 years ago
@abc2d/nestjs-auth v1.4.0
Installation
NPM
npm install @abc2d/nestjs-auth
Required Envs
- AUTH0_AUDIENCE
- AUTH0_ISSUER
- AUTH0_JWKS_URI
- AUTH0_JWT_PAYLOAD_DOMAIN
Getting Started
Let's register the auth module in app.module.ts
.
import { AuthModule } from "@abc2d/nestjs-auth";
@Module({
imports: [AuthModule]
})
export class AppModule {}
In controllers:
- the
@Permissions
decorator inject into context allowed permissions - the
@User
param decorator can be used to inject a per-request info about user.
import { Controller, Get, UseGuards } from "@nestjs/common";
import {
AuthGuard,
Permissions,
PermissionsGuard,
User,
UserInterface
} from "@abc2d/nestjs-auth";
@Controller()
export class AppController {
public constructor(private readonly appService: AppService) {}
@Get("me")
@UseGuards(AuthGuard("jwt"), PermissionsGuard)
@Permissions("entity:read", "entity:create")
public me(@User() user): UserInterface {
return user;
}
}