Pronto para tornar o login em seu site mais fácil? Mergulhe em nosso guia passo a passo sobre a integração do Google OAuth 2.0 para login em sites de terceiros. Vamos guiá-lo pelo processo, tornando fácil melhorar a experiência do usuário e aumentar a segurança.
Antes de começarmos, vamos primeiro entender o que é OAuth 2.0.
O que é OAuth 2.0?
OAuth 2.0 é um protocolo de autorização padrão aberto que permite que aplicações de terceiros acessem recursos protegidos sem fornecer o nome de usuário e a senha do usuário. Ele permite que os usuários autorizem aplicações de terceiros a acessar seus recursos protegidos sem revelar diretamente suas credenciais. OAuth 2.0 é amplamente utilizado em aplicações web e mobile para fornecer um mecanismo de autorização seguro.
O protocolo OAuth 2.0 envolve os seguintes papéis:
- Proprietário do Recurso: Geralmente o usuário, que possui os recursos protegidos, como fotos, perfis pessoais, etc.
- Cliente: A aplicação de terceiros que deseja acessar os recursos protegidos do proprietário do recurso.
- Servidor de Autorização: O servidor responsável por autenticar o proprietário do recurso e autorizar o cliente a acessar os recursos.
- Servidor de Recursos: O servidor que armazena os recursos protegidos e fornece APIs para acessá-los.

O protocolo OAuth 2.0 alcança autorização através do Fluxo de Autorização. Os fluxos de autorização comuns incluem:
- Grant de Código de Autorização: O cliente redireciona o usuário para o servidor de autorização, o usuário faz login e autoriza, e o servidor de autorização retorna um código de autorização ao cliente, que o cliente então usa para trocar por um token de acesso.
- Grant de Credenciais de Senha do Proprietário do Recurso: O proprietário do recurso fornece diretamente o nome de usuário e a senha ao cliente, e o cliente usa essas credenciais para solicitar um token de acesso ao servidor de autorização.
- Grant de Credenciais do Cliente: O cliente usa suas próprias credenciais para solicitar diretamente um token de acesso ao servidor de autorização, adequado para casos em que o próprio cliente precisa acessar os recursos.
- Grant Implícito: Usado para obter diretamente um token de acesso do cliente em uma aplicação baseada em navegador.
Google OAuth 2.0 Grant Implícito: Implementação e Depuração com Apidog
O Google usa o fluxo de Grant Implícito para autorização OAuth 2.0 na web, então vamos dar uma olhada em como implementá-lo e como depurá-lo no Apidog.
Passo 1: Configurar o ID do Cliente e a URL de Redirecionamento
Primeiro, precisamos visitar o Google API Console para obter as credenciais do OAuth 2.0. Clique na opção "Credenciais" na barra lateral esquerda, depois crie um ID de cliente OAuth.

Então selecione o tipo da sua aplicação, que pode ser um site, aplicativo Android ou iOS, dependendo do seu negócio. Em seguida, no campo "Origens JavaScript Autorizadas", insira o domínio do seu site.
Se for um debug local, geralmente defina como http://localhost ou http://localhost:8000 se houver uma porta. O objetivo é informar ao Google a origem HTTP onde seu site está hospedado. Em seguida, no campo "URIs de redirecionamento autorizadas", insira seu endereço de redirecionamento, que geralmente é seu caminho de login ou qualquer outro domínio que você possa acessar.

Após configurar todas as opções relevantes, clique no botão "CRIAR" para salvá-las. Isso irá gerar o ID do Cliente e o segredo do Cliente, que precisaremos usar mais tarde.

Passo 2: Configurar a Página de Solicitação de Permissão OAuth
Na página, clique na opção "Tela de Consentimento OAuth" na barra lateral esquerda para criar uma aplicação.

Configurar a tela de consentimento OAuth
Nesta página, preencha as informações básicas da aplicação, como o nome, e-mail e domínio. Essas informações da página serão exibidas na caixa de login de autorização pop-up, o que pode ajudar o usuário final a entender quem você é e como contatá-lo.

Em seguida, configure os escopos. Vá para o próximo passo e selecione as permissões que deseja acessar, depois salve-as.

Você também pode adicionar uma conta de teste, que é uma conta de e-mail que pode realizar login OAuth 2.0 antes do lançamento oficial, com um limite de até 100 usuários permitidos.

Após concluir a configuração acima, podemos entrar oficialmente no fluxo principal de autorização do OAuth 2.0.
Passo 3: Obter o Token de Acesso
Uma vez que os primeiros e segundos passos estejam prontos, podemos solicitar o token de acesso. Para demonstrar este passo, usaremos o Apidog, uma excelente ferramenta de depuração e gerenciamento de API. Você pode obter diretamente o token no Apidog.

