CommencerCommencer gratuitement

Sécurisation des API avec authentification par clé

Vous développez une API sécurisée et devez mettre en œuvre la vérification des clés API. L'API recherchera une clé dans l'en-tête « X-API-Key » de chaque requête et la vérifiera par rapport à un secret prédéfini. Vous utiliserez les fonctionnalités de sécurité intégrées à FastAPI pour mettre en œuvre ce système d'authentification.

Les classes FastAPI et HTTPException ont été pré-importées.

Cet exercice fait partie du cours

Déployer l'IA en production avec FastAPI

Afficher le cours

Instructions

  • Importez la fonction nécessaire pour gérer les dépendances depuis FastAPI.
  • Créez une instance d'en-tête de clé API pour créer une dépendance afin de valider la clé API entrante dans la requête.
  • Veuillez compléter la fonction d'verify_api_key en vérifiant l'api_key e entrant à l'aide de la clé secrète prédéfinie.
  • Génère une exception HTTP lorsqu'une clé non valide est transmise dans la requête.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# Import the function that handles dependencies
from fastapi import ____
from fastapi.security import APIKeyHeader

# Create the API key instance
api_key_header = ____(name="X-API-Key")
API_KEY = "your_secret_key"

# Pass the APIKeyHeader instance and verify against input api_key
def verify_api_key(api_key: str = Depends(____)):
    if api_key != ____:  
      	# Raise the HTTP exception here
        raise ____(status_code=403, detail="Invalid API Key")  
    return api_key
Modifier et exécuter le code