AI Cert Prep
Saisissez un mot-clé pour rechercher dans la documentation.

Parcours API Developer

D7 · Production Safety and Operations

Classificateurs de sécurité et modération, red teaming, surveillance du mésalignement, provenance du contenu, limites de débit et de dépense, codes d’erreur et retries, RBAC, Private Link, IP allowlist, mTLS et workload identity federation.

Ce domaine représente environ 8 % de l’examen blanc OAI-API — à peu près 5 des 60 items — et s’appuie sur le matériel d’exploitation et de sécurité tissé à travers le parcours API de l’Academy. Il teste si vous savez amener une application qui fonctionne en production en toute sécurité : modérer le contenu, faire du red teaming et surveiller le mésalignement, marquer la provenance, régler les limites de débit et de dépense, gérer les erreurs avec des retries, et verrouiller l’accès avec le RBAC et des contrôles réseau.

Ce que vous devez savoir

La production est là où une application rencontre des entrées non fiables, de l’argent réel et de vrais utilisateurs. Vous filtrez le contenu avec la modération et des classificateurs de sécurité, sondez les faiblesses avec le red teaming, et surveillez le mésalignement dans le comportement en direct. Vous marquez les médias générés par IA avec la provenance du contenu. Vous plafonnez le rayon d’impact avec des limites de débit et des limites de dépense, et vous gérez les défaillances transitoires avec des retries et un backoff exponentiel déclenchés selon les bons codes d’erreur. Vous restreignez qui et quoi peut atteindre l’API avec le RBAC, Private Link, des IP allowlists, le mutual TLS et la workload identity federation — pour que les identifiants soient scopés, à courte durée de vie et bornés au réseau. Une checklist de déploiement lie tout cela sous forme de gates de lancement.

Objectifs d’apprentissage

À la fin de cette page, vous devriez être capable de :

  1. Appliquer la modération et des classificateurs de sécurité aux entrées et sorties.
  2. Expliquer le red teaming et la surveillance du mésalignement.
  3. Régler les limites de débit et les limites de dépense pour borner le rayon d’impact.
  4. Gérer les codes d’erreur avec un comportement correct de retry et de backoff.
  5. Choisir les contrôles d’accès : RBAC, Private Link, IP allowlist, mTLS, workload identity federation.
  6. Exécuter une checklist de déploiement avant le lancement.

7.1 Sécurité : modération, classificateurs, red teaming, mésalignement

ContrôleCe qu’il faitQuand
ModérationSignale le contenu interdit dans les entrées/sortiesFiltrer l’entrée utilisateur et la sortie du modèle au runtime
Classificateurs de sécuritéDétectent des catégories de risque spécifiques (dont des contrôles de cyber-sécurité)Gérer la gate des flux à haut risque
Red teamingTests adversariaux délibérés avant et après le lancementTrouver les jailbreaks, injections, chemins d’exfiltration de données
Surveillance du mésalignementSurveiller le comportement en direct pour une dérive par rapport aux objectifs visésEn continu, surtout pour les agents avec outils

Le red teaming est proactif (vous attaquez votre propre système) ; la surveillance du mésalignement est continue (vous surveillez ce qu’il fait réellement). La provenance du contenu (marquer les médias générés par IA) soutient les obligations de transparence.

Signal d’évaluation

« Entrée utilisateur non fiable », « jailbreak », « prompt injection », « avant le lancement nous devrions tester de façon adversariale » pointent vers le red teaming et les guardrails/la modération. « Surveiller l’agent déployé pour une dérive » pointe vers la surveillance du mésalignement.

7.2 Limites de débit et limites de dépense

Deux contrôles de rayon d’impact différents :

LimiteBorneDéfaillance qu’elle prévient
Limite de débitRequêtes/tokens par minuteUn bug ou un pic submergeant le service ; le noisy-neighbour
Limite de dépenseDollars par périodeUne boucle emballée ou un abus vidant le budget
text
Des boucles d'agent emballées appelant l'API 1000×/min
│
limite de débit → 429 plafonne le taux de requêtes
limite de dépense → plafond dur en dollars, alerte avant le plafond

