Securizarea API-urilor cu autentificare prin cheie
Construiești un API securizat și trebuie să implementezi verificarea cheii API. API-ul va căuta o cheie în headerul X-API-Key al fiecărei cereri și o va valida față de un secret predefinit. Vei folosi funcțiile de securitate integrate în FastAPI pentru a implementa acest sistem de autentificare.
Clasele FastAPI și HTTPException au fost importate în prealabil.
Acest exercițiu face parte din cursul
Deployment AI în producție cu FastAPI
Instrucțiuni pentru exercițiu
- Importă funcția necesară pentru gestionarea dependențelor din FastAPI.
- Creează o instanță pentru headerul cheii API, care să definească o dependență pentru validarea cheii API din cerere.
- Completează funcția
verify_api_keyverificândapi_key-ul primit față de cheia secretă predefinită. - Ridică o excepție HTTP atunci când în cerere este transmisă o cheie invalidă.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# 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