메인 콘텐츠로 건너뛰기
로컬 모델 실행 환경들은 다중 사용자 인증 기능을 염두에 두고 설계되지 않았습니다. Ollama는 아예 API 키 체계가 없으며 개발진 역시 nginx나 Caddy 같은 리버스 프록시를 사용할 것을 권장합니다. vLLM, llama.cpp, LM Studio에서는 최대 1 정적 옵션 키만 제공됩니다. Tokios는 등록된 모든 모델에 대해 각 사용자나 서비스별로 실제 범위가 지정된 sk-tok- 키를 제공하며 리버스 프록시, TLS 인증서, 방화벽 규칙 설정도 전혀 필요하지 않습니다.

Ollama API 키에 관한 간단한 설명

Ollama에는 API 키가 존재하지 않습니다. ollama serve을 실행하면 http://localhost:11434에 위치한 API가 해당 포트에 접근 가능한 누구든지 요청을 받아들입니다. Ollama 자체에는 --api-key 플래그도, Authorization 헤더 검증 기능도, 사용자별 권한 설정 기능도 전혀 없습니다. Ollama 모델 호출 권한을 제어하고 싶다면 2가지 방법이 있습니다:
  1. 리버스 프록시 (nginx, Caddy) — Ollama 앞단에 HTTP 기본 인증이나 토큰 검증 기능을 추가합니다. 프록시 설정, TLS 인증서, 키 교체 작업은 모두 사용자가 직접 처리해야 합니다.
  2. Tokios 커넥터 — Ollama 옆에 커넥터를 설치한 뒤 배포 정보를 등록하고 대시보드에서 범위가 지정된 sk-tok-… 형태의 키를 생성하면 됩니다. 프록시 설정, TLS, 인바운드 포트 설정이 전혀 필요하지 않습니다. 자세한 내용은 아래의 Tokios에서 키를 추가하는 방법을 참고하세요.

각 실행 환경이 현재 제공하는 기능들

이는 결함이 아닙니다. 위 실행 환경들은 모델 제공을 위해 설계된 것이지 다중 사용자 접근 제어를 위해 만들어진 것이 아니기 때문입니다. 바로 이 부분을 Tokios가 보완해주는 것입니다. 각 프로젝트의 공식 문서를 참고하시기 바랍니다: 이들 중 어느 것도 개별 사용자용 API 키 발급, 특정 모델에 대한 접근 제어, 혹은 특정 호출자만 인증을 해제하는 기능을 제공하지 않습니다. 바로 이 부분을 Tokios가 채워줍니다.

Tokios에서 API 키를 추가하는 방법

Tokios는 클라이언트와 로컬 런타임 사이에 위치합니다. 커넥터가 연결되고 모델이 배포 항목으로 등록되면, 모든 요청은 Ollama나 vLLM, llama.cpp, LM Studio에서 발급한 인증 수단이 아닌 Tokios API 키를 통해 인증됩니다.
1

모델 등록하기

Pair a connector and give your model a public name (the deployment) in the Models tab. See Register Model if you haven’t done this yet.
2

Keys 탭에서 API 키 생성하기

Open the Keys tab and click Create key. Give it a display name, and optionally scope it with model patterns — comma-separated globs like gemma*, gpt-4* — so the key only reaches the deployments it needs. Leave it as * to allow all your models.
3

생성된 API 키 복사하기

생성된 키는 sk-tok-... 형태로 단 한 번만 표시됩니다. 즉시 복사하여 비밀번호 관리자나 보안 저장소에 저장하세요. 최대 50개의 활성 키를 보유할 수 있으며, 각 키는 나중에 수정, 교체, 비활성화, 삭제도 가능합니다.
4

요청 인증 처리하기

Send the key as a Bearer token in the Authorization header:
API 키를 생성·교체·무효화하는 전체 절차에 대해서는 API 키 문서를 참고하시기 바랍니다.

각 팀원이나 서비스마다 별도의 키를 지정해주세요

