feat(security): 관리자 API에 API 키 인증 적용

- 민감한 API(모델 재시작, 캐시 정리)를 보호하기 위해 API 키 기반 인증 추가
-  모듈을 생성하여 API 키 검증 로직 중앙화
- 에 API 키를 설정하여 관리 용이성 확보
- FastAPI의 를 사용하여 엔드포인트에 보안 규칙 적용
- CODING_CONVENTIONS.md에 API 키 사용법 및 cURL 예제 문서화
This commit is contained in:
hyungi
2025-07-25 07:02:39 +09:00
parent 867c7f4bca
commit 9093611c96
5 changed files with 98 additions and 5 deletions

View File

@@ -67,6 +67,20 @@
- **서버 포트**: `8080` (FastAPI 웹 서비스)
- **대시보드 접속**: `http://192.168.1.122:8080/dashboard`
### 6.1. API 키 인증
관리자용 API(`/api/restart-models`, `/api/clear-cache` 등)를 호출하려면 HTTP 요청 헤더에 API 키를 포함해야 합니다.
- **헤더 이름**: `X-API-KEY`
- **API 키 값**: `config/settings.json` 파일의 `security.api_key` 값을 사용합니다.
**cURL 예시:**
```bash
curl -X POST http://192.168.1.122:20080/api/restart-models \
-H "X-API-KEY: nllb-secret-key-!@#$%"
```
## 7. 서버 운영 및 배포 (macOS)
이 서버는 24/7 무중단 운영을 위해 macOS의 `launchd` 서비스를 통해 관리됩니다. 이를 통해 시스템 재부팅 시 자동 시작 및 예기치 않은 종료 시 자동 재시작이 보장됩니다.