API 키 관리
사용자가 DO 2.0에 프로그래밍 방식으로 접근할 수 있도록 API 키 설정을 구성하세요.
참고: 글로벌 설정 개요
API 키 설정 접근
- 사용자 이름 클릭 (오른쪽 상단)
- 글로벌 설정으로 이동
- API 키 관리로 스크롤
API 키 활성화
1단계: 기능 활성화
ENABLE_API_KEY를 켜기로 토글.
활성화되면:
- 사용자가 개인 API 키를 생성할 수 있음
- 키는 API 요청을 위한 Bearer 토큰으로 사용 가능
- 키는 만료되지 않음 (JWT의 장기 대안)
2단계: 사용자가 키 생성
사용자는 이제:
- 글로벌 설정 → API 키로 이동
- 만들기를 클릭하여 키 생성
- 키 복사 (한 번만 표시됨)
- API 요청에서 사용:
Authorization: Bearer {api-key}
API 키 제한 (선택 사항)
API 키 사용을 특정 엔드포인트로 제한:
1단계: 제한 활성화
ENABLE_API_KEY_ENDPOINT_RESTRICTIONS를 켜기로 토글.
2단계: 허용된 엔드포인트 추가
쉼표로 구분된 허용 엔드포인트 목록 입력:
/api/v1/chats,/api/v1/chats/*,/api/chat/completions
목록에 없는 엔드포인트는 API 키 요청에 대해 차단됩니다.
3단계: 저장
API 키는 이제 허용된 엔드포인트만 호출할 수 있습니다.
구성 옵션
| 설정 | 목적 |
|---|---|
| ENABLE_API_KEY | 사용자가 키를 생성할 수 있도록 허용 |
| ENABLE_API_KEY_ENDPOINT_RESTRICTIONS | 특정 엔드포인트로 키 제한 |
| API_KEY_ALLOWED_ENDPOINTS | 쉼표로 구분된 허용 목록 |
인증 설정
사용자가 가입하고 시스템에 접근하는 방법 구성:
ENABLE_SIGNUP
새 사용자 등록 허용:
- 켜기 — 사용자가 스스로 가입 가능
- 끄기 — 관리자만 사용자 만들기 가능
DEFAULT_USER_ROLE
새 사용자에게 할당되는 역할:
- pending — 관리자 승인 필요 (기본값)
- user — 자동 승인 (표준 접근)
- admin — 관리자 접근으로 자동 승인 (권장하지 않음)
JWT 토큰 만료
JWT 토큰 유효 기간 설정:
예시:
- "7d" — 7일 (기본값)
- "24h" — 24시간
- "30m" — 30분
- "-1" — 만료 없음
만료된 토큰은 재인증이 필요합니다.
모범 사례
API 키
- ✅ 정기적으로 교체 — 이전 키 무효화
- ✅ 엔드포인트 제한 — 필요한 것만 허용
- ✅ 자동화에 사용 — 대화형 애플리케이션이 아닌
- ❌ 키 공유하지 않기 — 각 사용자는 자신의 키를 가져야 함
- ❌ 코드에 저장하지 않기 — 환경 변수 사용
보안
- ✅ 토큰 안전하게 보관 — 로그나 코드에 노출하지 않기
- ✅ 사용 모니터링 — 어떤 키가 무엇을 호출하는지 추적
- ✅ 의심스러운 키 취소 — 손상된 경우 삭제
- ✅ HTTPS 사용 — 항상 암호화된 연결로 전송
구성
- ✅ 제한 활성화 — API 범위 제한
- ✅ JWT 만료 요구 — 정기적으로 재인증 강제
- ✅ 활성화된 기능 검토 — 필요한 것만 허용
- ❌ "-1" 만료 사용하지 않기 — 자동화에 필요한 경우가 아니면
API 키 취소
사용자는 자신의 키를 취소할 수 있습니다:
- 글로벌 설정 → API 키로 이동
- 삭제 클릭
- 키가 즉시 무효화됨
관리자는 사용자 키를 직접 취소할 수 없습니다 (사용자가 직접 취소해야 함).
더 알아보기: