allow_ips transforme une clé en une clé API à allow-list d’IP — elle ne
fonctionne que lorsqu’elle est présentée depuis une adresse source que vous avez
listée. Une clé fuitée rejouée depuis la machine d’un attaquant, un proxy
résidentiel, ou un runner CI compromis est rejetée avant de toucher un modèle.
C’est la moitié liaison-de-source de la moindre agence :
model_limits plafonne quels modèles une clé
peut atteindre, et allow_ips plafonne depuis où la clé peut être présentée.
1. Ce que fait allow_ips
allow_ips contient une liste d’adresses source ou de plages CIDR. À chaque
requête, OrcaRouter compare l’IP source de l’appelant à cette liste :
- Correspondance → la requête poursuit vers les vérifications de limite de modèle, de quota et de politique.
- Aucune correspondance → la requête est rejetée à la couche
d’authentification avec HTTP 403 (
access_denied), avant tout appel à un modèle amont. - Liste vide → aucune restriction ; la clé est acceptée depuis n’importe quelle adresse.
Un
allow_ips vide signifie toutes les IPs autorisées, pas aucune. Le
laisser vide est le défaut non restreint — épinglez la clé pour que le champ
fasse quoi que ce soit.2. Formats acceptés
Chaque entrée est une seule IP ou une plage CIDR. Mélangez les deux librement ; listez une entrée par ligne.Adresse unique
203.0.113.7 — exactement un hôte. Idéal pour un serveur à IP fixe ou une
passerelle NAT avec une adresse d’egress stable.Plage CIDR
203.0.113.0/24 — un bloc entier. Idéal pour un sous-réseau cloud, un pool
VPN, ou un groupe d’autoscaling derrière un seul CIDR d’egress.3. Le définir dans la console
Définissezallow_ips dans l’éditeur de clé à /console/token. Créer ou
modifier une clé requiert le rôle Developer ou supérieur.
- Ouvrez Console → Clés API et créez ou modifiez une clé.
- Dans l’éditeur de clé, entrez vos adresses de confiance dans le champ Allow-list d’IP — une IP ou un CIDR par ligne.
- Enregistrez. La restriction s’applique à la prochaine requête que cette clé effectue — aucun redéploiement, aucun changement de code d’agent.
4. Un exemple concret : un agent planifié
Un job planifié qui résume des tickets ne tourne que depuis un seul sous-réseau cloud. Épinglez sa clé à ce sous-réseau pour que la credential soit inutile ailleurs.| Champ | Valeur | Effet |
|---|---|---|
allow_ips | 203.0.113.0/24 | seul le bloc d’egress du planificateur peut présenter cette clé |
model_limits | un modèle de résumé | ne peut pas escalader vers un modèle frontière |
credit_limit_usd | un plafond hebdomadaire | une boucle emballée ne peut pas vider le solde |
sk-orca-…
comme token au porteur :
203.0.113.0/24, l’appel poursuit. Rejouez
exactement la même requête depuis toute autre adresse et la passerelle renvoie :
allow_ips est configuré entièrement via l’éditeur de clé de la console —
une action Developer-ou-supérieur sur votre session d’espace de travail. Il n’y a
aucun self-service via clé de relais pour cela : une clé ne peut pas élargir sa
propre allow-list de source.5. Ce qu’une allow-list d’IP contient et ne contient pas
Une clé API à allow-list d’IP borne où une clé fonctionne — une tranche du rayon d’explosion. Elle se compose avec les autres champs de portée plutôt que de les remplacer.Elle contient : le rejeu d'une clé fuitée depuis une nouvelle source
Elle contient : le rejeu d'une clé fuitée depuis une nouvelle source
Une credential exfiltrée depuis des logs, un commit git, ou un laptop piraté
est un poids mort à moins que l’attaquant puisse aussi originer du trafic
depuis votre plage allow-listée. C’est le rôle principal du champ — voir
clé fuitée pour la réponse à incident
complète.
Elle ne contient pas : l'abus depuis une source autorisée
Elle ne contient pas : l'abus depuis une source autorisée
Si la compromission est un hôte allow-listé — une dépendance empoisonnée
tournant sur votre propre serveur — la vérification d’IP source passe.
Associez
allow_ips à model_limits, un
plafond de dépense, et une
politique firewall pour qu’une compromission de
source de confiance reste bornée.Elle ne remplace pas l'expiration ni la rotation
Elle ne remplace pas l'expiration ni la rotation
Un épinglage d’IP ne rend pas une clé à courte durée de vie. Combinez-le avec
une expiration absolue et un calendrier
de rotation pour qu’une clé cesse à la fois de
fonctionner depuis de nouveaux endroits et cesse de fonctionner à terme.
6. Notes opérationnelles
IPs d'egress dynamiques ou inconnues
IPs d'egress dynamiques ou inconnues
Si vos appelants n’ont pas d’adresse source stable (serverless avec egress
tournant, clients mobiles, réseaux de bureau larges), un épinglage d’IP est
le mauvais contrôle — vous bloqueriez du trafic réel ou élargiriez la plage
jusqu’à ce qu’elle n’ait plus de sens. Appuyez-vous plutôt sur
model_limits, les plafonds de dépense,
l’expiration, et les
attachements de politique.Mettre à jour la liste quand l'infrastructure change
Mettre à jour la liste quand l'infrastructure change
Modifier
allow_ips prend effet à la requête suivante — il n’y a aucun délai
de propagation à attendre. Lorsque vous ajoutez une région ou migrez un
sous-réseau, mettez la clé à jour d’abord, confirmez que la nouvelle plage
fonctionne, puis retirez l’ancienne.Par clé, pas par espace de travail
Par clé, pas par espace de travail
allow_ips vit sur la clé individuelle, de sorte que chaque agent peut avoir
sa propre liaison de source. Une clé de planificateur peut épingler à un
sous-réseau de batch tandis qu’une clé interactive autorise une plage de
bureau plus large — les deux dans le même espace de travail.7. Étapes suivantes
L'objet token
Chaque champ d’une clé, y compris
allow_ips, dans une seule référence.Limites de modèles
Plafonner quels modèles une clé peut atteindre — l’autre moitié de la liaison
source + portée.
Clé fuitée
Que faire dès l’instant où une clé est exposée.
Checklist de moindre agence
Faites passer chaque clé par la même passe de durcissement.
