Configurações de administrador: autenticação do Google

A página Autenticação do Google na seção Autenticação do menu Administrador permite configurar o OAuth do Google no Looker.

Visão geral do recurso

O Looker pode realizar a autenticação usando o OAuth do Google para usuários que têm contas registradas no Google Workspace.

  • As organizações que usam o Google Workspace podem autenticar usuários do Looker que têm Contas do Google.
  • Os usuários fazem login no Looker autenticando-se com a Conta do Google.
  • As novas Contas do Google recebem acesso automático ao Looker. Não é necessário convidar usuários para o Looker separadamente. Você define o papel padrão para novos usuários, o que pode limitar o acesso deles a funcionalidades e dados.
  • As organizações podem configurar o espelhamento de Grupos do Google para atribuir automaticamente papéis e grupos do Looker com base na associação aos Grupos do Google.
  • Quando ativado, o Looker autentica os usuários somente com o Google OAuth, a menos que a opção "login alternativo" esteja selecionada (consulte a seção a seguir sobre Ativar logins por e-mail enquanto o Google Auth está ativado).
  • O avatar do Google de um usuário aparece na barra de navegação em vez do símbolo de usuário padrão.
  • Ao ativar o Google OAuth, a instância do Looker pode mesclar as contas de usuário atuais com o domínio registrado no Google, mas apenas para contas com o endereço de e-mail correspondente ao domínio. Todas as outras contas que não são de administrador vão perder a capacidade de fazer login.
  • Todos os usuários no domínio especificado têm acesso à instância do Looker.
  • As permissões para novos usuários do Google são definidas por padrão como acesso básico a uma lista especificada de modelos (que pode, opcionalmente, ser acesso a zero modelos). As permissões podem ser atualizadas por um administrador após a criação da conta.
  • As novas contas do Looker que se autenticam usando o OAuth do Google não podem mudar para a autenticação por senha, mesmo que o OAuth esteja desativado na instância do Looker.

Requisitos preliminares

Para usar o OAuth do Google, é necessário:

Para usar o espelhamento de Grupos do Google, os seguintes requisitos adicionais se aplicam:

  • No projeto do Google Cloud que contém o cliente OAuth, a API Cloud Identity (cloudidentity.googleapis.com) precisa estar ativada.
  • Para instâncias do Looker hospedadas pelo cliente, o host da instância precisa ter acesso à Internet de saída por HTTPS (cloudidentity.googleapis.com:443).
  • Os usuários precisam ter a permissão VIEW_MEMBERSHIP nos Grupos do Google a que pertencem. Nas configurações dos Grupos do Google, defina o campo Quem pode ver os participantes como Participantes do grupo.
  • O espelhamento de Grupos do Google não é compatível com instâncias do Looker que estão no modo compatível com FIPS.

Como ativar a autenticação com o OAuth do Google

Para ativar a autenticação com o Google OAuth, um administrador precisa realizar etapas no Google e no Looker, conforme descrito nas seções a seguir.

Configuração no Google