Réglez les deux avant le lancement. Une limite de dépense est la différence entre un bug qui coûte $50 et un qui coûte $50,000.

7.3 Codes d’erreur et retries

CodeSignificationGestion correcte
429Limite de débit / quota dépasséRetry avec backoff exponentiel (respecter Retry-After)
500 / 503Erreur serveur / serviceRetry avec backoff ; c’est transitoire
400Requête invalide (malformée)Ne pas retry ; corriger la requête
401 / 403Auth / permissionNe pas retry ; corriger les identifiants/le scope
python
import time
for attempt in range(5):
try:
return client.responses.create(model="gpt-5.6-terra", input=q)
except RateLimitError: # 429
time.sleep(2 ** attempt) # 1, 2, 4, 8, 16s
except BadRequestError: # 400 — ne pas retry
raise

Le discriminant de nombreux items : retry les erreurs transitoires (429/5xx) avec backoff ; ne jamais retry aveuglément un 400/401/403 — retry une requête malformée ou non autorisée ne fait que gaspiller le quota et peut aggraver la limitation de débit.

7.4 Contrôle d’accès et sécurité réseau

ContrôleCe qu’il faitUtiliser quand
RBAC / permissionsScoper qui peut faire quoi (clés, rôles, projets)Toujours ; moindre privilège sur les clés et les rôles
Private LinkChemin réseau privé vers l’API, hors internet publicCharges sensibles nécessitant une isolation réseau
IP allowlistSeules les IP sources listées peuvent appeler l’APIInfrastructure d’egress fixe
mutual TLS (mTLS)Le client et le serveur s’authentifient tous deux avec des certificatsExigences fortes d’authentification mutuelle
Workload identity federationIdentifiants fédérés à courte durée de vie (K8s, AWS, Azure, GCP, OCI, GitHub Actions, SPIFFE, X.509) au lieu de clés à longue durée de vieCharges cloud qui ne devraient pas détenir de secrets statiques

Préférez les identifiants fédérés à courte durée de vie

Les clés d’API à longue durée de vie dans des variables d’environnement sont une responsabilité permanente. La workload identity federation permet à une charge cloud d’échanger sa propre identité contre un token à courte durée de vie, de sorte qu’il n’y a pas de clé statique à faire fuiter. Préférez-la partout où votre plateforme la supporte.

7.5 La checklist de déploiement

text
Avant le lancement, confirmer :
[ ] Modération sur les entrées et sorties non fiables
[ ] Passe de red team pour injection / jailbreak / exfiltration
[ ] Guardrails + approbation humaine sur les actions irréversibles
[ ] Limite de débit réglée ; limite de dépense réglée avec alerte sous le plafond
[ ] Retry avec backoff exponentiel sur 429/5xx ; pas de retry sur les 4xx auth/validation
[ ] RBAC au moindre privilège sur les clés et les rôles
[ ] Contrôles réseau selon besoin (Private Link / IP allowlist / mTLS)
[ ] Identifiants fédérés à courte durée de vie au lieu de clés statiques où c'est possible
[ ] Résidence / rétention des données vérifiées face aux exigences (voir D4)
[ ] Gate d'évaluation au vert (voir D3) ; tracing/observabilité actif (voir D4)
[ ] Surveillance du mésalignement pour les agents déployés

Cadre de décision

Utilisez GUARD pour décider des contrôles qu’un lancement en production nécessite.

LettreÉtapeQuestion
GGate contentLa modération est-elle sur les entrées et sorties, et avez-vous fait du red team ?
UUsage capsLes limites de débit et de dépense sont-elles réglées avec alerte ?
AAuth & accessLe RBAC est-il au moindre privilège, avec les bons contrôles réseau ?
RResilienceRetry-vous les erreurs transitoires avec backoff sans retry les erreurs auth/validation ?
DDetect driftLa surveillance du mésalignement et le tracing sont-ils en place pour les agents ?

Erreurs fréquentes

