API Users para serviços agrupados antigos

ID da região

O REGION_ID é um código abreviado que a Google atribui com base na região que seleciona quando cria a sua app. O código não corresponde a um país ou uma província, embora alguns IDs de regiões possam parecer semelhantes aos códigos de países e províncias usados frequentemente. Para apps criadas após fevereiro de 2020, REGION_ID.r está incluído nos URLs do App Engine. Para apps existentes criadas antes desta data, o ID da região é opcional no URL.

Saiba mais acerca dos IDs de regiões.

A API Users permite que uma aplicação:

  • Detetar se o utilizador atual tem sessão iniciada.
  • Redirecionar o utilizador para a página de início de sessão adequada para iniciar sessão.
  • Peça ao utilizador da aplicação para criar uma nova Conta Google se ainda não tiver uma.

Enquanto um utilizador tem sessão iniciada na aplicação, a app pode aceder ao endereço de email. A app também pode detetar se o utilizador atual é um administrador (também denominado "utilizador administrador"), o que facilita a implementação de áreas da app apenas para administradores.

Autenticação do utilizador

O exemplo seguinte saúda um utilizador que iniciou sessão na app com uma mensagem personalizada e um link para terminar sessão. Se o utilizador não tiver sessão iniciada, a app oferece um link para a página de início de sessão das Contas Google.

Impor o início de sessão e o acesso de administrador com o app.yaml

Se tiver páginas que exijam que o utilizador tenha sessão iniciada para aceder, pode aplicar esta restrição no seu ficheiro app.yaml

A configuração do controlador também pode exigir que o utilizador seja um administrador registado para a aplicação; ou seja, o utilizador tem de ter a função de visualizador, editor, proprietário ou administrador do App Engine. Isto facilita a criação de secções do site apenas para administradores, sem ter de implementar um mecanismo de autorização separado.

Para saber como configurar a autenticação para URLs, veja como exigir o início de sessão ou o estado de administrador na referência app.yaml.

Opções de autenticação

A sua app pode autenticar utilizadores através de uma destas opções:

  • Uma Conta Google
  • Uma conta no seu domínio do Google Workspace

Escolher uma opção de autenticação

Depois de criar a app, pode escolher a opção de autenticação que quer usar. Por predefinição, a sua app usa Contas Google para autenticação. Para escolher outra opção, como o domínio do Google Workspace, aceda à página de definições do seu projeto na Google Cloud consola e clique em Editar. No menu pendente Autenticação Google, selecione o tipo de autenticação pretendido e, de seguida, clique em Guardar.

Iniciar e terminar sessão

Uma aplicação pode detetar se um utilizador iniciou sessão na app com a opção de autenticação escolhida pela app. Se o utilizador não tiver sessão iniciada, a app pode direcioná-lo para as Contas Google para iniciar sessão ou criar uma nova Conta Google. A app obtém o URL da página de início de sessão chamando um método da API Users. A app pode apresentar este URL como um link ou pode emitir um redirecionamento HTTP para o URL quando o utilizador visita uma página que requer autenticação.

Se a sua app usar Contas Google ou o Google Workspace para autenticação, o nome da sua aplicação aparece na página de início de sessão quando o utilizador inicia sessão na sua aplicação. O nome apresentado é o nome da aplicação que especificou quando registou a aplicação. Pode alterar este nome no campo Nome da aplicação da página Credenciais da Google Cloud consola Google Cloud .

Assim que o utilizador tiver iniciado sessão ou criado uma Conta Google, é redirecionado de volta para a sua aplicação. A app fornece o URL de redirecionamento ao método que gera o URL de início de sessão.

A API Users inclui um método para gerar um URL para terminar sessão na app. O URL de saída anula a autenticação do utilizador na app e, em seguida, redireciona-o de volta para o URL da app sem apresentar nada.

Um utilizador não tem sessão iniciada numa aplicação até que a aplicação lhe peça para o fazer e introduza o endereço de email e a palavra-passe da respetiva conta. Isto é verdade mesmo que o utilizador tenha iniciado sessão noutras aplicações com a respetiva Conta Google.

Aceder às informações da conta

Enquanto um utilizador tem sessão iniciada numa app, a app pode aceder ao endereço de email da conta para cada pedido que o utilizador faz à app. A app também pode aceder a um ID do utilizador que identifica o utilizador de forma exclusiva, mesmo que o utilizador altere o endereço de email da respetiva conta.

A app também pode determinar se o utilizador atual é um administrador da app. Um utilizador administrador é qualquer utilizador que tenha a função de leitor, editor, proprietário ou administrador do App Engine. Pode usar esta funcionalidade para criar funcionalidades administrativas para a app, mesmo que não autentique outros utilizadores. As APIs Go, Java, PHP e Python facilitam a configuração de URLs como "apenas para administradores".

Contas Google e o servidor de programação

O servidor de desenvolvimento simula o sistema de Contas Google através de um ecrã de início de sessão falso. Quando a sua aplicação chama a API Users para obter o URL do ecrã de início de sessão, a API devolve um URL de servidor de desenvolvimento especial que pede um endereço de email, mas não uma palavra-passe. Pode escrever qualquer endereço de email neste comando e a app vai comportar-se como se tivesse sessão iniciada com uma conta com esse endereço.

O ecrã de início de sessão falso também inclui uma caixa de verificação que indica se a conta falsa é um administrador, ou seja, se a conta tem a função de visualizador, editor, proprietário ou administrador do App Engine. Se selecionar esta caixa, a app vai comportar-se como se tivesse sessão iniciada com uma conta de administrador.

Da mesma forma, a API Users devolve um URL de saída que cancela o início de sessão falso.