Skip to content

Latest commit

 

History

History
107 lines (77 loc) · 1.66 KB

File metadata and controls

107 lines (77 loc) · 1.66 KB

Middleware XML com Criptografia

Projeto de middleware REST que converte JSON para XML, aplica criptografia em dados sensíveis e se comunica com um sistema legado simulado.

Estrutura do Projeto

Middleware-XML-Criptografia/
  app/
    __init__.py
    main.py
    models.py
    crypto_utils.py
    legacy_simulator.py
  requirements.txt
  README.md

Tecnologias Utilizadas

  • Python 3.12+
  • FastAPI
  • Uvicorn
  • Cryptography (Fernet)
  • xml.etree.ElementTree

Como Executar

Criar ambiente virtual

python -m venv .venv

Ativar ambiente (PowerShell)

. .venv/Scripts/Activate.ps1

Instalar dependências

pip install -r requirements.txt

Rodar servidor

uvicorn app.main:app --reload

API disponível em:

Endpoints

POST /api/clientes

Recebe JSON, converte para XML, cifra o CPF e repassa ao sistema legado.

Exemplo:

{
  "nome": "Joao da Silva",
  "email": "joao@example.com",
  "cpf": "12345678900"
}

GET /api/clientes/{id}

Consulta dados de cliente, descriptografa CPF e devolve JSON.

Exemplos de XML

Cadastro

<clienteCadastro>
  <id>UUID</id>
  <nome>Joao da Silva</nome>
  <email>joao@example.com</email>
  <cpf>CPF_CRIPTOGRAFADO</cpf>
</clienteCadastro>

Resposta do Legado

<clienteConsultaResposta>
  <id>UUID</id>
  <nome>Joao da Silva</nome>
  <email>joao@example.com</email>
  <cpf>CPF_CRIPTOGRAFADO</cpf>
  <status>OK</status>
</clienteConsultaResposta>

Segurança

  • Criptografia simétrica (Fernet/AES)
  • Header de autenticação X-API-Key
  • HTTPS opcional via certificado local