ErreurPourquoi elle survientQue faire à la place
Aucune limite de dépense« Ça ne bouclera pas »Régler une limite de dépense avec alerte ; elle plafonne le coût emballé
Retry un 400/401Wrapper générique qui retry-toutNe retry que les 429/5xx transitoires avec backoff ; corriger les 4xx
Clés à longue durée de vie dans les variables d’envLe plus facile à mettre en placeUtiliser la workload identity federation pour des tokens à courte durée de vie
Modérer l’entrée mais pas la sortieFocalisation sur le texte utilisateurFiltrer aussi les sorties du modèle, surtout les actions d’agent
Sauter le red teaming« On a testé le cas idéal »Tester de façon adversariale injection/jailbreak avant le lancement
Scope de clé d’API trop largeConfortRBAC au moindre privilège par clé/rôle/projet
Aucune surveillance du mésalignement pour les agentsLancer-et-oublierSurveiller en continu le comportement de l’agent déployé
Faire confiance au réseau par défautL’internet public convientAjouter Private Link / IP allowlist / mTLS selon le risque

Défi de mise en situation

Mise en situation. Vous lancez un agent de support autonome qui lit des messages clients (entrée non fiable), appelle des outils internes pour émettre des remboursements, et s’exécute sur Kubernetes. La sécurité demande : comment l’empêcher de vider le budget, empêcher un message malveillant de le détourner, et éviter les clés d’API statiques dans le cluster ? Le plan actuel de l’équipe enveloppe chaque appel d’API dans une boucle « retry jusqu’à 5 fois sur toute erreur » et stocke une clé d’API à longue durée de vie dans un Kubernetes secret.

Trace de raisonnement d’expert.

  1. Rayon d’impact du budget → limite de dépense + limite de débit. Un agent qui boucle ou est abusé pourrait appeler l’API des milliers de fois. Réglez une limite de dépense avec alerte sous le plafond et une limite de débit, pour qu’une boucle emballée heurte un plafond dur en dollars et un 429 plutôt qu’une facture illimitée.
  2. Message malveillant → red team + modération + guardrails + approbation. Les messages clients sont non fiables, donc une charge de prompt-injection pourrait tenter de faire émettre à l’agent un remboursement non autorisé. Faites du red team pour l’injection avant le lancement, modérez les entrées, ajoutez des guardrails de sortie/d’outil, et placez l’action de remboursement derrière une approbation humaine (D4) puisqu’elle est irréversible.
  3. La boucle de retry est mauvaise. « Retry toute erreur 5× » retentera volontiers un 400 (malformé) et un 401/403 (auth/permission), gaspillant le quota et masquant de vrais bugs. Correct : ne retry que les 429/5xx avec backoff exponentiel, et échouer vite sur les 4xx auth/validation.
  4. La clé statique est une responsabilité. Une clé à longue durée de vie dans un K8s secret peut fuiter. Utilisez la workload identity federation pour que le pod échange son identité Kubernetes contre un token à courte durée de vie — pas de clé statique à voler.
  5. Contrôles réseau. Si l’egress de la charge est fixe, ajoutez une IP allowlist, et utilisez Private Link si le trafic doit rester hors internet public ; le RBAC scope l’identifiant aux seuls outils de remboursement/support.
  6. Surveiller après le lancement. Activez la surveillance du mésalignement et le tracing pour qu’un agent qui dérive ou est détourné soit attrapé en production.

Décision conforme à l’examen : limites de dépense + de débit, red teaming et modération avec un gate d’approbation sur les remboursements, retry sélectif (429/5xx avec backoff uniquement), workload identity federation au lieu d’une clé statique, RBAC et contrôles réseau, et surveillance du mésalignement. Pas de retry-tout, pas de clé à longue durée de vie dans un secret, pas de remboursement automatique sans gate.

Pièges d’évaluation

PiègePourquoi il est tentantLe discriminant
« Retry chaque erreur quelques fois »Un wrapper pour toutes les défaillancesNe retry que les 429/5xx transitoires avec backoff ; jamais les 4xx auth/validation
« Une limite de débit suffit à contrôler le coût »Elle limite les requêtesUne limite de débit borne le débit ; une limite de dépense borne les dollars — régler les deux
« Stocker la clé d’API dans une variable d’env / un secret »SimpleUtiliser la workload identity federation pour des identifiants à courte durée de vie
« Modérer l’entrée utilisateur »Le texte utilisateur semble être le risqueFiltrer aussi les sorties et les actions d’outils, pas seulement les entrées
« On a testé que ça marche, on est prêts »Le cas idéal a passéFaire du red team injection/jailbreak/exfiltration avant le lancement
« L’agent est intelligent, pas besoin d’approbation pour les remboursements »Biais d’autonomieLes actions irréversibles nécessitent un gate d’approbation humaine
« L’internet public convient pour le trafic sensible »Configuration par défautAjouter Private Link / IP allowlist / mTLS au niveau de risque