As etapas para ativar o OAuth do Google no lado do Google são descritas nesta seção. A descrição genérica dessas etapas está na página de suporte do Google sobre como configurar o OAuth 2.0. Você também pode consultar a documentação de ajuda do console doGoogle Cloud .

  1. Acesse o console doGoogle Cloud .

  2. Clique na seta para baixo no menu suspenso Selecionar um projeto. Talvez você veja o nome de um projeto atual no menu suspenso. Clique na seta para baixo para acessar a opção de criar um novo projeto.

  3. Na página Selecionar um projeto, clique em Novo projeto.

    O console do Google Cloud exibe a página Novo projeto.

  4. Preencha as informações na página Novo projeto e clique em Criar.

    Quando o console do Google Cloud terminar de criar o novo projeto, o Google vai retornar ao console do Google Cloud e mostrar o novo projeto.

  5. Opcional: se você planeja usar o espelhamento de grupos do Google, ative a API Cloud Identity no projeto do Google Cloud . Ativar essa API torna o escopo https://www.googleapis.com/auth/cloud-identity.groups.readonly visível quando você configura a tela de permissão OAuth. É preciso ter o papel de Administrador do Service Usage (roles/serviceusage.serviceUsageAdmin) do Identity and Access Management (IAM) para ativar as APIs.

    Ativar a API

  6. No menu à esquerda, selecione APIs e serviços > Credenciais.

  7. Na página Credenciais, clique no botão Criar credenciais e selecione ID do cliente OAuth no menu suspenso.

    O console do Google Cloud exibe a página Criar ID do cliente OAuth.

  8. O console do Google Cloud exige que você configure uma tela de permissão OAuth, que permite que os usuários escolham como conceder acesso aos dados particulares deles e fornece um link para os Termos de Serviço e a Política de Privacidade da sua organização. Clique em Configurar tela de permissão. Se você já tiver configurado o consentimento do OAuth para um projeto anterior, essa opção não vai aparecer, e você poderá pular para a etapa 13.

    O console do Google Cloud exibe a página Tela de permissão OAuth.

  9. Insira o domínio da sua instância do Looker no campo Domínios autorizados. Por exemplo, se o Looker hospedar sua instância em https://mycompany.looker.com, o domínio será looker.com. Para implantações do Looker hospedadas pelo cliente, insira o domínio em que você hospeda o Looker.

  10. Configure a tela de permissão OAuth e clique em Salvar e continuar.

  11. Na página Escopos, configure os escopos da seguinte maneira:

    • Se você planeja usar o espelhamento de Grupos do Google, clique em Adicionar ou remover escopos. Encontre o escopo https://www.googleapis.com/auth/cloud-identity.groups.readonly, marque a caixa de seleção ao lado dele e clique em Atualizar. Se você não encontrar esse escopo, verifique se ativou a API Cloud Identity no projeto do Google Cloud .
    • Se você não planeja usar o espelhamento de Grupos do Google, não é necessário fazer mais nenhuma configuração de escopo.

    Clique em Salvar e continuar.

  12. Na página Resumo, clique em Voltar ao painel.

    O console do Google Cloud retorna você à página Criar ID do cliente OAuth.

  13. Em Tipo de aplicativo, selecione Aplicativo da Web.

  14. No campo Nome, insira um nome para o ID do cliente OAuth.

  15. No campo Origens JavaScript autorizadas, insira o URL da instância do Looker, incluindo o https://. Exemplo:

    • Se o Looker hospedar sua instância: https://mycompany.looker.com
    • Se você tiver uma instância do Looker hospedada pelo cliente: https://looker.mycompany.com
    • Se a instância do Looker exigir um número de porta: https://looker.mycompany.com:9999
  16. No campo URIs de redirecionamento autorizados, insira o URL da sua instância do Looker, seguido por /oauth2callback. Por exemplo, https://mycompany.looker.com/oauth2callback ou https://looker.mycompany.com:9999/oauth2callback.

  17. Clique em Criar.

  18. Copie os valores do ID do cliente e da chave secreta do cliente. Você vai precisar deles para configurar o Looker.

Configuração no Looker

