본문으로 건너뛰기

역할→모델 정책 파일

이용 대상

이 문서는 신원 강제 를 켠 배포에서, 역할(role)별로 허용할 모델을 지정하는 정책 파일 스키마를 다룹니다. GENOS_SSO_ROLE_MODEL_POLICY env 로 파일 경로를 지정합니다.

스키마

정책 파일은 JSON 이며, 키는 realm role 이름, 값은 허용 모델의 glob 패턴 배열입니다.

{ "dev": ["qwen/*", "minimaxai/*"], "admin": ["*"] }

역할이 여러 개면 그중 하나라도 매칭되는 모델이면 허용됩니다.

매칭되지 않으면 거부(fail-closed)

  • 요청 모델이 어느 role 의 목록에도 매칭되지 않으면 거부됩니다. 사용자에게 보이는 오류 문구는 모델 접근 정책 문서를 참고하세요.
  • 정책 파일이 파손됐거나 값이 리스트가 아니면 전체 요청이 거부됩니다. 형식 오류를 진단할 때는 이 점을 먼저 확인하세요.

STT 기본 모델을 반드시 포함

음성 기능(STT)은 요청에 모델이 지정되지 않으면 기본값 openai/whisper-large-v3 로 폴백합니다. 음성 기능을 쓸 role 의 목록에 이 모델명을 명시적으로 포함하지 않으면 해당 role 은 음성 기능에서 403 을 받습니다.

대체 모델 목록(models: [...])

클라이언트 요청에 대체 모델 목록(폴백 체인)이 실려 오는 경우, 게이트웨이는 전송 전에 목록의 모든 모델을 정책과 대조합니다. 하나라도 해당 역할에 허용되지 않으면 요청 전체가 403 으로 거부됩니다(부분 허용 체인 거부 = fail-closed). 정책을 작성할 때는 클라이언트가 보낼 수 있는 폴백 체인 전체를 고려해 목록의 모든 모델이 대상 역할에 허용되어 있는지 확인하세요.

게이팅 기준 모델명

정책 매칭 기준은 클라이언트가 원래 요청한 모델명이 아니라, 리다이렉트가 반영된 뒤 실제 upstream 으로 전송되는 모델명입니다.

변경 반영

정책 파일을 수정한 뒤에는 게이트웨이를 재기동해야 반영됩니다. 파일만 바꾸고 재기동하지 않으면 이전 정책이 계속 적용됩니다.

관련 문서