반응형
오늘은 간단한 주제인데, FastAPI를 이용해서 API Interface 확인을 위해서 Docs, Redoc많이 활성화해서 사용하는데, 실제 보안적으로 생각해보면, 내 인터페이스 전체를 노출하는건 상당한 위험이 될 수 있다.
API 호출할 수 있는 파라메터를 전부 제공해주기 때문에, 다양한 공격 시나리오 및 테스트할 수 있는 루트를 제공하는 것이나 마찬가지가 된다. 따라서 대외적으로 API 서비스를 하지 않는 거라면 API 상세를 없애는게 바람직하다.
비활성화하는 방법은 간단하다.
FastAPI app 생성 시점에 docs_url과 redoc_url 를 생성하지 않도록 하면된다.
app = FastAPI(docs_url=None, redoc_url=None)
그럼 아래와 같이 기존 Docs, Redoc 주소가 접근이 불가능해지고, 우리의 인터페이스들도 자연스럽게 보호가 된다.
반응형
'Python' 카테고리의 다른 글
Python - (pymysql.err.OperationalError) (1241, 'Operand should contain 1 column(s)') INSERT (0) | 2025.01.13 |
---|---|
Python - uv 패키지, 프로젝트 관리자 설치 및 사용법 (0) | 2025.01.08 |
Python - "datetime" 클래스의 "utcnow" 메서드는 더 이상 사용되지 않습니다. (0) | 2024.12.10 |
Python 3.12 - 주요 내용과 예제로 살펴보기 (0) | 2024.11.11 |
Python - 3.12 Datetime 변화( 메서드는 더 이상 사용되지 않습니다.) (0) | 2024.11.11 |