Como autenticar usuários

Para autenticar usuários em aplicativos do Google Cloud, o Google oferece os seguintes métodos de autenticação:

Serviço de autenticação Resumo
Identity Platform (recomendado) Autentique usuários usando senhas, números de telefone e provedores de identidade federados como Google, Facebook, Twitter e qualquer outro provedor compatível com o protocolo SAML ou OpenID Connect. Ele oferece recursos empresariais, como autenticação multifator, suporte a SSO do OIDC e SAML, multilocação, SLA de 99,95% e muito mais.

O método recomendado ao iniciar um novo projeto para que você possa usar os recursos do Identity Platform e os recursos legados do Firebase Authentication.
Firebase Authentication Autentique usuários usando diferentes opções de autenticação, incluindo com o Google, o Facebook e o Twitter. O Firebase Authentication oferece suporte ao maior número de usuários, mantendo a menor quantidade de código.

O método recomendado para implantar uma solução no menor número possível de etapas.
Serviços de identidade do Google para a Web Autentique usuários usando contas de usuário do Google do Gmail e do Google Workspace.

O método recomendado para oferecer suporte somente a contas do Google ou a Contas do Google em um sistema de login atual.
OAuth 2.0 e OpenID Connect Fornece identidade federada no provedor que você escolher, incluindo o Google.

O método recomendado se você quiser criar o protocolo de autenticação do usuário.
Identity-Aware Proxy (IAP) Fornece autenticação por meio da adição de uma camada de verificação do Identity and Access Management (IAM) acima do aplicativo do App Engine. O IAP permite controlar o acesso aos serviços do App Engine antes que as solicitações cheguem aos recursos do aplicativo. Isso torna o IAP inadequado para proteção contra atividades no mesmo projeto do Google Cloud.

O método recomendado se você quiser usar as Contas do Google e o IAM para controlar o acesso do usuário.

Identity Platform

O Identity Platform é uma plataforma de gerenciamento de identidade e acesso do cliente (CIAM, na sigla em inglês) que permite às organizações personalizar a identidade e a autenticação para login e login do usuário nos aplicativos. O Identity Platform tem o suporte de vários métodos de autenticação, como SAML, OIDC, e-mail/senha, mídias sociais, smartphone e autenticação personalizada. Com isso, ele oferece opções de integração flexíveis para qualquer solução de identidade. O Identity Platform foi criado com base na segurança, no desempenho, na rede e na escala global do Google Cloud. Ele vem com suporte de nível empresarial e um contrato de nível de serviço (SLA, na sigla em inglês) que atende às demandas de praticamente qualquer app ou serviço.

Essa solução é melhor para a maioria dos usuários que querem opções de autenticação flexíveis com base em SLAs e recursos confiáveis de nível empresarial.

O Identity Platform oferece o próprio sistema de identidade do usuário. Se você já usa o Google Workspace no seu domínio e quer autenticar usuários com base nesse login, use o Google Identity Services para Web.

Para saber mais sobre como integrar o Identity Platform com o App Engine, consulte o guia de instruções sobre como fazer login de usuários no App Engine.

Firebase Authentication

O Firebase Authentication fornece um serviço de autenticação e identidade simples e personalizável para login e login de usuário. Assim como o Identity Platform, o Firebase Authentication é compatível com vários métodos de autenticação (SAML, OIDC, e-mail/senha, redes sociais, dispositivos móveis e autenticação personalizada) para fornecer opções de integração flexíveis para qualquer solução de identidade.

O Firebase Authentication é diferente do Identity Platform porque ele não tem determinados recursos empresariais. Para mais informações, consulte Diferenças entre o Identity Platform e o Firebase Authentication.

Essa solução é melhor se você quiser a maneira mais leve de configurar a autenticação de usuários em um aplicativo do App Engine. Para muitos usuários, o Firebase Authentication é a maneira mais rápida de implementar ou testar a autenticação.

Para saber mais sobre o Firebase Authentication, recorra a uma das opções a seguir:

Serviços de identidade do Google para a Web

O Google Identity Services para Web é uma biblioteca de cliente para o Google criada com base nos protocolos OAuth 2.0 e OpenID Connect. Ele permite um login rápido e fácil ao fornecer um botão "Fazer login com o Google" que aparece no seu site ou app.

Essa solução é melhor se você quiser autenticar usuários com base na Conta do Google ou se estiver usando o Google Admin Console para seu domínio.

OAuth 2.0 e OpenID Connect

O serviço OpenID Connect é uma camada de identidade sobre o protocolo OAuth 2.0. O Google oferece uma implementação do OAuth 2.0 que está em conformidade com a especificação do OpenID Connect e tem a certificação do OpenID. Há também vários outros provedores disponíveis.

Essa solução é melhor se você quiser personalização total e controle da implementação de autenticação.

Para mais informações, consulte OpenID Connect.

Identity-Aware Proxy (IAP)

Ao contrário das outras opções de autenticação que implementam a autenticação no aplicativo, o IAP protege e protege seu aplicativo, adicionando uma camada de autenticação e autorização do IAM aos recursos. Essa camada verifica as solicitações externas de entrada antes que o aplicativo possa ser acessado. Os usuários que não tiverem acesso autorizado ao aplicativo não terão acesso ao aplicativo do App Engine.

É possível ativar o IAP para todo o app ou para serviços ou versões específicas dele. Os serviços ou aplicativos protegidos pelo IAP só podem ser acessados por principais que tenham o papel do IAM correto. Quando um usuário tenta acessar um recurso protegido pelo IAP, o IAP executa verificações de autenticação e autorização para você. Saiba como o IAP protege os recursos do aplicativo na visão geral do IAP.

O IAP não protege contra atividades em um projeto, como um serviço do App Engine que acessa outro no mesmo projeto.

Essa solução é melhor se você quiser usar contas de usuário do Google e o IAM para autorizar o acesso do usuário.

Para saber como configurar o IAP para os recursos do App Engine, consulte o guia de início rápido do IAP.

Outros serviços de autenticação

Auth0 fornece autenticação com vários provedores de identidade e recursos de logon único.