Autenticação dos Serviços
Para assegurar a segurança e autenticidade das requisições feitas pelo SCPP, será implementado um esquema de autenticação baseado em tokens dinâmicos. Esse mecanismo garantirá que apenas usuários autorizados possam acessar os serviços da Prefeitura.Funcionamento da Autenticação#
A autenticação será realizada por meio da geração de um token JWT, utilizando um segredo compartilhado composto pelos seguintes elementos:API Key: Um token fixo e único previamente compartilhado entre o SCPP e a Prefeitura.
Data Atual: Extraída do sistema e formatada no padrão dd/MM/yyyy
.
ID da Prefeitura: Um identificador numérico exclusivo da Prefeitura.
Esses elementos serão concatenados por um hífen (-
), formando o segredo:
Segredo: api_key-data_atual-id_prefeitura
Com base nesse segredo, o SCPP gerará um token JWT, que será incluído no cabeçalho da requisição:
Authorization: Bearer <token_jwt>
Validação do Token#
Ao receber a requisição, o serviço da Prefeitura deverá:1.
Extrair o token JWT do cabeçalho da requisição.
2.
Reconstruir o segredo compartilhado, concatenando os valores esperados (api_key
, data_atual
, e id_prefeitura
).
3.
Decodificar e validar o token JWT usando o segredo reconstruído.
Essa abordagem de autenticação será aplicada em todos os serviços relacionados à atualização de dívidas.Exemplo de Implementação#
Para facilitar o desenvolvimento dos serviços e garantir que a autenticação seja implementada corretamente, disponibilizamos um repositório com um exemplo prático de validação do token JWT. Esse repositório contém um projeto básico que demonstra como a Prefeitura deve verificar o token recebido e validar sua autenticidade.Instruções para Acesso#
Importante: Para acessar o repositório, é necessário cloná-lo usando Github, pois a interface web do GitLab solicita autenticação com senha. Modificado em 2024-12-02 13:05:59