Passer au contenu principal
Les environnements d’exécution de modèles locaux ne sont pas conçus pour l’authentification multi-utilisateurs. Ollama ne dispose absolument d’aucun mécanisme de gestion des clés API ; ses développeurs recommandent d’utiliser un proxy inverse tel que nginx ou Caddy. vLLM, llama.cpp et LM Studio proposent au maximum une 1 clé statique facultative. Tokios attribue à chaque modèle enregistré une clé sk-tok- réelle et ciblée, sans que vous ayez à gérer de proxy inverse, de certificat TLS ou de règle de pare-feu.

Clé API d’Ollama – réponse concise

Ollama ne dispose pas de clés API. Lorsque vous exécutez ollama serve, l’API située à l’adresse http://localhost:11434 accepte les requêtes de toute personne pouvant accéder au port correspondant. Il n’existe aucun paramètre --api-key, aucune vérification d’en-tête Authorization, ni aucune gestion par utilisateur au sein d’Ollama. Si vous souhaitez contrôler l’accès à votre modèle Ollama, vous disposez de 2 options :
  1. Proxy inverse (nginx, Caddy) – ajoutez une authentification de base HTTP ou une validation de jeton devant Ollama. Vous serez responsable de la configuration du proxy, des certificats TLS et de la rotation des clés.
  2. Connecteur Tokios – installez un connecteur à proximité d’Ollama, enregistrez un déploiement puis créez des clés sk-tok-… à portée limitée via le tableau de bord. Aucune configuration de proxy, aucun certificat TLS ni port d’accès n’est requis. Consultez Comment Tokios ajoute des clés ci-dessous.

Ce que chaque environnement d’exécution propose actuellement

Il ne s’agit pas de lacunes : ces environnements sont conçus pour exécuter des modèles, non pour gérer l’accès multi-utilisateurs. C’est précisément la fonctionnalité que Tokios vient compléter. Selon la documentation propre à chaque projet : Aucune de ces solutions ne permet d’obtenir des clés API personnalisées, d’assigner des droits à des modèles spécifiques, ni de révoquer une clé sans affecter les autres. C’est précisément ce vide que Tokios comble.

Procédure d’ajout de clés dans Tokios

Tokios se place entre vos clients et votre environnement d’exécution local. Une fois le connecteur associé et le modèle enregistré en tant que déploiement, chaque requête s’authentifie via une clé API Tokios, et non via des systèmes tels qu’Ollama, vLLM, llama.cpp ou LM Studio.
1

Enregistrement de votre modèle

Associez un connecteur et attribuez à votre modèle un nom public (le déploiement) dans l’onglet Models. Consultez la page Enregistrer un modèle si vous ne l’avez pas encore fait.
2

Création d’une clé dans l’onglet Clés

Ouvrez l’onglet Keys puis cliquez sur Create key. Indiquez un nom d’affichage et, si souhaité, définissez des restrictions via model patterns — des motifs séparés par des virgules comme gemma*, gpt-4* — afin que la clé ne soit valable que pour certains déploiements. Laissez-le sur * pour autoriser l’accès à tous vos modèles.
3

Copie de la clé

La clé s’affiche une seule fois, sous la forme sk-tok-.... Copiez-la sans tarder et conservez-la dans un gestionnaire de mots de passe ou un coffre-fort de secrets. Vous pouvez enregistrer jusqu’à 50 clés actives, chacune pouvant être modifiée, renouvelée, désactivée ou supprimée ultérieurement.
4

Authentification des requêtes

Transmettez la clé en tant que jeton Bearer dans l’en-tête Authorization.
Pour en savoir davantage sur la création, la rotation et la révocation des clés, consultez Clés API.

Attribuez une clé distincte à chaque membre de l’équipe ou service.

Comme une clé statique partagée (ou l’absence de clé) ne permet pas de distinguer les différents utilisateurs, traitez les clés Tokios comme n’importe quel identifiant confidentiel confié à plusieurs personnes.
  • Une clé par personne ou environnement. Il convient de générer une clé spécifique pour chaque collaborateur, tâche CI ou service. Si un membre quitte l’équipe ou qu’un ordinateur portable se perd, il suffit de désactiver cette clé dans l’onglet Keys ; tous les autres continuent de fonctionner normalement.
  • Limitez l’accès des clés aux modèles requis. Définissez des motifs de modèles selon chaque clé. Une clé limitée à gemma* ne pourra pas accéder à un déploiement gpt-4*, même si ces deux éléments utilisent le même connecteur.
  • Une clé compromise ne peut pas être utilisée par d’autres clients. Les clés sont associées à votre compte et, éventuellement, à certains déploiements ; ainsi, même si elles sont divulguées, elles ne permettent pas d’accéder à des modèles non autorisés.
Le moyen le plus rapide pour transmettre une clé ciblée est d’utiliser Share Key dans l’onglet Clés : cela génère une clé dédiée et envoie à l’utilisateur un lien unique pour la consulter (la clé n’apparaît jamais dans le courriel). Vous pouvez aussi définir son périmètre de modèles, un mot de passe et une date d’expiration, ainsi qu’activer la révocation instantanée. Consultez Partager une clé par courriel.
Lorsqu’une clé tente d’accéder à un déploiement non couvert par ses autorisations, Tokios rejette la requête en renvoyant HTTP 403.
Le code 403 indique que la clé n’est pas autorisée à utiliser ce modèle (ou que le compte est suspendu) ; le code 404 signifie que le nom du déploiement est inexistant. La liste complète se trouve dans Points de terminaison API.
Pour faire la rotation d’une clé, procédez comme pour n’importe quel identifiant : créez-en une nouvelle, mettez à jour les appels correspondants, puis désactivez l’ancienne clé après vérification que tout fonctionne correctement.

Quelles sont les prochaines étapes ?

Il est impossible de générer une clé API directement depuis Ollama, car ce dernier ne propose aucun mécanisme de gestion des clés. Pour ajouter une authentification devant Ollama, utilisez Tokios : créez une clé sur l’onglet Keys, copiez la valeur sk-tok-…, puis transmettez-la sous la forme Authorization: Bearer sk-tok-YOUR_KEY dans vos requêtes API. Tokios se charge de l’authentification, de la définition des droits d’accès et de la révocation des clés.
vLLM prend en charge 1 indicateur --api-key statique au démarrage du serveur (par exemple vllm serve model --api-key my-key). Il s’agit d’une clé unique partagée entre tous les utilisateurs, et les propres recommandations de sécurité de vLLM déconseillent de s’y fier exclusivement. Pour des clés par utilisateur, ajoutez Tokios par-dessus.
Le serveur llama.cpp accepte un paramètre optionnel --api-key, mais il s’agit d’une clé unique partagée sans possibilité de restriction par utilisateur. Tokios attribue à chaque personne ou service sa propre clé sk-tok-…, limitée à certains modèles spécifiques.

Les clés API

Principe complet de création, de définition des droits d’accès, de rotation et de révocation des clés.

Guide de démarrage rapide

Associez un connecteur, enregistrez un modèle, puis effectuez votre première requête authentifiée dans un processus complet.

Enregistrement du modèle

Attribuez à votre modèle local un nom public que les clients pourront utiliser pour l’appeler.

Accès distant à Ollama

Il est possible de joindre une instance Ollama depuis un autre ordinateur sans avoir à ouvrir de ports entrants.