Menu Docs

Página inicial do DocsServiços Atlas App

Autenticação do Google

Nesta página

  • Visão geral
  • Configurar um projeto no console da API do Google
  • Criar um projeto no console da API do Google
  • Gerar credenciais de cliente OAuth
  • Configurar o fornecedor de autenticação do Google
  • Configurar no App Services
  • Exemplos

O fornecedor de autenticação do Google permite que os usuários conectem-se com sua conta Google existente por meio do Google Sign-In. Quando um usuário faz login, o Google fornece ao Atlas App Services um OAuth 2.0 token de acesso para o usuário. O App Services usa o token para identificar o usuário e acessar os dados aprovados das APIs do Google em seu nome.

O diagrama a seguir mostra o fluxo lógico OAuth:

Diagrama de fluxo OAuth

Você deve configurar um projeto no Console da API do Google antes de configurar a Autenticação do Google nos Serviços de aplicativos. Siga as etapas específicas do SDK para configurar a autenticação do Google no Console da API do Google.

O fornecedor de autenticação do Google requer um projeto no Console da API do Google para gerenciar a autenticação e as permissões do usuário. As etapas a seguir percorrem a criação do projeto, a geração de credenciais OAuth e a configuração do provedor para se conectar ao projeto.

1

Siga o guia oficial do Google para criar um novo projeto GCP.

2

Siga o guia de suporte do Google sobre como configurar o OAuth 2.0 para seu projeto.

3

Para conectar seu projeto GCP aos Serviços de Aplicativo, adicione o OAuth 2.0 Client ID e Client Secret que você gerou na etapa anterior à configuração do seu fornecedor de autenticação.

O fornecedor de autenticação do Google tem as seguintes opções de configuração:

Campo
Descrição
Client ID
config.clientId

Obrigatório. Um OAuth 2.0 Client ID para seu projeto no Console da API do Google.

Consulte Configurar um projeto no console de APIs do Google para obter informações sobre como configurar as credenciais do OAuth para seu projeto do GCP.

Client Secret
secret_config.clientSecret

Obrigatório. O nome de um Secret que armazena um OAuth 2.0 Client Secret para seu projeto a partir do Console da API do Google.

Consulte Configurar um projeto no console de APIs do Google para obter informações sobre como configurar as credenciais do OAuth para seu projeto do GCP.

Metadata Fields
campos de metadados

Opcional. Uma lista de campos descrevendo o usuário autenticado que seu aplicativo solicitará da API de identidade do Google.

Todos os campos de metadados são omitidos por padrão e podem ser exigidos campo por campo. Os usuários têm de conceder explicitamente à sua aplicação permissão para acessar cada campo obrigatório. Se um campo de metadados for obrigatório e existir para um usuário específico, ele será incluído em seu objeto de usuário.

Para exigir um campo de metadados de um arquivo de configuração de importação/exportação, adicione uma entrada para o campo à array metadata_fields. Cada entrada deve ser um documento do seguinte formato:

{ name: "<metadata field name>", required: "<boolean>" }
Redirect URIs
redirect_uris

Necessário para aplicações web. Uma lista de URLs de redirecionamento permitidas.

Depois que um usuário concluir o processo de autenticação no Google, o App Services o redirecionará para um URI especificado ou, se não houver nenhum URI especificado, a URL em que ele iniciou a solicitação de autenticação. O App Services redirecionará apenas um usuário para um URI que corresponde exatamente a uma entrada nesta lista, incluindo o protocolo e eventuais barras.

Domain Restrictions
domain_restrictions

Opcional. Uma lista de domínios aprovados para contas de usuário.

Se especificado, o fornecedor verificará o domínio do endereço de e-mail primary de um usuário no Google e só permitirá a autenticação se o domínio corresponder a uma entrada nessa lista.

Por exemplo, se example1.com e example2.com estiverem listados, um usuário do Google cujo e-mail principal é joe.mango@example1.com teria permissão para fazer login, enquanto um usuário cujo e-mail principal é joe.mango@example3.com não teria permissão para fazer login.

Observação

Se você especificou quaisquer restrições de domínio, você também deverá exigir o campo de endereço de e-mail na configuração Metadata Fields.

OpenID Connect
config.openId

Opcional. Padrão false.

Se true, o provedor usa OpenID Connect para autenticar usuários.

Importante

O suporte do OpenID Connect varia de acordo com o SDK

Consulte a documentação específica do SDK sobre suporte para OpenID Connect. Nem todas as implementações de SDK de autenticação do Google aceitam OpenID Connect, mas outras sim.

Observação

O OpenID Connect não suporta campos de metadados

O Google suporta OpenID como parte de sua implementação OAuth 2.0, mas não fornece acesso a escopos restritos para autenticação OpenID. Isso significa que o App Services não pode acessar campos de metadados para usuários autenticados com OpenID Connect.

Para exemplos de código que demonstram como registrar e se conectar usando a autenticação do Google, consulte a documentação para os SDKs do Realm:

← Autenticação do Facebook