Skip to content
Last updated

🔄 Solicitar um Código de Autorização

A solicitação do código de autorização é o primeiro passo crucial no processo de autorização do OAuth 2.0. Neste ponto, você será direcionado para o servidor de autorização da Conta Azul (auth.contaazul.com). Isso permite que um cliente Conta Azul vincule sua conta ERP à sua aplicação, concedendo permissão para que seu aplicativo acesse os dados necessários.

Nosso Endpoint de requisição do código de autorização: ➡️ https://auth.contaazul.com/oauth2/authorize


O que acontece?

  1. Construção da URL 🛠️: É necessário construir uma URL específica para realizar uma chamada ao servidor de autorização por meio de um navegador.
  2. Login Conta Azul 🔐: O servidor de autorização redireciona para a tela de login do Conta Azul Pro (ERP) para vincular o cliente Conta Azul à aplicação.
  3. MFA 📱: Após realizar o login, é necessário informar o código de autenticação em duas etapas associado à conta do cliente Conta Azul.
  4. Geração do código de autorização ✨: Se o login for feito e o MFA informado, o servidor de autorização gera um código de autorização de curta duração (expira em 3 minutos). Este código é uma credencial temporária que seu aplicativo usará no próximo passo para obter os tokens de acesso.
  5. URL de redirecionamento ↩️: O servidor de autorização, então, redireciona o navegador de volta para uma URL informada no seu aplicativo (redirect_uri), anexando o código de autorização a essa URL.
fluxoauth.png

Como fazer? 📝

A URL que você constrói para iniciar o processo precisa ter o seguinte formato:

https://auth.contaazul.com/oauth2/authorize?response_type=code&client_id=SEU_CLIENT_ID&redirect_uri=SUA_URL_REDIRECIONAMENTO&state=ESTADO&scope=openid+profile+aws.cognito.signin.user.admin

Ela contém vários parâmetros de consulta que informam ao servidor de autorização sobre sua solicitação:

ParâmetroValorValor Fixo?FinalidadeDetalhes
response_typecodeSimInforma ao servidor que está buscando um código de autorização
client_idDisponível nos detalhes da sua integração no Portal do DesenvolvedorNãoIdentificador único do aplicativo
redirect_uriDisponível nos detalhes da sua integração no Portal do DesenvolvedorNãoEsta é a URL que o servidor deve redirecionar o navegador após a autorizaçãoÉ crucial que esta URL seja exatamente igual à URL informada na integração pelo Portal do Desenvolvedor, ao contrário resultará em um erro de redirecionamento
stateValor aleatório e único para cada solicitação de autorizaçãoNãoQuando o servidor redireciona de volta para sua redirect_url, ele inclui o mesmo valor state, pois os dois precisam ser idênticosProteção contra CSRF (Cross-Site Request Forgery) e ajuda na manutenção de contexto caso exista várias solicitações pendentes
scopeopenid+profile+aws.cognito.signin.user.adminSimDefine as permissões que seu aplicativo está solicitandoNo Conta Azul, seu aplicativo terá a permissão de administrador

Após montar a URL e fazer a chamada para o servidor de autenticação pelo navegador, você será redirecionado para o login da Conta azul, conforme imagem abaixo:

image3.png

Depois de fazer o login, você será encaminhado para a autenticação em duas etapas (MFA). O código de segurança que você precisa inserir é gerado pelo seu aplicativo de autenticação, o mesmo que foi configurado e é utilizado para fazer login no Conta Azul Pro.

authmfa.jpg

Após o vínculo com o cliente Conta Azul, o código de autorização e o state estarão presentes como parâmetros na redirect_uri:

https://SUA_URL_REDIRECIONAMENTO?code=CODIGO_AUTORIZACAO&state=ESTADO

Com o código de autorização em mãos, é necessário estar realizando outra chamada ao servidor, utilizando um endpoint diferente, trocando esse código pelo token de acesso. Mas isso já é parte do próximo passo do protocolo OAuth 2.0!