Operator / Admin — Confidential

LLM Gateway — 관리자 온보딩

🔒 이 문서는 배포한 관리자 1명만 열람하세요. LiteLLM 마스터 키·Langfuse 관리자 비밀번호 등 전체 관리자 자격이 평문으로 포함됩니다. 개발자에게 공유하거나 git에 커밋하지 마세요. 개발자에게는 developer-setup.html(시크릿 없음)을 배포하세요.

1 배포 요약 (엔드포인트 · 신원)

항목값
게이트웨이 URL (개발자 base URL)https://llmgw.example.com
LiteLLM Admin UIhttps://llmgw.example.com/ui/
Token Servicehttps://abc123.execute-api.us-east-1.amazonaws.com/v1/auth/token
CloudWatch 사용량 대시보드https://us-east-1.console.aws.amazon.com/cloudwatch/home?region=us-east-1#dashboards:name=llmgw-dev-dashboard
Langfusehttps://langfuse.example.com
리전 / authMode / certModeus-east-1 / cognito-native / acm

신원 (cognito-native)

Cognito User Pool IDus-east-1_ABC123XYZ
App Client ID1a2b3c4d5e6f7g8h9i0j
Hosted UI 도메인llmgw-auth.auth.us-east-1.amazoncognito.com
Issuerhttps://cognito-idp.us-east-1.amazonaws.com/us-east-1_ABC123XYZ
Team Group Prefixllmgw- (이 접두어 그룹 = LiteLLM 팀)

신원 (org-sso)

SSO Start URLhttps://d-1234567890.awsapps.com/start
Account ID111122223333
Permission Set / RoleLlmGatewayUser

2 시크릿 (실제값 — 취급 주의)

시크릿값보관 위치 (Secrets Manager)
LiteLLM 마스터 키
(Admin UI 로그인 = 전체 관리자)
sk-Xy9EXAMPLEmasterKEYdoNOTsharellmgw-litellm-admin-key
Langfuse 관리자admin@example.com / Adm1n-EXAMPLE-pwllmgw-langfuse-admin

빠른 관리자 테스트(로그인 생략): 마스터 키를 직접 Bearer로 사용해 게이트웨이를 확인할 수 있습니다.

curl -s https://llmgw.example.com/v1/models -H "Authorization: Bearer sk-Xy9EXAMPLEmasterKEYdoNOTshare"

3 비밀번호 / 키 변경 방법

LiteLLM 마스터 키 회전

마스터 키는 Secrets Manager에 있고 컨테이너 시작 시 로드됩니다. 값 갱신 후 ECS 강제 재배포로 반영합니다.

aws secretsmanager put-secret-value \
  --secret-id llmgw-litellm-admin-key --secret-string 'sk-새로운마스터키'
aws ecs update-service --cluster llmgw-litellm --service litellm --force-new-deployment
개발자 가상 키는 별도 DB 레코드라 마스터 키 회전에 영향받지 않습니다. Admin UI 재로그인만 새 키로 하면 됩니다.

Langfuse 관리자 비밀번호

Langfuse UI 로그인 → Settings → Account 에서 변경이 가장 간단합니다. (초기값은 위 Secrets Manager 시드)

Cognito 사용자 비밀번호

# 관리자 강제 재설정
aws cognito-idp admin-set-user-password \
  --user-pool-id us-east-1_ABC123XYZ --username dev@example.com --password '새비밀번호' --permanent
# 사용자 셀프 재설정: Hosted UI의 "Forgot password"

4 개발자 온보딩 (관리자 작업)

cognito-native — 사용자 생성 + 팀 그룹 배정

aws cognito-idp admin-create-user --user-pool-id us-east-1_ABC123XYZ \
  --username dev@example.com --user-attributes Name=email,Value=dev@example.com \
  --desired-delivery-mediums EMAIL
aws cognito-idp admin-add-user-to-group --user-pool-id us-east-1_ABC123XYZ \
  --username dev@example.com --group-name llmgw-team1   # 그룹명 = LiteLLM 팀

org-sso — permission set 할당

IdC에서 해당 permission set을 사용자/그룹에 할당합니다. 신규 팀 = 신규 permission set + LiteLLM Admin UI 팀 설정(코드 재배포 불필요).

그다음 개발자에게 developer-setup.html 을 전달하면 끝입니다.

5 오프보딩 (접근 회수)

cognito-native

# 비활성(복구 가능) / 삭제 / 팀에서만 제거 중 택1
aws cognito-idp admin-disable-user --user-pool-id us-east-1_ABC123XYZ --username dev@example.com
aws cognito-idp admin-delete-user  --user-pool-id us-east-1_ABC123XYZ --username dev@example.com
aws cognito-idp admin-remove-user-from-group --user-pool-id us-east-1_ABC123XYZ --username dev@example.com --group-name llmgw-team1

org-sso

IdC에서 permission set 할당을 해제합니다.

⏱ 즉시 차단하려면 LiteLLM Admin UI에서 해당 가상 키를 revoke 하세요. 키는 DynamoDB 캐시에 TTL 동안 남아, revoke 없이는 로그인 차단 후에도 기존 키가 TTL 만료까지 동작할 수 있습니다.

6 운영 참고

gen-onboarding.py 가 outputs.json + 관리자 자격증명으로 채운 문서입니다. 취급 주의.