ПочатиПочніть безкоштовно

Захист API за допомогою ключової автентифікації

Ви створюєте захищений API й маєте реалізувати перевірку ключа API. Сервіс перевірятиме наявність ключа в заголовку X-API-Key кожного запиту та звірятиме його з наперед визначеним секретом. Ви скористаєтеся вбудованими механізмами безпеки FastAPI, щоб реалізувати цю систему автентифікації.

Класи FastAPI та HTTPException уже імпортовано.

Ця вправа є частиною курсу

Розгортання AI у продакшні з FastAPI

Переглянути курс

Інструкції до вправи

  • Імпортуйте потрібну функцію для керування залежностями з FastAPI.
  • Створіть екземпляр заголовка ключа API, щоб додати залежність для перевірки вхідного ключа API в запиті.
  • Доповніть функцію verify_api_key, звіряючи вхідний api_key із наперед визначеним секретним ключем.
  • Підійміть HTTP-вийняток, якщо в запиті передано недійсний ключ.

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

# 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
Редагувати та запускати код