Questions d’entraînement

Chaque item indique combien de réponses sélectionner. Engagez-vous avant de révéler.

Q1 · Un appel d’API renvoie un `429`. Quelle est la gestion correcte ? (Sélectionnez une réponse)

A. Retry immédiatement dans une boucle serrée. B. Retry avec backoff exponentiel, en respectant tout header Retry-After. C. Ne pas retry ; corriger la requête. D. Escalader vers un plus grand modèle.

Réponse : B. Un 429 est une erreur transitoire de limite de débit, gérée en reculant exponentiellement et en honorant Retry-After. Une boucle de retry serrée (A) aggrave la limitation, un 429 n’est pas une requête malformée à corriger (C), et la taille du modèle (D) est sans rapport.

Q2 · Quelle erreur ne devriez-vous PAS retry automatiquement ? (Sélectionnez une réponse)

A. 429 limite de débit. B. 503 service indisponible. C. 400 requête invalide (entrée malformée). D. 500 erreur serveur.

Réponse : C. Un 400 signifie que la requête elle-même est malformée ; la retry échouera de nouveau et gaspillera le quota — corriger la requête à la place. 429 (A), 503 (B) et 500 (D) sont transitoires et appropriés à retry avec backoff.

Q3 · Une équipe craint qu’une boucle d’agent emballée génère une énorme facture. Quel contrôle plafonne LE PLUS directement (MOST directly) le coût en dollars ? (Sélectionnez une réponse)

A. Une limite de débit uniquement. B. Une limite de dépense avec alerte sous le plafond. C. Une fenêtre de contexte plus grande. D. Le streaming des réponses.

Réponse : B. Une limite de dépense plafonne directement les dollars et peut alerter avant le plafond. Une limite de débit (A) borne le débit, pas la dépense totale, et la taille du contexte (C) et le streaming (D) ne contrôlent pas le coût.

Q4 · Une charge Kubernetes doit appeler l’API sans détenir de clé à longue durée de vie. Quelle est la MEILLEURE (BEST) approche ? (Sélectionnez une réponse)

A. Stocker une clé à longue durée de vie dans un Kubernetes secret. B. Utiliser la workload identity federation pour échanger l’identité du pod contre un token à courte durée de vie. C. Coder en dur la clé dans l’image du conteneur. D. Passer la clé comme argument de ligne de commande.

Réponse : B. La workload identity federation émet des identifiants fédérés à courte durée de vie de sorte qu’il n’y a pas de clé statique à faire fuiter. Un secret (A), une clé intégrée (C) et un argument CLI (D) sont tous des anti-patterns de clé à longue durée de vie.

Q5 · Un agent traite des messages clients non fiables et peut prendre des actions. Quels DEUX (TWO) contrôles traitent LE MIEUX (BEST) le risque de prompt-injection ? (Sélectionnez deux réponses)

A. Des guardrails d’entrée/sortie et de la modération pour détecter et bloquer les instructions injectées. B. Du red teaming avant le lancement pour trouver les chemins d’injection et d’exfiltration. C. Une fenêtre de contexte plus grande. D. Un reasoning effort plus élevé. E. Retirer toute la journalisation.

Réponse : A et B. Les guardrails/la modération bloquent les instructions injectées au runtime et le red teaming trouve les chemins avant le lancement. La taille du contexte (C) et l’effort (D) n’arrêtent pas l’injection, et retirer la journalisation (E) réduit la visibilité dont vous avez besoin.

Q6 · Quelle est la différence entre le red teaming et la surveillance du mésalignement ? (Sélectionnez une réponse)