Para ativar o OAuth do Google no Looker, siga estas etapas.

  1. No aplicativo do Looker, faça login como administrador e clique no menu suspenso Administrador para abrir o menu Administrador.

  2. No grupo Autenticação, clique em Google. O Looker exibe a página Google Authenticator.

  3. Clique em Ativado para exibir e editar as configurações do OAuth do Google. Isso não ativa imediatamente a autenticação do Google. Você precisa confirmar sua escolha mais tarde.

  4. Insira as configurações do Google Auth.

    • ID do cliente e chave secreta do cliente: copie e cole esses valores da página do cliente OAuth do Google, conforme discutido nas instruções de configuração anteriores do Google.
    • Domínios: os nomes de domínio da sua organização gerenciados pelo Google. Qualquer usuário do Google no domínio especificado pode fazer login na sua instância do Looker. Se você controla vários domínios do Google, pode inseri-los separados por vírgulas.
  5. Insira as Opções de migração, que controlam o comportamento da instância do Looker durante a transição para o OAuth do Google.

    • Login alternativo para administradores e usuários especificados: permite que administradores e usuários especificados continuem fazendo login com e-mail e senha. Essa configuração ativa um método de fallback essencial para evitar um bloqueio completo se o projeto do Google Cloud que hospeda o cliente OAuth do Looker for excluído ou desativado (o que pode resultar em um erro 401 deleted_client mesmo após a restauração do projeto) ou se o OAuth do Google falhar por outros motivos. Essa configuração é altamente recomendada e está descrita em Ativar logins por e-mail enquanto o Google Auth está ativado.
    • Mesclar usuários usando: converte os usuários que têm endereços de e-mail nos Domínios especificados para usar o OAuth do Google no próximo login (como E-mail/senha do Looker). Essa configuração é recomendada.
    • Papéis para novos usuários: especifica a funcionalidade e o acesso ao modelo que os novos usuários não administradores têm. Essa lista pode ser atualizada depois. Se deixado em branco, os novos usuários autenticados pelo Google terão funcionalidades limitadas na plataforma do Looker até que um administrador adicione um papel à conta deles. Como todos os usuários no seu domínio do Google poderão fazer login no Looker, considere especificar um papel padrão para novos usuários que limite o acesso de forma adequada.
  6. Configure Grupos e papéis para espelhar os Grupos do Google nos grupos do Looker e atribuir papéis automaticamente:

    Se você tiver Grupos do Google gerenciados, o Looker poderá criar grupos do Looker que espelham os membros dos seus Grupos do Google. Isso significa que você não precisa configurar os usuários diretamente no Looker, mas pode gerenciar o acesso deles gerenciando os membros dos Grupos do Google. Além disso, é possível usar grupos do Looker para atribuir funções aos membros do grupo, definir controles de acesso ao conteúdo, controlar o acesso a recursos e dados e atribuir atributos de usuário.

    Para que o espelhamento de grupos funcione corretamente, os usuários precisam ter a permissão VIEW_MEMBERSHIP nos Grupos do Google a que pertencem, o que permite que o Looker verifique as associações de grupo no login. Para conceder essa permissão nas configurações dos Grupos do Google, defina o campo Quem pode ver os participantes como Participantes do grupo.

    Para ativar o espelhamento de grupos, siga estas etapas:

    1. Ative a opção Espelhar Grupos do Google.
    2. Clique em Gerenciar grupos para abrir a configuração de mapeamento de grupos.
    3. Preencha os campos a seguir para cada Grupo do Google que você quer espelhar:
      • Nome do grupo do Looker: insira um nome para o grupo do Looker. Esse nome aparece na página Grupos no Looker.
      • ID do Grupo do Google: digite o nome ou endereço de e-mail do Grupo do Google que será espelhado.
      • Papéis: selecione um ou mais papéis do Looker para atribuir aos membros do grupo.

    O Looker cria um grupo para cada Grupo do Google que você adiciona à configuração. É possível ver esses grupos na página Grupos no Looker.

    O Looker aplica os grupos espelhados do Looker (e todos os papéis e acessos associados) quando os usuários fazem login na instância do Looker. As mudanças nas associações a grupos nos Grupos do Google são atualizadas no próximo login de cada usuário.

Espelhar Grupos do Google

Depois de configurar o espelhamento de Grupos do Google, é possível editar ou desativar os grupos espelhados e configurar opções avançadas de gerenciamento de funções, conforme descrito nas seções a seguir.

Editar grupos espelhados

Quando você faz mudanças na associação de um grupo do Google, elas são propagadas automaticamente para a associação do grupo espelhado do Looker e validadas no próximo login de cada usuário.

Se você editar o Nome do grupo do Looker ou a Função atribuída a um grupo na página Autenticação do Google, isso vai mudar a forma como o grupo espelhado aparece na página Grupos ou as funções atribuídas ao grupo, mas não vai mudar os membros do grupo.

Se você mudar o nome ou o e-mail no campo ID do Grupo do Google para um novo ID, os membros do grupo espelhado do Looker serão alterados para os membros do novo Grupo do Google, mantendo o nome e os papéis do grupo definidos na página Autenticação do Google.

O Looker aplica as edições feitas em um grupo espelhado aos usuários desse grupo quando eles fizerem login no Looker novamente.

Como desativar grupos espelhados

Se você quiser parar de espelhar seus Grupos do Google no Looker, desative a opção Espelhar Grupos do Google na página Autenticação do Google. Desativar o botão resulta no seguinte comportamento:

  • Qualquer grupo do Google espelhado sem usuários é excluído imediatamente.
  • Qualquer Grupo do Google espelhado que contenha usuários é marcado como órfão. Não é mais possível adicionar ou remover usuários de grupos órfãos. Se nenhum usuário de um grupo órfão fizer login em até 31 dias, o grupo será excluído.

Gerenciamento avançado de papéis

Se a opção Espelhar Grupos do Google estiver ativada, a seção Gerenciamento avançado de funções vai mostrar opções que determinam o rigor com que os administradores do Looker podem configurar grupos e usuários do Looker que foram espelhados do Google.

Se você quiser que a configuração de grupos e usuários do Looker corresponda estritamente à configuração dos Grupos do Google, selecione todas as opções de Gerenciamento avançado de papéis. Quando todas as opções estão ativadas, os administradores do Looker não podem modificar as associações de grupos espelhados diretamente e só podem atribuir funções aos usuários pelos Grupos do Google.

