Vinculação da Conta do Google com o App Flip baseado em OAuth

A vinculação de apps com base no OAuth (App Flip) permite que os usuários vinculem rapidamente as contas no sistema de autenticação às Contas do Google. Se o app estiver instalado no smartphone do usuário quando ele iniciar o processo de conexão de contas, ele será direcionado ao seu app para receber a autorização do usuário.

Essa abordagem oferece um processo de conexão mais rápido, já que o usuário não precisa inserir novamente o nome de usuário e a senha para autenticar. Em vez disso, a vinculação no app aproveita as credenciais da conta do usuário no seu app. Depois que um usuário vincula a Conta do Google ao seu app, ele pode aproveitar todas as integrações que você desenvolveu.

É possível configurar o App Flip para apps iOS e Android.

Esta figura mostra as etapas para um usuário vincular a Conta do Google
            ao seu sistema de autenticação. A primeira captura de tela mostra como um usuário pode selecionar seu app se a Conta do Google dele estiver vinculada a ele. A segunda captura de tela mostra a confirmação da vinculação da Conta do Google ao app. A terceira captura de tela mostra uma conta de usuário vinculada com sucesso no Google app.
Figura 1. Vinculação de contas no smartphone de um usuário com o App Flip.

Requisitos

Para implementar o App Flip, você precisa atender aos seguintes requisitos:

  • Ter um app Android ou iOS.
  • Ter, gerenciar e manter um servidor OAuth 2.0 que ofereça suporte ao fluxo do código de autorização do OAuth 2.0.

Fluxo do App Flip com base no OAuth

O diagrama de sequência a seguir detalha a interação entre o usuário, o app do Google, seu app e o servidor de autorização para o App Flip.

Usuário App do Google Seu app Servidor do Google Seu servidor de autenticação 1. Inicia a vinculação 2. Link direto para seu app 3. Mostra a tela de consentimento 4. O usuário concede consentimento 5. Recebe o código de autorização 6. authorization_code 7. Retorna ao app do Google 8. Transmite o código ao servidor do Google 9. Troca de token (POST) 10. access_token, refresh_token 11. Armazena tokens do usuário 12. Acessa recursos do usuário
Figura 2. A sequência de eventos no App Flip flow. Se um código de autorização for fornecido, a troca de token ocorrerá de servidor para servidor, da mesma forma que no fluxo de vinculação do OAuth baseado no navegador.

Funções e responsabilidades

A tabela a seguir define as funções e responsabilidades dos atores no fluxo do App Flip.

Ator / componente Função do GAL Responsabilidades
App / servidor do Google Cliente OAuth Inicia o processo de conexão, aciona um link direto para seu app para dispositivos móveis , troca o código de autorização por tokens e os armazena com segurança para acessar as APIs do seu serviço.
Seu app Agente de autorização Autentica o usuário (normalmente usando as credenciais do app), recebe o consentimento e recupera um código de autorização do seu servidor.
Seu servidor de autorização Servidor de autorização Valida códigos de autorização e tokens de atualização e emite tokens de acesso para o servidor do Google.

Diretrizes de design

Esta seção descreve os requisitos e as recomendações de design para a tela de consentimento da vinculação de contas do App Flip. Depois que o Google chamar seu app, ele vai mostrar a tela de consentimento ao usuário.

Requisitos

  1. Você precisa informar que a conta do usuário está sendo vinculada ao Google, não a um produto específico, como o Google Home ou o Google Assistente.

Recomendações

Portanto, recomendamos que você faça o seguinte:

  1. Mostrar a Política de Privacidade do Google. Inclua um link para a Política de Privacidade do Google na tela de consentimento.

  2. Dados que serão compartilhados. Use uma linguagem clara e concisa para informar ao usuário quais dados dele o Google exige e por quê.

  3. Call-to-action clara. Inclua uma call-to-action clara na tela de permissão, como "Concordar e vincular". Isso porque os usuários precisam entender quais dados são obrigatórios para compartilhar com o Google e vincular as contas.

  4. Capacidade de negar ou cancelar. Ofereça uma maneira para os usuários voltarem, negarem ou cancelarem, caso não queiram vincular.

  5. Capacidade de desvincular. Ofereça um mecanismo para os usuários desvincularem, como um URL para as configurações da conta na sua plataforma. Como alternativa, inclua um link para a Conta do Google, onde os usuários podem gerenciar a conta vinculada.

  6. Capacidade de mudar a conta de usuário. Sugira um método para os usuários trocarem de conta. Isso é especialmente útil se os usuários costumam ter várias contas.

    • Se um usuário precisar fechar a tela de permissão para trocar de conta, envie um erro recuperável ao Google para que ele possa fazer login na conta desejada com a vinculação do OAuth e o fluxo implícito.
  7. Inclua seu logotipo. Mostre o logotipo da sua empresa na tela de consentimento. Use as diretrizes de estilo para posicionar seu logotipo. Se você também quiser mostrar o logotipo do Google, consulte Logotipos e marcas registradas.

Esta figura mostra um exemplo de tela de consentimento com destaques para os requisitos e recomendações individuais a serem seguidos ao projetar uma tela de consentimento do usuário.
Figura 2. Diretrizes de design da tela de consentimento para vinculação de contas.

Implementar a função "App Flip" nos seus apps nativos

Para implementar o recurso, você precisa modificar o código de autorização do usuário no app para aceitar um link direto do Google.

Para oferecer suporte ao recurso "App Flip" no seu app Android, siga as instruções do Guia de implementação do Android.

Para oferecer suporte ao recurso "App Flip" no seu app para iOS, siga as instruções no guia de implementação para iOS.

Testar a vinculação no app

A alternância de apps pode ser simulada usando apps de exemplo e de teste antes que os apps de produção verificados e um servidor OAuth 2.0 em funcionamento estejam disponíveis.

Durante o App Flip, um app do Google abre seu app, que solicita uma resposta de código de autorização do servidor OAuth 2.0. Na etapa final, a resposta é retornada ao Google app.

Pré-requisitos

Para simular um app do Google e acionar a intent que inicia seu app, faça o download e instale a ferramenta de teste de virada de app para Android e iOS.

Faça o download e instale o App Flip Sample para Android e iOS. Para simular seu app, selecione um tipo de resposta do OAuth 2.0.

Sequência de teste

  1. Abra a ferramenta de teste de virada de tela do app.
  2. Pressione Try Flip! para iniciar seu app de exemplo do App Flip.
  3. Selecione uma resposta nos botões de opção do app de exemplo.
  4. Pressione Send para retornar uma resposta simulada do OAuth 2.0 à ferramenta de teste.
  5. Verifique as mensagens de registro da ferramenta de teste para conferir um auth_code ou detalhes do erro.

Teste de produção

O App Flip pode ser testado na produção depois de concluir o registro e a implementação do servidor do OAuth 2.0.

Uma única Conta do Google e um endereço de e-mail específico para a tarefa são recomendados para testes automatizados.

O estado de vinculação de contas pode ser visualizado usando Contas vinculadas ao fazer login como titular da Conta do Google. As contas também podem ser desvinculadas entre testes repetidos.

Como alternativa, é possível implementar o RISC para desvincular de forma programática e notificar o Google sobre a mudança.