Node.js / NestJS

Autorisatie en RBAC

Op rollen gebaseerde toegangscontrole, aangepaste guards, decorators, permissies, eigenaarschap van resources

20 gespreksvragen·
Mid-Level
1

Wat is RBAC (Role-Based Access Control)?

Antwoord

RBAC is een toegangscontrolesysteem dat gebruikers permissies verleent op basis van hun rollen. In plaats van permissies voor elke gebruiker afzonderlijk te beheren, groepeert RBAC permissies in rollen (bijv. ADMIN, USER, MANAGER) en wijst deze rollen toe aan gebruikers. Dit vereenvoudigt het beheer van toegang in applicaties en is bijzonder nuttig in NestJS met aangepaste guards en metadata-decorators.

2

Wat is het verschil tussen authenticatie en autorisatie?

Antwoord

Authenticatie verifieert de identiteit van de gebruiker (wie ben je?), meestal via login/wachtwoord of een JWT-token. Autorisatie verifieert de permissies van de gebruiker (wat mag je doen?) en regelt de toegang tot resources op basis van rollen of permissies. In NestJS gebruikt authenticatie vaak een JwtAuthGuard, terwijl autorisatie aangepaste guards zoals RolesGuard gebruikt om toegangsrechten te controleren.

3

Welke NestJS-decorator maakt het mogelijk een aangepaste guard te maken?

Antwoord

Om een aangepaste guard in NestJS te maken, maak je een klasse die met @Injectable() is gedecoreerd en de CanActivate-interface implementeert. Deze interface vereist de methode canActivate(context: ExecutionContext) die een boolean of Promise retourneert. De guard kan vervolgens met @UseGuards() op routes worden toegepast. Deze architectuur maakt het mogelijk afhankelijkheden (services, repositories) in de guard te injecteren om complexe validaties uit te voeren.

4

Wat vertegenwoordigt een 'permissie' in RBAC?

5

Hoe koppel je een guard aan een controller in NestJS?

+17 gespreksvragen

Beheers Node.js / NestJS voor je volgende gesprek

Krijg toegang tot alle vragen, flashcards, technische tests, code review-oefeningen en gespreksimulatoren.

Begin gratis