> ## Documentation Index
> Fetch the complete documentation index at: https://docs.clearpago.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Checklist de segurança

> Requisitos de segurança para a integração ClearPago: tokens, assinaturas, TLS, LGPD e boas práticas de logs.

## Credenciais e tokens

<Check>Token de API armazenado em **cofre de credenciais** (ex.: AWS Secrets Manager, HashiCorp Vault, variável de ambiente segura).</Check>
<Check>Token **nunca** commitado em repositório Git (nem em `.env` commitado, nem em comentários).</Check>
<Check>Token **nunca** logado em claro em nenhum nível de logging.</Check>
<Check>Acesso ao token restrito ao processo/serviço que precisa dele — princípio do menor privilégio.</Check>
<Check>Processo de rotação de credenciais documentado; rotação testada antes de ir a produção.</Check>
<Check>Token de administração (geração de chaves) separado das credenciais de integração operacional (se aplicável).</Check>

## Verificação de webhook

<Check>**Toda** requisição de webhook verifica a assinatura `Digital-Signature` antes de qualquer processamento.</Check>
<Check>Payload sem assinatura válida é rejeitado com `401` — nunca processado parcialmente.</Check>
<Check>Chave pública obtida de `GET /public-key` programaticamente — não hardcoded.</Check>
<Check>Cache da chave pública com TTL e rotação automática em caso de falha de verificação.</Check>
<Check>Raw body preservado antes do parse JSON — middleware de parsing não pode modificar o buffer antes da verificação.</Check>

## Transporte (TLS)

<Check>Todas as chamadas à API usam **HTTPS** (TLS 1.2+). Nenhuma chamada em HTTP.</Check>
<Check>Endpoint de webhook exposto apenas via **HTTPS** com certificado público válido (não autoassinado).</Check>
<Check>Certificado com validade monitorada; alertas para renovação automática configurados.</Check>
<Check>Nenhuma aceitação de certificado inválido em clientes HTTP de produção (`--insecure` e equivalentes proibidos).</Check>

## Proteção do endpoint de webhook

<Check>Endpoint de webhook **não** autentica por IP exclusivamente — confiança baseada em assinatura criptográfica.</Check>
<Check>WAF/proxy não remove ou modifica o header `Digital-Signature`.</Check>
<Check>Rate limiting configurado no endpoint para mitigar abuso.</Check>
<Check>Corpo máximo de requisição configurado (rejeitar payloads anormalmente grandes).</Check>

## LGPD e dados pessoais

<Check>Dados pessoais do pagador (nome, documento) tratados conforme a LGPD: minimização de uso, armazenamento seguro.</Check>
<Check>Documentos em respostas da API **podem ser mascarados** (ex.: `***.456.789-**`); não dependência do valor completo para lógica de negócio crítica.</Check>
<Check>Logs de requisição **não registram** payloads completos com dados pessoais em texto claro.</Check>
<Check>Política de retenção de dados definida e respeitada.</Check>
<Check>Usuários finais informados sobre o uso de dados nos termos de serviço/privacidade.</Check>

## Segurança de aplicação

<Check>Endpoint de webhook não executa operações de escrita diretas no banco durante o request (use filas — previne injeção via payload).</Check>
<Check>Validação de campos antes de persistir qualquer dado recebido no webhook.</Check>
<Check>Sem exposição de stack trace ou detalhes internos em respostas de erro para o chamador externo.</Check>
<Check>Dependências do projeto atualizadas (sem vulnerabilidades conhecidas nas bibliotecas de criptografia usadas).</Check>

## Referências

* [Verificar assinaturas de webhook](/guides/verify-webhook-signatures)
* [Autenticação](/getting-started/authentication)
* [Checklist de produção](/go-live/production-checklist)
* [Checklist de observabilidade](/go-live/observability-checklist)
