A utilização mais comum do JWT acontece durante a autorização de um serviço exposto na rede via protocolo HTTP.
Veja a ilustração a seguir, que mostra a forma e a arquitetura do padrão:
Para acessar os serviços, é necessário realizar o login em um pipeline, que ficará responsável pela geração do token JWT. Com esse token em mãos, você tem acesso às rotas, aos serviços e aos recursos permitidos.
Sabia que você também pode utilizar o padrão dentro da Plataforma para garantir a segurança dos fluxos? Veja como.
Montando um pipeline para fazer login e construir o JWT
O primeiro passo é configurar o trigger para login:
entre nas configurações do trigger e selecione a opção REST;
ative as opções External API e API Key.
Se você tiver alguma dúvida sobre como preencher os campos mencionados acima, clique aqui para consultar o nosso artigo sobre REST Trigger.
Com o trigger configurado, você pode construir o fluxo utilizando os componentes necessários para a criação do token. Mas não se preocupe - existe um componente específico que gera o token JWT. Acompanhe como fazer:
arraste o ícone do Digibee JWT para a sua área de construção;
selecione a Operation GENERATE para a criação do token;
nos campos Scopes e Expiration, aplique as regras que melhor atendem o seu negócio.
Se quiser saber mais detalhes sobre o Digibee JWT, é só clicar aqui.
Utilizando o Assert
Para utilizar o componente Assert para criar uma validação por usuário e senha pré-cadastrados na Plataforma, insira o seguinte código no campo CONDITION:
#{body.user} == #{globals.user} && #{body.password} == #{globals.password}
IMPORTANTE : a geração do token JWT não é feita em TEST-MODE. Isso só é possível quando o pipeline é publicado em algum dos ambientes (TEST ou PROD).
Chamando o pipeline para o login
Depois que você terminar as configurações, é necessário implantar o pipeline no seu devido ambiente de teste ou produção para poder testar o fluxo. Se você tiver alguma dúvida mais específica sobre implantação de pipelines na Plataforma, clique aqui para ler o nosso artigo sobre o assunto.
Lembre-se que todos os fluxos implantados na Digibee com trigger tipo REST ou HTTP (e seus derivados) precisam fazer uso de API Key. Com o login não é diferente. Clique aqui para obter mais informações sobre segurança.
Com a API Key configurada, você pode dar início ao teste. Veja, no exemplo a seguir, como fazer isso utilizando o postman. Mas lembre-se: você pode usar o client que está acostumado ou qualquer outra aplicação que preferir.
O que você deve fazer é:
passar a API Key no header da chamada;
passar o user e a password configurados como obrigatórios no fluxo.
Ao realizar essa chamada, o serviço retorna o status de sucesso:
Busque a informação necessária nos headers da resposta, no campo Authorization - essa é a autenticação, ou seja, o JWT gerado que será utilizado em combinação com a API Key para outros fluxos que utilizam os triggers de API REST e HTTP.
Configurando o trigger para os fluxos com a nova autenticação como chave
Comece fazendo configurações necessárias no trigger. Para isso, ative as opções ExternalAPI, API Key e Token JWT. Dessa maneira, sempre que as rotas forem chamadas, será preciso informar a API Key e o token JWT gerados.
Se você informar a API Key e não informar o token, então um erro de autorização é retornado:
Com esse passo-a-passo sobre o uso do token JWT, você pode aproveitar para customizar a segurança nos seus próximos pipelines.
Para conhecer o componente Digibee JWT mais a fundo, clique aqui.