Kom igångKom igång gratis

Skydda API:er med nyckelautentisering

Du bygger ett säkert API och behöver implementera verifiering av API-nycklar. API:et kontrollerar om det finns en nyckel i rubriken X-API-Key för varje begäran och jämför den med en fördefinierad hemlighet. Du använder FastAPI:s inbyggda säkerhetsfunktioner för att implementera det här autentiseringssystemet.

Klasserna FastAPI och HTTPException har importerats i förväg.

Den här övningen är en del av kursen

Driftsättning av AI i produktion med FastAPI

Visa kurs

Övningsinstruktioner

  • Importera den funktion som behövs för att hantera beroenden från FastAPI.
  • Skapa en instans av API-nyckelrubriken för att skapa ett beroende som validerar den inkommande API-nyckeln i begäran.
  • Slutför funktionen verify_api_key genom att jämföra den inkommande api_key med den fördefinierade hemliga nyckeln.
  • Utlös ett HTTP-undantag när en ogiltig nyckel skickas med i begäran.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# 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
Redigera och kör kod