Autorização para Web

Os apps da Web precisam receber um token de acesso para chamar as APIs do Google com segurança.

A biblioteca JavaScript dos Serviços de Identificação do Google oferece suporte à autenticação para login do usuário e à autorização para receber um token de acesso para uso com as APIs do Google. A biblioteca é destinada apenas ao uso em navegadores.

A autenticação verifica a identidade de alguém e também pode ser chamada de inscrição ou login do usuário. A autorização é o processo de conceder ou negar acesso a dados ou recursos. Ela inclui a obtenção e o gerenciamento do consentimento do usuário, a limitação da quantidade de dados ou recursos compartilhados com escopos e a recuperação de um token de acesso para uso com as APIs do Google.

Estes guias abordam tópicos de autorização e compartilhamento de dados pessoais.

Como funciona a autorização do usuário descreve as etapas individuais da autorização do usuário em detalhes e inclui exemplos de caixas de diálogo do usuário.

Se você precisar de ajuda com a autenticação e como implementar a inscrição e o login do usuário , consulte Fazer login com o Google.

Node.js

O que mudou

Para os usuários, a biblioteca dos Serviços de Identificação do Google oferece várias melhorias de usabilidade em relação às bibliotecas JavaScript anteriores, incluindo:

  • A autenticação para login do usuário e a autorização para receber um token de acesso para chamar as APIs do Google agora têm dois fluxos de usuário separados e distintos: um para login e outro para consentimento durante a autorização, com fluxos de usuário separados para diferenciar claramente quem você é do que um app pode fazer.
  • Melhor visibilidade e controle granular do compartilhamento de dados pessoais durante o consentimento do usuário.
  • Caixas de diálogo baseadas no navegador para reduzir o atrito e que não exigem que os usuários saiam do seu site para:
    • receber um token de acesso do Google ou
    • enviar um código de autorização para a plataforma de back-end.

Para os desenvolvedores, nosso foco tem sido reduzir a complexidade, melhorar a segurança e simplificar a integração. Algumas dessas mudanças são:

  • A autenticação do usuário para login e a autorização usada para receber um token de acesso para chamar as APIs do Google são dois conjuntos separados e distintos de objetos e métodos JavaScript. Isso reduz a complexidade e a quantidade de detalhes necessários para implementar a autenticação ou autorização.
  • Uma única biblioteca JavaScript agora oferece suporte a:
    • fluxo implícito do OAuth 2.0, usado para receber um token de acesso para uso no navegador
    • fluxo do código de autorização do OAuth 2.0, também conhecido como acesso off-line, e inicia a entrega segura de um código de autorização para a plataforma de back-end, em que ele pode ser trocado por um token de acesso e um token de atualização. Anteriormente, esses fluxos só estavam disponíveis usando várias bibliotecas e chamadas diretas para endpoints do OAuth 2.0. Uma única biblioteca diminui o tempo e o esforço de integração. Em vez de incluir e aprender várias bibliotecas e conceitos do OAuth 2.0, você pode se concentrar em uma única interface unificada.
  • A indireção por meio de funções de estilo getter foi removida para simplificar e melhorar a legibilidade.
  • Ao processar respostas de autorização, você escolhe se quer ou não usar uma promessa para atender às solicitações, em vez de essa decisão ser tomada por você.
  • A biblioteca de cliente da API do Google para JavaScript foi atualizada com estas mudanças:
    • o módulo gapi.auth2 e os objetos e métodos associados não são mais carregados automaticamente em segundo plano e foram substituídos por objetos e métodos mais explícitos da biblioteca dos Serviços de Identificação do Google.
    • A atualização automática de tokens de acesso expirados foi removida para melhorar a segurança e a conscientização do usuário. Depois que um token de acesso expira, seu app precisa processar respostas de erro da API do Google, solicitar e receber um novo token de acesso válido.
    • Para oferecer suporte a uma separação clara dos momentos de autenticação e autorização, não é mais possível fazer login simultaneamente em um app e na Conta do Google do usuário, além de emitir um token de acesso. Anteriormente, a solicitação de um token de acesso também fazia com que os usuários fizessem login na Conta do Google e retornava uma credencial de token de ID JWT para autenticação do usuário.
  • Para aumentar a segurança e a privacidade do usuário, as credenciais emitidas por usuário para autorização seguem o princípio do menor privilégio, incluindo apenas um token de acesso e as informações necessárias para gerenciá-lo.