Depends
-
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({ "..
-
FastAPI 시리즈 8화 - 의존성 주입 시스템(Depends) 실전 활용법기술과 산업/언어 및 프레임워크 2025. 5. 9. 14:40
FastAPI의 Depends를 활용한 의존성 주입 시스템을 설명합니다. 공통 로직 재사용, 인증 처리, DB 연결 관리 등 실전 API 개발에서의 활용 패턴을 예제로 정리합니다.왜 의존성 주입(Dependency Injection)이 중요한가?전통적인 함수 호출 방식에서는 모든 기능을 하나의 엔드포인트 함수에서 직접 처리합니다.하지만 실제 서비스에서는 다음과 같은 공통 로직이 필요합니다:로그인 인증DB 커넥션 핸들링공통 파라미터 처리권한 체크, API 사용량 제한이 로직들을 매번 복사해서 쓰는 것은 유지보수와 테스트 모두에게 지옥입니다.FastAPI의 Depends는 이런 문제를 한 줄로 해결합니다.1. Depends 기본 구조from fastapi import Depends, FastAPIapp = ..