Os principais recursos do Apidog na implementação do fluxo de login do Google OAuth 2.0:
- Configuração simplificada: Apidog fornece uma interface de configuração centralizada, permitindo que os desenvolvedores insiram facilmente o ID do cliente, URL de redirecionamento e outros parâmetros-chave, sem a necessidade de construir manualmente URLs de solicitação de autorização complexas.
- Seleção inteligente do modo de autorização: Apidog suporta a identificação automática do modo de autorização do Google e oferece a capacidade de selecionar o modo Grant Implícito, eliminando a necessidade de alternar entre diferentes modos de autorização.
- Aquisição de token de acesso com um clique: Apidog pode guiar os desenvolvedores por todo o fluxo de autorização e obter automaticamente o token de acesso, reduzindo significativamente a dificuldade de aquisição de token.
- Gerenciamento automático de tokens: Apidog adicionará automaticamente o token de acesso obtido ao cabeçalho da solicitação ou parâmetros de consulta, sem exigir que o desenvolvedor trate manualmente a transmissão do token.
- Acesso a recursos sem costura: Com o token de acesso fornecido pelo Apidog, os desenvolvedores podem usá-lo diretamente para acessar os recursos abertos do Google, sem a necessidade de autorizações complexas adicionais.
No Apidog, crie um novo projeto HTTP, depois crie uma nova solicitação e selecione a opção "Edit Document -> Auth -> OAuth 2.0".

Selecione o modo de autorização "Implícito", pois o "OAuth 2.0 para Aplicações Web do Lado do Cliente" do Google utiliza o Grant Implícito.

Insira o ID do cliente e a URL de redirecionamento. Os parâmetros do serviço Google OAuth 2.0 que você configurou no primeiro passo.

Obtendo um Token de Acesso
De acordo com a documentação oficial do Google, para solicitar um token de acesso, a URL para solicitação é:
https://accounts.google.com/o/oauth2/v2/auth
Você pode preencher este endereço no campo de entrada "Auth URL".

A documentação oficial do Google também exige que parâmetros adicionais sejam incluídos no caminho da URL, como:
https://accounts.google.com/o/oauth2/v2/auth?
scope=https%3A//www.googleapis.com/auth/drive.metadata.readonly&
include_granted_scopes=true&
response_type=token&
state=state_parameter_passthrough_value&
redirect_uri=https%3A//oauth2.example.com/code&
client_id=client_id
Nota: Em aplicações reais, não são necessários quebras de linha.
No entanto, no Apidog, isso geralmente não é necessário, uma vez que os parâmetros necessários foram configurados separadamente em outras opções.
Se você quiser configurá-los, pode clicar no ícone ao lado da "Auth URL" para configurar, ou clicar em "Mais" para expandir outros itens de configuração, como adicionar o valor openid
ao "Scope" aqui, que é a permissão selecionada no "Passo 2" acima.

Após todas as opções de configuração acima estarem definidas, você pode clicar no botão "Obter Token" para obter o token. Após clicar, se for a primeira vez fazendo login, uma janela pop-up aparecerá para você autorizar, e você pode preencher as informações.

Após inserir o nome de usuário e a senha, você pode receber um código de verificação por mensagem de texto para verificar sua conta, ou pode associar diretamente a conta e obter o token de acesso.

Assim que a autorização for concluída, o token de acesso será obtido automaticamente e exibido na página, e outras informações retornadas pelo Google também serão analisadas e exibidas.

Passo 4: Acessar Recursos Abertos com Base no Token
Com o token de acesso obtido, você agora pode usá-lo para acessar os recursos abertos do Google. Você pode explorar todas as APIs disponíveis do Google e seus escopos de permissão no OAuth 2.0 Playground.
Ao enviar solicitações, o Apidog anexará automaticamente o token ao cabeçalho de Autorização como um token Bearer. Se você quiser incluir o token na URL, pode modificar a opção "Posição de Adição do Token" nas configurações do Apidog para "Parâmetros de Consulta".

Conclusão
Resumindo, a implementação do login do Google OAuth 2.0 consiste em quatro etapas principais. Primeiro, no passo 1, você precisa configurar o ID do cliente e a URL de redirecionamento para obter as credenciais do OAuth 2.0. Em seguida, no passo 2, você precisa determinar o escopo das permissões de acesso e criar uma aplicação, configurando as informações relevantes, incluindo as permissões acessíveis e contas de teste.
Depois, no passo 3, você pode obter o token de acesso através da solicitação do token, com a ajuda de uma ferramenta como o Apidog. Finalmente, no passo 4, você pode usar o token de acesso obtido para acessar os recursos abertos do Google.