A. C’est la même activité. B. Le red teaming est un test adversarial proactif ; la surveillance du mésalignement est l’observation continue du comportement déployé pour une dérive. C. Le red teaming ne s’applique qu’aux images. D. La surveillance du mésalignement n’a lieu qu’avant le lancement.

Réponse : B. Le red teaming attaque le système pour trouver les faiblesses ; la surveillance du mésalignement observe le comportement en direct dans le temps. Ils sont distincts (A), le red teaming n’est pas réservé aux images (C), et la surveillance est continue après le lancement, pas uniquement avant (D).

Q7 · Une charge sensible doit atteindre l’API sans traverser l’internet public. Quel contrôle convient ? (Sélectionnez une réponse)

A. Une limite de dépense. B. Private Link, fournissant un chemin réseau privé vers l’API. C. Un plus grand modèle. D. Les predicted outputs.

Réponse : B. Private Link donne un chemin réseau privé hors internet public pour le trafic sensible. Une limite de dépense (A) est un contrôle de coût, et la taille du modèle (C) et les predicted outputs (D) sont sans rapport avec l’isolation réseau.

Q8 · Une clé d’API utilisée par un job de reporting en lecture seule a aussi la permission de supprimer des ressources. Quel principe est violé et quel est le correctif ? (Sélectionnez une réponse)

A. Aucun ; les clés larges sont pratiques. B. Le moindre privilège ; scoper la clé via RBAC aux seules permissions de lecture dont le job a besoin. C. L’absence d’état ; ne rien stocker. D. Le caching ; l’activer.

Réponse : B. Une clé surscoppée viole le moindre privilège et agrandit le rayon d’impact ; le RBAC devrait la scoper en lecture seule. Le confort (A) n’est pas une justification, et l’absence d’état (C) et le caching (D) sont sans rapport.

Q9 · Quels éléments appartiennent à une checklist de déploiement pré-lancement pour un agent qui prend des actions irréversibles ? (Sélectionnez deux réponses)

A. Un gate d’approbation humaine sur les actions irréversibles. B. Des limites de débit et de dépense avec alerte. C. Retry indéfiniment chaque type d’erreur. D. Désactiver le tracing pour réduire le bruit. E. Stocker des clés statiques dans le dépôt.

Réponse : A et B. Les actions irréversibles nécessitent un gate d’approbation, et les limites de débit/dépense plafonnent le rayon d’impact — les deux sont des gates de lancement. Retry tout indéfiniment (C) est mauvais, désactiver le tracing (D) retire une observabilité nécessaire, et les clés statiques dans le dépôt (E) sont un anti-pattern sérieux.

Q10 · Un agent de support déployé commence progressivement à prendre des actions hors de son périmètre prévu. Quelle capacité est conçue pour attraper cela ? (Sélectionnez une réponse)

A. Le prompt caching. B. La surveillance du mésalignement du comportement d’agent en direct, avec du tracing pour investiguer. C. Le traitement Batch. D. Une fenêtre de contexte plus grande.

Réponse : B. La surveillance du mésalignement observe le comportement déployé pour une dérive par rapport aux objectifs visés, et le tracing vous permet d’investiguer. Le caching (A) et Batch (C) sont des fonctionnalités de performance, et la taille du contexte (D) ne détecte pas la dérive comportementale.

Points clés à retenir

  • Filtrez les entrées non fiables et les sorties du modèle avec la modération et des classificateurs de sécurité ; faites du red team avant le lancement.
  • Réglez à la fois une limite de débit (débit) et une limite de dépense (dollars) avec alerte pour borner le rayon d’impact.
  • Ne retry que les erreurs transitoires (429, 5xx) avec backoff exponentiel ; ne jamais retry aveuglément un 400/401/403.
  • Scopez les identifiants avec le RBAC au moindre privilège et ajoutez Private Link, IP allowlist ou mTLS au niveau de risque.
  • Préférez la workload identity federation et les tokens à courte durée de vie aux clés statiques à longue durée de vie.
  • Placez les actions d’agent irréversibles derrière une approbation humaine et surveillez les agents déployés pour le mésalignement.
  • Traitez la checklist de déploiement comme des gates de lancement : sécurité, limites, résilience, accès, résidence, évaluations et observabilité.

Dernière mise à jour le 18 sept. 2026