Modelo de integração OAuth2 com a Digibee

Entenda como implementar um modelo de integração baseado em OAuth2 para autenticar e autorizar conexões de forma segura e eficiente.

Este documento apresenta um modelo de implementação de fluxo OAuth2 para autenticação e autorização em integrações realizadas na Digibee Integration Platform. O objetivo é garantir o acesso seguro a APIs protegidas, utilizando tokens de acesso e refresh tokens quando aplicável.

Você aprenderá o padrão de implementação do fluxo de autenticação OAuth2 na Digibee, incluindo:

  • Etapas de geração de credenciais

  • Obtenção do token

  • Renovação (refresh) do token

  • Remoção de credenciais

Observações importantes:

  • O pipeline deve ser configurado com, no mínimo, duas execuções simultâneas (Digibee Execution Config) para garantir o correto funcionamento do mecanismo, já que ele realiza uma autochamada para gerar o token.

  • O fluxo de OAuth2 segue o padrão de autorização client_credentials, adequado para integrações entre sistemas, sem interação humana.

  • A renovação (refresh) do token é realizada automaticamente antes da expiração, garantindo que um token válido esteja sempre disponível para uso.

Arquitetura

Visão geral

Diagrama:

Pipeline:

Descrição

  • Os pipelines implementam um fluxo completo de autenticação OAuth2, permitindo:

    • Criação de credenciais

    • Obtenção do token de acesso

    • Renovação (refresh) do token

    • Exclusão de credenciais

  • O pipeline responsável pode ser acionado tanto para geração inicial do token quanto para renovação ou gestão das credenciais, de acordo com os parâmetros de entrada.

  • Esse mecanismo pode ser reutilizado por outros pipelines de negócio por meio de chamadas de evento, API ou encapsulamento em cápsulas.

Fluxo detalhado

  1. Geração de credenciais

    • Cria um par clientId e clientSecret para futuras autenticações.

  2. Obtenção de token

    • Gera o token de acesso (access_token) e o refresh_token.

  3. Renovação de token

    • Renova o token de acesso utilizando o refresh_token antes da expiração.

  4. Remoção de credenciais

    • Remove as credenciais (clientId) do sistema de autenticação.

Payloads

1. Geração de credenciais

Request:

​Response:

2. Obtenção do token

Request:

Response:

3. Renovação (refresh) do token

Request:

Response:

4. Exclusão de credenciais

Request:

Response:

Isto foi útil?