Autenticar usuários com Contas do Google
Nesta página, você verá como implantar um aplicativo do ambiente padrão ou flexível do App Engine e protegê-lo com o Identity-Aware Proxy (IAP). O guia de início rápido inclui o código de amostra de um app da Web do ambiente padrão do App Engine que verifica o nome de um usuário conectado. Aqui, usaremos o Cloud Shell para clonar e implantar o aplicativo de amostra. Use este guia para ativar o IAP para seu próprio aplicativo do ambiente padrão ou flexível do App Engine.
Se você planeja disponibilizar recursos de uma rede de fornecimento de conteúdo (CDN, na sigla em inglês), consulte o guia de práticas recomendadas para informações importantes.
Quando um aplicativo do App Engine consiste em vários serviços, é possível configurar diferentes permissões de IAP nos diferentes serviços, incluindo tornar apenas alguns dos serviços acessíveis publicamente enquanto mantém os outros protegidos.
Para seguir as instruções detalhadas desta tarefa diretamente no console do Google Cloud, clique em Orientação:
Antes de começar
- Faça login na sua conta do Google Cloud. Se você começou a usar o Google Cloud agora, crie uma conta para avaliar o desempenho de nossos produtos em situações reais. Clientes novos também recebem US$ 300 em créditos para executar, testar e implantar cargas de trabalho.
-
No console do Google Cloud, na página do seletor de projetos, selecione ou crie um projeto do Google Cloud.
-
Verifique se a cobrança está ativada para o seu projeto do Google Cloud. Saiba como verificar se o faturamento está ativado em um projeto.
-
No console do Google Cloud, na página do seletor de projetos, selecione ou crie um projeto do Google Cloud.
-
Verifique se a cobrança está ativada para o seu projeto do Google Cloud. Saiba como verificar se o faturamento está ativado em um projeto.
Como iniciar o Cloud Shell
-
Clique em Ativar o Cloud Shell na parte superior da janela do console.
Uma sessão do Cloud Shell é aberta em um novo frame na parte inferior do console e um prompt de linha de comando é exibido. A inicialização da sessão do shell pode levar alguns segundos.
-
Digite o seguinte comando no Cloud Shell para exibir os códigos dos seus projetos:
gcloud projects list
-
Execute o comando a seguir para definir o projeto padrão, em que
YOUR-PROJECT-ID
é o ID do projeto que você quer usar neste guia de início rápido:gcloud config set project YOUR-PROJECT-ID
Como receber o código de amostra
Digite o seguinte comando no Cloud Shell para conseguir o aplicativo de amostra:
git clone https://github.com/GoogleCloudPlatform/python-docs-samples.git
Acesse o diretório que contém o código de amostra:
cd python-docs-samples/appengine/standard_python3/hello_world/
Como implantar o aplicativo
-
Use
gcloud
para implantar o aplicativo no App Engine:gcloud app deploy
-
O
target url:
é exibido no formatohttps://YOUR_PROJECT_ID.appspot.com
. Para acessar o aplicativo, navegue até esse URL em um navegador da Web.
Como ativar o IAP
Selecionar um projeto
-
Acesse a página "Identity-Aware Proxy".
Acessar a página "Identity-Aware Proxy" - Se você ainda não tiver um projeto ativo, precisará selecionar o projeto que você quer proteger com o IAP. Selecione o projeto em que você implantou o aplicativo de amostra.
Como configurar a tela de consentimento do OAuth
Se você ainda não configurou a tela de consentimento do OAuth do seu projeto, precisará fazê-lo. É necessário usar um endereço de e-mail e o nome do produto para isso.
-
Acesse a tela de consentimento OAuth.
Configurar tela de consentimento - Em E-mail de suporte, selecione o endereço de e-mail que você quer exibir como um contato público. O endereço de e-mail precisa pertencer à conta de usuário conectada no momento ou a um grupo do Google a que o usuário pertence no momento.
- Digite o Nome do aplicativo que você quer exibir.
- Adicione os detalhes opcionais que você quiser.
- Clique em Salvar.
Para alterar as informações na tela de consentimento do OAuth posteriormente, como o nome do produto ou o endereço de e-mail, repita as etapas anteriores.
Como configurar o acesso do IAP
- Acesse a página Identity-Aware Proxy.
Acessar a página "Identity-Aware Proxy" - Selecione o recurso que você quer modificar marcando a caixa à esquerda. No painel lateral à direita, clique em Adicionar membro.
-
Na caixa de diálogo Adicionar membros, adicione os endereços
de e-mail de grupos ou indivíduos a que você quer conceder o papel
Usuário do app da Web protegido pelo IAP no projeto.
Os seguintes tipos de contas podem ser membros:
- Conta do Google: user@gmail.com
- grupo do Google: admins@googlegroups.com
- Conta de serviço: server@example.gserviceaccount.com
- Domínio do G Suite: example.com
Inclua uma Conta do Google a que você tenha acesso.
Para tornar um recurso acessível publicamente (enquanto recursos irmãos estão restritos), conceda o papel Usuário do app da Web protegido pelo IAP a "allUsers" ou "allAuthenticatedUsers". A diferença entre os dois é explicada na seção Acesso público.
- Ao terminar de adicionar membros, clique em Adicionar.
Ativando o IAP
-
Na página Identity-Aware Proxy, em Recursos HTTPS, localize o aplicativo do App Engine a que você quer restringir o acesso. A coluna Publicado mostra o URL do app. Para ativar o IAP para esse app,
- Para ativar o IAP, você precisa das permissões
appengine.applications.update
,clientauthconfig.clients.create
eclientauthconfig.clients.getWithSecret
. Elas são concedidas por papéis como o de editor do projeto. Para mais informações, consulte Como gerenciar o acesso a recursos protegidos pelo IAP.
- Para ativar o IAP, você precisa das permissões
- Para confirmar que você quer proteger o aplicativo com o IAP, clique em Ativar na janela Ativar IAP que aparecerá. Após a ativação, o IAP exigirá credenciais de login para todas as conexões com o aplicativo.
Testar a autenticação do usuário
Acesse o URL do app usando uma conta do Google que você adicionou ao IAP com o papel Usuário do app da Web protegido pelo IAP, conforme descrito acima. Você precisa ter acesso irrestrito a ele.
Use uma janela anônima no Chrome para acessar o app e faça login quando solicitado. Se você tentar acessar o app com uma conta que não está autorizada com o papel Usuário do app da Web protegido pelo IAP, será exibida uma mensagem informando que você não têm acesso.
A seguir
- Saiba mais sobre Como conseguir a identidade do usuário e desenvolver seu próprio aplicativo do App Engine.