Inizia subitoInizia gratis

Mettere in sicurezza le API con l'autenticazione a chiave

Stai creando un'API sicura e devi implementare la verifica della chiave API. L'API cercherà una chiave nell'header X-API-Key di ogni richiesta e la confronterà con un segreto predefinito. Userai le funzionalità di sicurezza integrate di FastAPI per implementare questo sistema di autenticazione.

Le classi FastAPI e HTTPException sono già state importate.

Questo esercizio fa parte del corso

Deployment di AI in produzione con FastAPI

Visualizza corso

Istruzioni dell'esercizio

  • Importa la funzione necessaria per gestire le dipendenze da FastAPI.
  • Crea un'istanza di API key header per definire una dipendenza che convalidi la chiave API in arrivo nella richiesta.
  • Completa la funzione verify_api_key confrontando l'api_key in arrivo con la chiave segreta predefinita.
  • Genera un'eccezione HTTP quando nella richiesta viene passata una chiave non valida.

esercizio interattivo pratico

Prova questo esercizio completando questo codice di esempio.

# 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
Modifica ed esegui il codice