ComeçarComece de graça

Protegendo APIs com autenticação por chave

Você está construindo uma API segura e precisa implementar a verificação de chave de API. A API vai buscar uma chave no cabeçalho X-API-Key de cada requisição e validá-la contra um segredo pré-definido. Você vai usar os recursos de segurança nativos do FastAPI para implementar esse sistema de autenticação.

As classes FastAPI e HTTPException já foram importadas.

Este exercício faz parte do curso

Colocando IA em Produção com FastAPI

Ver curso

Instruções do exercício

  • Importe a função necessária do FastAPI para lidar com dependências.
  • Crie uma instância de cabeçalho de chave de API para definir uma dependência que valide a chave de API recebida na requisição.
  • Complete a função verify_api_key verificando o api_key recebido com a chave secreta pré-definida.
  • Lance uma exceção HTTP quando uma chave inválida for enviada na requisição.

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

# 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
Editar e executar o código