APIs mit Schlüssel-Authentifizierung absichern
Du baust eine sichere API und musst eine Überprüfung des API-Schlüssels implementieren. Die API sucht in jedem Request im Header X-API-Key nach einem Schlüssel und vergleicht ihn mit einem vordefinierten Geheimnis. Du nutzt die integrierten Sicherheitsfunktionen von FastAPI, um dieses Authentifizierungssystem umzusetzen.
Die Klassen FastAPI und HTTPException wurden bereits importiert.
Diese Übung ist Teil des Kurses
KI in der Produktion mit FastAPI bereitstellen
Anleitung zur Übung
- Importiere die notwendige Funktion aus FastAPI, um Abhängigkeiten zu handhaben.
- Erstelle eine API-Key-Header-Instanz, um eine Abhängigkeit zu definieren, die den eingehenden API-Schlüssel im Request validiert.
- Vervollständige die Funktion
verify_api_key, indem du den eingehendenapi_keymit dem vordefinierten geheimen Schlüssel vergleichst. - Löse eine HTTP-Exception aus, wenn im Request ein ungültiger Schlüssel übergeben wird.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# 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