공유된 고정 키나 아예 키가 없으면 호출자 간 구분이 불가능하므로, 여러 사람에게 제공되는 인증 정보와 마찬가지로 Tokios 키도 다음과 같이 관리해야 합니다:
  • 사용자나 환경마다 별도의 키를 부여하세요. 팀원, CI 작업, 서비스마다 각각 다른 키를 발급하세요. 팀원이 퇴사하거나 노트북을 분실했을 때도 Keys 탭에서 해당 키만 비활성화하면 나머지 사용자들은 계속 정상적으로 작업할 수 있습니다.
  • 필요한 모델에만 접근 권한을 부여하세요. 각 키에 허용되는 모델 패턴을 지정할 수 있습니다. gemma*에만 접근 권한이 부여된 키는 동일한 커넥터 뒤에서 실행되는 gpt-4* 배포에도 접근할 수 없습니다.
  • 유출된 키도 다른 테넌트에 영향을 주지 않습니다. 키는 귀하의 계정 및 선택적으로 특정 배포에만 범위가 제한되므로, 유출되더라도 발급된 범위 외 모델에는 접근할 수 없습니다.
특정 범위가 지정된 키를 공유하는 가장 빠른 방법은 Keys 탭의 Share Key 기능을 이용하는 것입니다. 이 기능은 전용 키를 생성한 뒤 일회용 공개 링크를 이메일로 전송해줍니다(키 자체는 이메일에 포함되지 않음). 링크에는 모델 범위, 선택적 패스프레이즈, 만료일이 설정되어 있으며 클릭 한 번으로 즉시 무효화도 가능합니다. 자세한 내용은 이메일로 키 공유하기 문서를 참고하세요.
키가 허용되지 않은 배포를 호출하려 할 경우 Tokios는 HTTP 403 상태 코드와 함께 요청을 거부합니다:
A 403 means the key isn’t allowed to use that model (or the account is suspended); a 404 means the deployment name doesn’t exist. See API endpoints for the full list.
다른 인증 정보와 마찬가지로 키도 교체할 때는 새 키를 생성한 뒤 호출 측에 업데이트 정보를 전달하고, 트래픽이 새 키로 전환된 후에 기존 키를 비활성화하세요.

다음 단계는 무엇일까요?

Ollama 자체에서는 API 키를 생성할 수 없습니다. 인증 기능이 없기 때문입니다. Ollama 앞단에 인증 기능을 추가하려면 Tokios를 이용하세요. Keys 탭에서 키를 생성한 뒤 sk-tok-… 값을 복사하여 API 요청 시 Authorization: Bearer sk-tok-YOUR_KEY 형태로 전송하면 됩니다. Tokios가 인증, 권한 설정, 키 취소 기능을 처리해줍니다.
vLLM은 서버 실행 시 1 정적 --api-key 플래그를 지원합니다(예: vllm serve model --api-key my-key). 이는 모든 사용자에게 공유되는 단일 키이며, vLLM의 보안 가이드라인에서는 이 키만으로는 보안을 보장할 수 없다고 명시되어 있습니다. 개별 사용자용 키가 필요하다면 Tokios를 추가로 사용하세요.
llama.cpp 서버는 선택적으로 --api-key 플래그를 받아들일 수 있지만, 이는 모든 사용자에게 공유되는 단일 키일 뿐 개별 사용자별 권한 설정이 불가능합니다. 반면 Tokios를 이용하면 각 사용자나 서비스마다 고유한 sk-tok-… 키를 부여하고 특정 모델에 대한 접근 권한도 지정할 수 있습니다.

API 키

키 생성, 권한 설정, 갱신, 취소와 관련된 전체 작동 방식입니다.

빠른 시작

커넥터를 연결하고 모델을 등록한 뒤 처음으로 인증된 요청을 전송해보세요.

모델 등록

클라이언트들이 호출할 수 있도록 로컬 모델에 공개적인 이름을 지정해주세요.

Ollama 원격 접근 기능

인바운드 포트를 열지 않고도 다른 기기에서 Ollama 인스턴스에 접속할 수 있습니다.