14-16 Mar 2026
Voltar ao Plano

Corrigir DeviceTokenController: [Authorize] + DTO (SEC2-02)

ACT-5.1.3
2a Pass. ImediataCRITICA — esta semanaEsforco: PComplexidade: BaixaParalelizavel
Por que e urgente

Endpoint de escrita acessivel sem autenticacao com mass assignment sobre entidade de dominio

Risco de nao fazer

Qualquer agente externo pode registrar tokens FCM para qualquer usuario/tenant, interceptando notificacoes de aceite de cargas

Modulos Impactados

aspnet-core/src/cargo_fleet.HttpApi/DeviceToken/DeviceTokenController.csnovo CreateDeviceTokenDto em Application.Contracts

Passos de Implementacao

  1. 1Criar `CreateDeviceTokenDto` com apenas o campo `Token (string)`
  2. 2Adicionar `[Authorize]` ao controller
  3. 3Substituir o parametro `DeviceToken input` por `CreateDeviceTokenDto input`
  4. 4No metodo `CreateAsync`, setar `TenantId = CurrentTenant.Id` e `UserId = CurrentUser.Id!.Value` antes de inserir
  5. 5Testar no app mobile — o token JWT deve ser enviado no header `Authorization: Bearer`

Achados Relacionados