@dkanest/privileges
v1.0.1
Published
The library for role Access Privileges By Roles In Nestjs
Readme
Description
The Library NestJS Role Privileges Decorator
Controller
import { Privileges } from '@dkanest/privileges';
@Controller()
export class AppController {
constructor(private readonly appService: AppService) {}
@Get()
@Privileges()
getHello(): string {
return this.appService.getHello();
}
}
Service Binding
import { Injectable, Logger, OnModuleInit } from '@nestjs/common';
import { AccessPrivileges } from '@dkanest/privileges';
@Injectable()
export class AppService {
private readonly logger: Logger = new Logger(this.constructor.name);
/**
* @param {string} scope adalah url yang berupa format (.) dot
* @param {string} name nama method yang di controller
* @param { string } method method yang digunakan di controller @Get(), @Post() etc
* @return { boolean } jika false maka akan mengembalikan unauthorization, jika true maka di izinkan
* **/
@AccessPrivileges<AppService>(({ scope, method, name }, ctx) => {
return scope === 'halo.apa' && name === 'getHello';
})
getHello(): string {
return 'Hello World!';
}
}