Se quiser mais flexibilidade para personalizar grupos no Looker, deixe essas opções desmarcadas. Seus grupos do Looker ainda vão espelhar a configuração dos Grupos do Google, mas você poderá realizar outras ações de gerenciamento de grupos e usuários no Looker, como adicionar usuários do Google a grupos integrados do Looker ou atribuir papéis diretamente a usuários do Google.

A seção Gerenciamento avançado de papéis contém as seguintes opções:

  • Impedir que usuários individuais do Google recebam papéis diretos: ativar essa opção impede que os administradores do Looker atribuam papéis do Looker diretamente aos usuários do Google. Os usuários do Google recebem papéis apenas por meio de associações a grupos. Se os usuários do Google puderem participar de grupos integrados (não espelhados) do Looker, eles ainda poderão herdar papéis dos Grupos do Google espelhados e dos grupos integrados do Looker. Os usuários do Google que receberam papéis diretamente terão esses papéis removidos no próximo login.

  • Impedir a associação direta a grupos que não são do Google: essa opção impede que os administradores do Looker adicionem membros de grupos espelhados diretamente a grupos integrados do Looker que não fazem parte da configuração do grupo espelhado na página Autenticação do Google.

    Se essa opção estiver selecionada, todos os usuários do Google que foram atribuídos a grupos integrados do Looker serão removidos desses grupos no próximo login.

    Se essa opção estiver desmarcada, os administradores do Looker poderão adicionar usuários do Google diretamente aos grupos integrados do Looker.

  • Impedir a herança de papéis de grupos que não são do Google: essa opção impede que os membros de grupos espelhados herdem papéis de grupos integrados do Looker. Se os Grupos do Google espelhados puderem ser membros de grupos integrados do Looker, os usuários do Google poderão manter a associação a esses grupos, mas os usuários do Google que herdaram papéis de um grupo integrado vão perder esses papéis no próximo login.

    Se essa opção estiver desmarcada, os grupos espelhados ou os usuários do Google adicionados como membros de um grupo integrado do Looker vão herdar as funções atribuídas a esse grupo integrado.

  • A autenticação requer papel: se essa opção estiver ativada, os usuários do Google precisarão ter um papel atribuído no Looker. Se essa opção estiver ativada, o Looker vai exigir que os usuários do Google tenham um papel atribuído para fazer login no Looker.

    Se essa opção estiver desmarcada, os usuários do Google poderão se autenticar no Looker mesmo que não tenham um papel atribuído. Um usuário sem função atribuída não poderá ver dados nem realizar ações no Looker, mas poderá fazer login.

Testar a autenticação do usuário

  1. Clique em Testar autenticação do Google para usar as configurações atuais e tentar autenticar o navegador atual em uma nova janela. Essa ação não salva as configurações atuais nem as aplica à instância do Looker.

    Se você não tiver feito login no Google, será necessário fazer login e dar consentimento para usar as informações da sua Conta do Google. Esse fluxo usa as configurações personalizadas da tela de permissão que você usou na configuração do Google.

    Se tudo der certo, uma seção User Info vai aparecer com seu nome, e-mail e domínio, além de todos os Grupos do Google espelhados detectados na sua conta. A presença desta seção Informações do usuário mostra que esse usuário seria autenticado pelo Looker.

    Em caso de falha, as descrições de erro aparecem. Veja alguns problemas comuns:

    • ID ou chave secreta do cliente copiados incorretamente. Eles precisam ser copiados e colados na íntegra.
    • O usuário está fora do domínio. Se você encontrar uma seção Informações pessoais, mas não Informações do usuário, é provável que o usuário não esteja no domínio especificado. Isso mostra que a pessoa se autenticou corretamente no Google, mas não está usando uma Conta do Google que você escolheu para permitir na sua instância do Looker.
    • Um URL do Looker ou de redirecionamento não está configurado corretamente no Google para sua instância do Looker.
    • Se os Grupos do Google não forem carregados, verifique se a API Cloud Identity está ativada no projeto do Google Cloud , se o escopo https://www.googleapis.com/auth/cloud-identity.groups.readonly foi adicionado e se o usuário tem permissões VIEW_MEMBERSHIP nos Grupos do Google.
  2. Para salvar e implementar mudanças, selecione Confirmei a configuração acima e quero ativar a aplicação global dela. Clique em Atualizar.

Como configurar a autenticação do Google usando a API

Os administradores podem ler e atualizar as configurações de autenticação do Google e os mapeamentos de papéis de grupo de forma programática usando os endpoints google_config na API Looker. Para mais informações, consulte a referência da API Looker.

