Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Na imagem acima, podemos visualizar como geralmente funciona o fluxo de autorização.

  1. Solicitação de autorização
    Nessa primeira etapa o cliente (aplicação) solicita a autorização para acessar os recursos do servidor do usuário;

  2. Concessão de autorização
    Se o usuário autorizar a solicitação, a aplicação recebe uma concessão de autorização;

  3. Concessão de autorização
    O cliente solicita um token de acesso ao servidor de autorização (API) através da autenticação da própria identidade e da concessão de autorização;

  4. Token de acesso
    Se a identidade da aplicação está autenticada e a concessão de autorização for válida, o servidor de autorização (API) emite um token de acesso para a aplicação. O cliente já vai ter um token de acesso para gerenciar e a autorização nessa etapa já está completa;

  5. Token de acesso
    Quando o cliente precisar solicitar um recurso ao servidor de recursos, basta apresentar o token de acesso;

Recurso protegido
O servidor de recursos fornece o recurso para o cliente, caso o token de acesso dele for válido.
O servidor de autorização é responsável pelo SSO (Single Sign On), que centraliza as credenciais dos acessos dos usuários e faz a autenticação, gerencia as permissões dos usuários e emite os tokens de acesso;

...

  • Implicit – é um fluxo de autorização simplificado, otimizado para clients web. Ao emitir um token de acesso, o authorization server não autentica o cliente. É muito utilizado em SPAs e aplicações MVC;

  • Authorization Code – é obtido usando um authorization server como intermediário entre o client e o usuário. O cliente redireciona o usuário para um servidor de autorização. Esse tipo de client é utilizado em aplicações de terceiros, ou seja, não confiáveis;

  • Resource Owner Password Credentials – utilizado quando o client solicita o usuário e senha diretamente, esse já utilizado em aplicações chamadas de confiáveis, como aplicações da própria empresa; (Utilizado na external API - Privacy Tools)

  • Client Credentials – pode ser utilizado quando a aplicação client é protegida, que são utilizados em integrações de sistemas;

Implementação External API - Privacy Tools

Para confirmar a utilização na privacy tools, basta primeiramente a conta company estar com o campo external_api com valor 2 (corresponde a API Oauth2), por padrão as novas contas inseridas estarão inicializadas com valor external_api igual a 2, para a utilização em uma conta já cadastrada anteriormente é necessário executar o script sql abaixo no ambiente do banco;

UPDATE dp_company SET external_api=2 

where id = ID_DA_EMPRESA;

A conta company com passo anterior ok, em todas as páginas de API de integração, verá as seguintes informações - Conformidade>>Auditoria>>API Integração:

...

: Privacidade>>Consentimentos>>API Integração, aba 'Integre com sua aplicação:

...

client-id e client-secret correspondem ao usuário e senha da aplicação esta é passada como user basic no authorization do endpoint de geração de token juntamente com os parâmetros no body:

...

Url do endpoint geração de token, exemplo:

URL de homologação: https://demo.privacytools.com.br/external_api_v2/oauth/token

URL de produção: https://dpo.privacytools.com.br/external_api_v2/oauth/token

o campo Curl Token Authorization nos facilita já construindo a string em curl de uma requisição ao endpoint de geração de token:

...

Para todas as chamadas de todos os  endpoints da external api, basta passar o token no Authorization como na imagem acima além dos parâmetros usuais de cada endpoint para o correto funcionamento.

  • Esta documentação aborda de maneira abrangente e minuciosa o tema em questão. No entanto, com o intuito de fornecer informações detalhadas, fundamentadas e provenientes de diversas fontes para uma compreensão completa e precisa, segue a documentação que apresenta o passo a passo de como utilizar e obter o token. API - Obter token.