# Autorización y RBAC (Node.js / NestJS) > Control de acceso basado en roles, guards personalizados, decoradores, permisos, propiedad de recursos - 20 preguntas de entrevista - Mid-Level - [Preguntas de entrevista: Node.js / NestJS](https://sharpskill.dev/es/technologies/node-nestjs/preguntas-entrevista.md) ## 1. ¿Qué es RBAC (Role-Based Access Control)? **Respuesta** RBAC es un sistema de control de acceso que otorga permisos a los usuarios según sus roles. En lugar de gestionar los permisos individualmente para cada usuario, RBAC agrupa los permisos en roles (ej: ADMIN, USER, MANAGER) y asigna estos roles a los usuarios. Esto simplifica la gestión de accesos en las aplicaciones, especialmente útil en NestJS con guards personalizados y decoradores de metadatos. ## 2. ¿Cuál es la diferencia entre autenticación y autorización? **Respuesta** La autenticación verifica la identidad del usuario (¿quién eres?), generalmente mediante login/contraseña o un token JWT. La autorización verifica los permisos del usuario (¿qué puedes hacer?), controlando el acceso a los recursos según los roles o permisos. En NestJS, la autenticación suele usar un JwtAuthGuard, mientras que la autorización usa guards personalizados como RolesGuard para verificar los derechos de acceso. ## 3. ¿Qué decorador NestJS permite crear un guard personalizado? **Respuesta** Para crear un guard personalizado en NestJS, hay que crear una clase decorada con @Injectable() que implemente la interfaz CanActivate. Esta interfaz exige el método canActivate(context: ExecutionContext) que retorna un boolean o una Promise. El guard puede luego aplicarse a las rutas con @UseGuards(). Esta arquitectura permite inyectar dependencias (servicios, repositorios) en el guard para realizar validaciones complejas. ## 17 preguntas más disponibles - En RBAC, ¿qué representa un 'permiso'? - ¿Cómo asociar un guard a un controller en NestJS? Regístrate gratis: https://sharpskill.dev/es/login ## Otros temas de entrevista Node.js / NestJS - [Fundamentos de Node.js](https://sharpskill.dev/es/technologies/node-nestjs/preguntas-entrevista/nodejs-fundamentals.md): 20 preguntas, Junior - [APIs Core de Node.js](https://sharpskill.dev/es/technologies/node-nestjs/preguntas-entrevista/nodejs-core-apis.md): 25 preguntas, Junior - [Programación asíncrona](https://sharpskill.dev/es/technologies/node-nestjs/preguntas-entrevista/asynchronous-programming.md): 25 preguntas, Junior - [Fundamentos de Express.js](https://sharpskill.dev/es/technologies/node-nestjs/preguntas-entrevista/express-basics.md): 20 preguntas, Junior - [Fundamentos de NestJS](https://sharpskill.dev/es/technologies/node-nestjs/preguntas-entrevista/nestjs-fundamentals.md): 23 preguntas, Junior - [Diseño de API REST](https://sharpskill.dev/es/technologies/node-nestjs/preguntas-entrevista/rest-api-design.md): 20 preguntas, Junior - [Validación y DTO](https://sharpskill.dev/es/technologies/node-nestjs/preguntas-entrevista/validation-dto.md): 20 preguntas, Junior - [Documentación de API y contratos](https://sharpskill.dev/es/technologies/node-nestjs/preguntas-entrevista/api-documentation.md): 20 preguntas, Junior - [Manejo de errores](https://sharpskill.dev/es/technologies/node-nestjs/preguntas-entrevista/error-handling.md): 20 preguntas, Junior - [Pruebas unitarias](https://sharpskill.dev/es/technologies/node-nestjs/preguntas-entrevista/testing-unit.md): 20 preguntas, Junior - [Planificación de tareas](https://sharpskill.dev/es/technologies/node-nestjs/preguntas-entrevista/scheduling-cron.md): 15 preguntas, Junior - [Módulos y DI de NestJS](https://sharpskill.dev/es/technologies/node-nestjs/preguntas-entrevista/nestjs-modules-di.md): 20 preguntas, Mid-Level - [Configuración y gestión de entornos](https://sharpskill.dev/es/technologies/node-nestjs/preguntas-entrevista/configuration-environment.md): 20 preguntas, Mid-Level - [Autenticación JWT](https://sharpskill.dev/es/technologies/node-nestjs/preguntas-entrevista/authentication-jwt.md): 25 preguntas, Mid-Level - [Base de datos con TypeORM](https://sharpskill.dev/es/technologies/node-nestjs/preguntas-entrevista/database-typeorm.md): 30 preguntas, Mid-Level - [Prisma ORM](https://sharpskill.dev/es/technologies/node-nestjs/preguntas-entrevista/prisma-orm.md): 25 preguntas, Mid-Level - [Middleware e Interceptors](https://sharpskill.dev/es/technologies/node-nestjs/preguntas-entrevista/middleware-interceptors.md): 20 preguntas, Mid-Level - [Subida de archivos](https://sharpskill.dev/es/technologies/node-nestjs/preguntas-entrevista/file-upload.md): 15 preguntas, Mid-Level - [WebSockets](https://sharpskill.dev/es/technologies/node-nestjs/preguntas-entrevista/websockets.md): 20 preguntas, Mid-Level - [GraphQL con NestJS](https://sharpskill.dev/es/technologies/node-nestjs/preguntas-entrevista/graphql-basics.md): 25 preguntas, Mid-Level - [Pruebas end-to-end](https://sharpskill.dev/es/technologies/node-nestjs/preguntas-entrevista/testing-e2e.md): 20 preguntas, Mid-Level - [Caché con Redis](https://sharpskill.dev/es/technologies/node-nestjs/preguntas-entrevista/caching-redis.md): 20 preguntas, Mid-Level - [Colas con Bull](https://sharpskill.dev/es/technologies/node-nestjs/preguntas-entrevista/queues-bull.md): 20 preguntas, Mid-Level - [DevOps, Logging y CI/CD](https://sharpskill.dev/es/technologies/node-nestjs/preguntas-entrevista/logging-monitoring.md): 25 preguntas, Mid-Level - [Docker y Containerización](https://sharpskill.dev/es/technologies/node-nestjs/preguntas-entrevista/docker-containerization.md): 25 preguntas, Mid-Level - [Microservices](https://sharpskill.dev/es/technologies/node-nestjs/preguntas-entrevista/microservices.md): 30 preguntas, Senior - [Mejores prácticas de seguridad](https://sharpskill.dev/es/technologies/node-nestjs/preguntas-entrevista/security-best-practices.md): 25 preguntas, Senior - [Rendimiento y despliegue en la nube](https://sharpskill.dev/es/technologies/node-nestjs/preguntas-entrevista/performance-optimization.md): 30 preguntas, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/es/technologies/node-nestjs/preguntas-entrevista/authorization-rbac