Dicas

  • Para testar o ciclo de autenticação completo, saia do Google e veja que o Google solicita que você faça login novamente quando tentar fazer login no Looker.

  • No Google, você pode clicar em Conta no menu suspenso pessoal (ao lado do seu endereço de e-mail no canto superior direito de uma página do Google Workspace) para gerenciar sua conta pessoal.

    Nessa página de gerenciamento, há uma guia Segurança com uma seção Permissões da conta. Ao clicar em Apps e sites Ver tudo, você (como usuário) pode ver e gerenciar os serviços e apps que têm permissões concedidas.

    Ao clicar nas permissões do Looker que você concedeu para fazer login, os detalhes que os usuários veem na tela de permissão personalizada anteriormente são mostrados. Você também pode clicar em Revogar acesso para que, na próxima vez que fizer login no Looker (ou testar a autorização), a tela de permissão apareça novamente. Use esse fluxo de trabalho para personalizar sua tela de permissão e conferir o que os usuários vão ver.

Solução de problemas

Para resolver problemas de autenticação, consulte o painel de atividade do usuário na Atividade do sistema. Esse painel tem blocos que mostram falhas de login recentes e incluem o método de autenticação usado, a mensagem de erro retornada e o horário da tentativa.

  • Se a tentativa de login de um usuário falhar, verifique se ele tem um nome e um sobrenome nas Contas do Google. Se o usuário tiver excluído o nome ou o sobrenome da Conta do Google, talvez o Looker não consiga autenticar o usuário com o OAuth do Google.

  • Se a tentativa de login de um usuário falhar e o Looker exibir um erro como User not in the authorized domain, verifique o campo hd da resposta JSON. Se o campo hd tiver um domínio, verifique se ele está registrado na sua conta do Google Workspace. Se o campo hd estiver vazio, use a Ferramenta de transferência de usuários não gerenciados para convidar o usuário a converter a conta dele em uma conta gerenciada no seu domínio.

  • Se a tentativa de login de um usuário falhar, mas o Looker não exibir uma mensagem de erro, talvez o usuário tenha editado o nome da conta do Google Workspace e excluído o nome ou o sobrenome. Nessa situação, o nome da conta do Google Workspace pode ainda parecer completo no Admin Console, que talvez não mostre as edições do usuário. Para evitar esse problema, os admins do Google Workspace podem desativar a opção Permitir que os usuários personalizem essa configuração.

  • Se a autenticação do Google retornar um erro 401 deleted_client, isso indica que o projeto do Google Cloud que hospeda o cliente OAuth do Looker foi excluído ou desativado. Mesmo que o projeto do Google Cloud seja restaurado, o cliente OAuth pode continuar falhando com o erro deleted_client, resultando em um bloqueio completo de login para todos os usuários. Se a autenticação do Google for o único método de autenticação ativado, esse bloqueio vai impedir o acesso até mesmo de administradores.

    Para evitar o bloqueio completo em caso de exclusão ou falha do cliente OAuth, ative a configuração Login alternativo para administradores. Essa configuração garante que os administradores tenham um método de login alternativo para acessar a instância do Looker e atualizar as configurações de autenticação.

Ativar logins por e-mail enquanto o Google Auth está ativado

As novas Contas do Google recebem acesso automático ao Looker, então não é necessário adicionar usuários que estão no seu domínio do Google.

Para adicionar um usuário com um endereço de e-mail que não está no seu domínio do Google:

  1. Ative a opção Login alternativo para admins e usuários especificados na página do Google Auth.
  2. Crie ou modifique uma função do usuário para adicionar a permissão login_special_email.
  3. Acesse Adicionar usuários no painel de usuários (/admin/users/new).
  4. Adicione os endereços de e-mail que você quer incluir e as funções que esses usuários devem ter, que precisam incluir uma função com a permissão login_special_email.
  5. Agora esses usuários podem fazer login usando https://mycompany.looker.com/login/email (URL oculto).

Como desativar o Google Auth depois que ele foi ativado

Se você quiser desativar a autenticação do Google na sua instância do Looker depois que ela já tiver sido ativada, considere o seguinte:

  • Os usuários criados antes da adição da autenticação do Google e que já configuraram um login e uma senha de e-mail normais ainda vão funcionar.
  • Os usuários criados depois que o Google Authenticator foi adicionado não poderão mais fazer login. Embora as contas ainda existam, eles não têm como acessá-las, e as contas ficam efetivamente órfãs.

Por isso, sugerimos evitar essa rota. Se você precisar seguir esse caminho, talvez haja um método para corrigir as contas órfãs usando a API Looker. Entre em contato com o suporte do Looker para receber mais orientações.