Pode configurar a sua conta do Cloud ID ou do Google Workspace para usar o início de sessão único (SSO). Quando ativa o SSO, não é pedido aos utilizadores que introduzam uma palavra-passe quando tentam aceder aos serviços Google. Em alternativa, são redirecionados para um fornecedor de identidade (IdP) externo para autenticação.
A utilização do SSO pode oferecer várias vantagens:
- Permite uma melhor experiência para os utilizadores, uma vez que podem usar as respetivas credenciais existentes para autenticar e não têm de introduzir credenciais com tanta frequência.
- Garante que o seu IdP existente permanece o sistema de registo para autenticar utilizadores.
- Não tem de sincronizar palavras-passe com o Cloud ID nem o Google Workspace.
Para usar o SSO, um utilizador tem de ter uma conta de utilizador no Cloud ID ou no Google Workspace e uma identidade correspondente no IdP externo. Por conseguinte, o SSO é usado frequentemente em combinação com uma origem autorizada externa que aprovisiona automaticamente utilizadores no Cloud ID ou no Google Workspace.
Processo de Início de sessão único
O Cloud ID e o Google Workspace suportam a linguagem de marcação de declarações de segurança (SAML) 2.0 para o Início de sessão único. O SAML é uma norma aberta para a troca de dados de autenticação e autorização entre um IdP SAML e fornecedores de serviços SAML. Quando usa o SSO para o Cloud ID ou o Google Workspace, o seu IdP externo é o IdP SAML e a Google é o fornecedor de serviços SAML.
A Google implementa a associação HTTP POST SAML 2.0. Esta associação especifica como as informações de autenticação são trocadas entre o IdP SAML e o fornecedor de serviços SAML. O diagrama seguinte ilustra um exemplo de como este processo funciona quando usa o SSO para aceder à Google Cloud consola.
- Direciona o navegador para a Google Cloud consola (ou qualquer outro recurso Google que exija autenticação).
- Uma vez que ainda não tem autenticação, a consola Google Cloud redireciona o seu navegador para o Início de sessão da Google.
- O Início de sessão do Google devolve uma página de início de sessão, pedindo-lhe que introduza o seu endereço de email.
- Introduz o seu endereço de email e envia o formulário.
- O Início de sessão do Google procura a conta do Cloud ID ou do Google Workspace associada ao seu endereço de email.
Uma vez que a conta do Cloud ID ou do Google Workspace associada tem o início de sessão único ativado, o Início de sessão Google redireciona o navegador para o URL do IdP externo configurado. Antes de emitir o redirecionamento, adiciona dois parâmetros ao URL,
RelayState
eSAMLRequest
.RelayState
contém um identificador que o IdP externo deve transmitir posteriormente.SAMLRequest
contém o pedido de autenticação SAML, um documento XML que foi descomprimido, codificado em base64 e codificado por URL. Na forma descodificada, o pedido de autenticação SAML tem um aspeto semelhante ao seguinte:<samlp:AuthnRequest ProviderName="google.com" IsPassive="false" AssertionConsumerServiceURL="https://www.google.com/a/example.com/acs" ...> <saml:Issuer xmlns:saml="...">google.com</saml:Issuer> <samlp:NameIDPolicy AllowCreate="true" Format="urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified"/> </samlp:AuthnRequest>
Este pedido de exemplo indica ao IdP externo que autentique o utilizador, crie uma afirmação SAML para o público
google.com
e a publique no serviço de consumo de afirmações (ACS) emhttps://www.google.com/a/example.com/acs
.O domínio incorporado no URL do ACS (
example.com
) corresponde ao domínio principal da sua conta do Google Workspace ou Cloud ID.Se usar a funcionalidade de emissor específico do domínio quando configurar o SSO, o emissor é
google.com/a/DOMAIN
em vez degoogle.com
, em queDOMAIN
é o domínio principal da sua conta do Cloud ID ou Google Workspace.Os passos realizados pelo IdP externo para efetuar a autenticação dependem do IdP e da respetiva configuração. Por exemplo, pode apresentar uma caixa de diálogo de início de sessão ou pedir a MFA ou uma impressão digital. Quando estes passos forem concluídos com êxito, a troca de SAML continua:
O IdP externo devolve uma página HTML especialmente criada que faz com que o seu navegador envie imediatamente um pedido HTTP POST para o URL do ACS. Este pedido contém dois parâmetros:
RelayState
, que contém o valor originalmente transmitido ao IdP no pedido de autenticação SAML.SAMLResponse
, que contém a declaração SAML codificada em base64. A declaração SAML é um documento XML que indica que o IdP autenticou o utilizador com êxito. Na forma descodificada, a declaração SAML tem um aspeto semelhante ao seguinte:<samlp:Response ...> ... <Assertion x...> <Issuer>https://idp.example.org/</Issuer> <Signature ...> ... </Signature> <Subject> <NameID Format="...:nameid-format:emailAddress">bob@example.org</NameID> ... </Subject> <Conditions NotBefore="..." NotOnOrAfter="..."> <AudienceRestriction> <Audience>google.com</Audience> </AudienceRestriction> </Conditions> <AttributeStatement> ... </AttributeStatement> <AuthnStatement AuthnInstant="..." ...> <AuthnContext> <AuthnContextClassRef>urn:oasis:names:tc:SAML:2.0:ac:classes:Password</AuthnContextClassRef> </AuthnContext> </AuthnStatement> </Assertion> </samlp:Response>
Esta afirmação de exemplo foi emitida para o público-alvo
google.com
(que corresponde ao emissor do pedido de autenticação SAML) e indica que o IdPhttps://idp.example.org/
autenticou o utilizadorbob@example.org
.A declaração SAML também contém uma assinatura digital. O IdP cria esta assinatura através da chave privada de um certificado de assinatura. A chave privada só é conhecida pelo IdP. A chave pública correspondente faz parte da configuração do SSO no Cloud ID ou no Google Workspace e é partilhada com o Início de sessão do Google.
A declaração SAML também contém uma assinatura digital que permite ao fornecedor de serviços SAML validar a autenticidade da declaração.
O navegador publica a declaração SAML no ponto final de ACS da Google.
O ponto final de ACS valida a assinatura digital da declaração SAML. Esta verificação é feita para garantir que a declaração tem origem no IdP externo fidedigno e não foi adulterada. Partindo do princípio de que a assinatura é válida, o ponto final do ACS analisa o conteúdo da afirmação, que inclui a validação das respetivas informações do público-alvo e a leitura do atributo
NameID
.O ponto final do ACS procura a sua conta de utilizador fazendo a correspondência do
NameID
da declaração SAML com o endereço de email principal do utilizador. Em seguida, o ponto final inicia uma sessão.Com base nas informações codificadas no parâmetro
RelayState
, o ponto final determina o URL do recurso ao qual pretendia aceder originalmente e é redirecionado para a consola Google Cloud .
Início de sessão iniciado pelo IdP
O processo descrito na secção anterior é, por vezes, denominado início de sessão iniciado pelo fornecedor de serviços porque o processo começa no fornecedor de serviços, que, no exemplo anterior, é a Google Cloud consola.
O SAML também define um fluxo alternativo denominado início de sessão iniciado pelo IdP, que começa no IdP. A Google não suporta este fluxo, mas pode alcançar resultados semelhantes através do seguinte URL para iniciar um início de sessão iniciado pelo fornecedor de serviços:
https://www.google.com/a/DOMAIN/ServiceLogin?continue=https://console.cloud.google.com/
Neste exemplo, DOMAIN
é o domínio principal
da sua conta do Cloud ID ou do Google Workspace.
Autenticação multifator
Para proteger as contas de utilizador contra o acesso não autorizado, pode exigir que os utilizadores forneçam um segundo fator durante a autenticação. Existem duas formas de implementar a autenticação multifator quando usa o início de sessão único:
- Se o seu IdP externo suportar a autenticação multifator, pode fazer com que execute a autenticação multifator como parte do processo de início de sessão baseado em SAML. Neste caso, não é necessária nenhuma configuração adicional no Cloud Identity nem no Google Workspace.
- Se o seu IdP não suportar a autenticação multifator, pode configurar a sua conta do Cloud ID ou Google Workspace para efetuar a validação em dois passos imediatamente após um utilizador ter sido autenticado com o IdP externo.
Trabalhar em rede
Na associação de redirecionamento HTTP SAML 2.0, o IdP e o fornecedor de serviços não comunicam diretamente. Em vez disso, toda a comunicação é retransmitida através do navegador do utilizador, conforme mostrado no diagrama seguinte:
Dada esta arquitetura, não é necessário que o IdP seja exposto na Internet nem que tenha acesso à Internet, desde que os utilizadores consigam aceder ao mesmo a partir da sua rede empresarial.
Configuração do IdP externo
O Cloud ID e o Google Workspace permitem-lhe configurar o início de sessão único através das seguintes funcionalidades:
Perfis SAML: pode criar um perfil SAML para cada IdP com o qual quer fazer a integração. Para cada utilizador, grupo ou unidade organizacional na sua conta do Cloud ID ou Google Workspace, decide se têm de usar o SSO e que perfil SAML têm de usar.
Perfil SAML antigo (anteriormente denominado perfil de SSO organizacional): pode usar o perfil SAML antigo para integrar com um único IdP. Para cada utilizador, grupo ou unidade organizacional na sua conta do Cloud ID ou Google Workspace, decide se têm de usar o SSO ou não.
A forma correta de configurar o IdP depende de usar perfis SAML ou o perfil SAML antigo. A tabela seguinte resume as definições que normalmente têm de ser configuradas num IdP externo para ajudar a garantir a compatibilidade.
Configuração | Definição obrigatória para o perfil SAML antigo |
Definição obrigatória para perfis SAML |
Observações |
---|---|---|---|
ID do nome | Endereço de email principal do utilizador | Endereço de email principal do utilizador | |
Formato do ID do nome | urn:oasis:names:tc:SAML:1.1: |
urn:oasis:names:tc:SAML:1.1: |
|
ID da entidade |
Se a funcionalidade de emissor específico de domínios estiver ativada:
Se a funcionalidade de emissor específico de domínios estiver desativada (predefinição):
Use a funcionalidade de emissor específico do domínio se quiser integrar várias contas do Google Workspace ou do Cloud ID com o mesmo IdP. Caso contrário, deixe-a desativada. |
ID da entidade exclusivo do seu perfil SAML. Consoante a data de criação do seu perfil SAML, o ID da entidade usa um dos seguintes formatos:
|
|
Padrão do URL do ACS (ou URL de redirecionamento) | https://www.google.com/a/* |
URL do ACS exclusivo do seu perfil SAML. Consoante a data de criação do seu perfil SAML, o URL usa um dos seguintes formatos:
|
|
Pedir assinatura | Desativar | Desativar | Os pedidos de autenticação SAML emitidos pelo Início de sessão Google nunca são assinados |
Assinatura de afirmações | Ativado | Ativado | As afirmações SAML têm de ser assinadas para permitir que o Início de sessão com o Google valide a respetiva autenticidade. Quando configura o SSO na consola do administrador, tem de carregar a chave pública do par de chaves de assinatura de tokens. |
Encriptação de afirmações | Desativar | Desativar | |
Algoritmo de assinatura | RSA-SHA256 | RSA-SHA256 | Por vezes, RSA-SHA256 é abreviado como RS256 |
O que se segue?
- Reveja as arquiteturas de referência para a integração com um IdP externo.
- Saiba como configurar o aprovisionamento de contas e o SSO com o Microsoft Entra ID ou o Active Directory.
- Leia as nossas Práticas recomendadas para a federação Google Cloud com um IdP externo.
Colaboradores
Autor: Johannes Passing | Arquiteto de soluções na nuvem