RBAC
-
FastAPI 시리즈 13화 - 사용자 권한(Role) 관리와 종속성 적용 방법기술과 산업/언어 및 프레임워크 2025. 6. 2. 10:12
FastAPI에서 사용자 역할(Role)을 기반으로 접근 권한을 제어하는 방법을 설명합니다. Depends를 활용해 인증과 권한 검증을 모듈화하고, 실무에서 필요한 보안 구조를 구축합니다.왜 Role 기반 권한 관리가 필요한가?대부분의 서비스는 사용자 유형이 나뉘며 각자의 권한이 다릅니다:사용자 유형 접근 가능한 리소스일반 사용자본인의 정보, 게시글관리자전체 사용자 목록, 설정 변경운영자일부 모니터링 기능이러한 역할(Role) 기반 권한 관리 시스템은 서비스 품질뿐만 아니라 보안을 위해서도 반드시 필요합니다.1. JWT 토큰에 Role 정보 포함def create_access_token(data: dict): payload = data.copy() payload.update({ "..
-
NestJS 마스터 시리즈 16화. 인증 시스템 구현 (2) – AuthGuard와 역할 기반 인가 처리기술과 산업/언어 및 프레임워크 2025. 5. 28. 12:55
"보안은 인증으로 시작하고, 인가로 완성된다"NestJS에서 JWT 인증 이후의 권한 제어를 구현하는 방법을 설명합니다. AuthGuard 설정, 커스텀 데코레이터, RolesGuard 패턴을 기반으로 실무에서 활용되는 인가 전략을 단계별로 소개합니다.인증과 인가의 차이인증(Authentication): 누구인지 확인하는 과정인가(Authorization): 무엇을 할 수 있는지 결정하는 권한 부여 과정이번 회차에서는 인증된 사용자에게 API 사용 권한을 어떻게 제한하고 제어할 것인지를 다룬다.1. JWT 기반 AuthGuard 설정NestJS는 Passport의 JWT 전략을 기반으로 AuthGuard('jwt')를 사용하여 인증 보호 API를 쉽게 구성할 수 있다.import { UseGuards }..