Objetivo
Implementar autenticação e autorização robustas no DuckStore usando o modelo Zero Trust, garantindo que:
- Cada requisição seja autenticada e autorizada independentemente.
- Usuários e serviços tenham identidade validada de forma criptográfica.
- A comunicação síncrona e assíncrona seja segura e audível.
Contexto/Problema
A ausência de autenticação e autorização adequadas dificulta o desenvolvimento e testes de outros bounded contexts, impactando a testabilidade, segurança e o fluxo de desenvolvimento da aplicação.
Escopo
Inclui:
- Integração com AWS Cognito para autenticação de usuários e serviços.
- Validação de JWT no API Gateway e em cada serviço individual.
- Implementação de policy-based authorization nos serviços.
- Propagação de identidade criptograficamente segura entre serviços.
- Uso de KMS Envelope Encryption para mensagens assíncronas (SQS/RabbitMQ).
- Observabilidade: logs, auditoria e métricas de acesso.
Não inclui:
- Autenticação de usuários fora do Cognito.
- Alterações de lógica de negócio que não dependam de identidade ou autorização.
Entregáveis
- Configuração do Cognito e criação de user/service pools.
- Configuração do API Gateway para validação de JWT.
- Implementação de JWT validation e policy-based authorization em todos os serviços.
- Integração de KMS Envelope Encryption para mensagens assíncronas.
- Documentação da arquitetura de autenticação e autorização.
- Testes automatizados cobrindo todos os fluxos de autenticação e autorização.
Critérios de aceite
Prioridade
Alta
Dependências/Riscos
- Dependência de AWS Cognito e KMS.
- Necessidade de configuração correta de API Gateway e permissões de IAM.
- Complexidade de propagação de identidade em serviços assíncronos.
- Risco de exposição de dados caso encryption ou JWT validation falhem.
Objetivo
Implementar autenticação e autorização robustas no DuckStore usando o modelo Zero Trust, garantindo que:
Contexto/Problema
A ausência de autenticação e autorização adequadas dificulta o desenvolvimento e testes de outros bounded contexts, impactando a testabilidade, segurança e o fluxo de desenvolvimento da aplicação.
Escopo
Inclui:
Não inclui:
Entregáveis
Critérios de aceite
Prioridade
Alta
Dependências/Riscos