Configurações de administrador: autenticação SAML

A página SAML na seção Authentication do menu Admin permite configurar o Looker para autenticar usuários usando a Linguagem de marcação para autorização de segurança (SAML). Esta página descreve esse processo e inclui instruções para vincular grupos SAML a papéis e permissões do Looker.

Requisitos

O Looker mostra a página SAML na seção Autenticação do menu Administrador somente se as seguintes condições forem atendidas:

Se essas condições forem atendidas e você não encontrar a página SAML, abra uma solicitação de suporte para ativar o SAML na sua instância.

SAML e provedores de identidade

As empresas usam diferentes provedores de identidade (IdPs) para se coordenar com o SAML (por exemplo, Okta ou OneLogin). Os termos usados nas instruções de configuração a seguir e na UI podem não corresponder diretamente aos usados pelo IdP. Para esclarecimentos durante a configuração, entre em contato com sua equipe interna de SAML ou de autenticação ou com o suporte do Looker.

O Looker pressupõe que as solicitações e declarações SAML serão comprimidas. Verifique se o IdP está configurado dessa forma. As solicitações do Looker para o provedor de identidade não são assinadas.

O Looker oferece suporte a logins iniciados pelo IdP.

Parte do processo de configuração precisa ser concluída no site do provedor de identidade.

O Okta oferece um app Looker, que é a maneira recomendada de configurar o Looker e o Okta juntos.

Configurar o Looker no seu provedor de identidade

Seu IdP SAML vai precisar do URL da instância do Looker para o qual o IdP SAML precisa enviar as declarações SAML. No IdP, isso pode ser chamado de "URL de postback", "Destino" ou "Destinatário", entre outros nomes.

As informações a serem fornecidas são o URL em que você normalmente acessa a instância do Looker usando o navegador, seguido por /samlcallback. Por exemplo: none https://instance_name.looker.com/samlcallback

ou

https://looker.mycompany.com/samlcallback

Alguns IdPs também exigem que você adicione :9999 após o URL da instância. Exemplo:

https://instance_name.looker.com:9999/samlcallback

Informações úteis

Lembre-se dos seguintes fatos:

  • O Looker exige SAML 2.0.
  • Não desative a autenticação SAML enquanto estiver conectado ao Looker por SAML, a menos que você tenha uma conta alternativa configurada. Caso contrário, você pode ficar bloqueado do app.
  • O Looker pode migrar contas atuais para o SAML usando endereços de e-mail que vêm de configurações de e-mail e senha atuais ou do Google Auth, LDAP ou OIDC. Você poderá configurar como as contas atuais são migradas no processo de configuração.

Primeiros passos

Acesse a página Autenticação SAML na seção Administrador do Looker para conferir as opções de configuração a seguir. As alterações nas opções de configuração só vão entrar em vigor depois que você testar e salvar as configurações na parte de baixo da página.

Configurações de autenticação SAML

O Looker exige o URL do IdP, o emissor do IdP e o certificado do IdP para autenticar o IdP.

O IdP pode oferecer um documento XML de metadados do IdP durante o processo de configuração do Looker no IdP. Esse arquivo contém todas as informações solicitadas na seção Configurações de autenticação SAML. Se você tiver esse arquivo, faça o upload dele no campo Metadados do IdP, que vai preencher os campos obrigatórios desta seção. Como alternativa, preencha os campos obrigatórios com a saída gerada durante a configuração do IdP. Não é necessário preencher os campos se você fizer upload do arquivo XML.

  • Metadados do IdP (opcional): cole o URL público do documento XML que contém as informações do IdP ou cole o texto completo do documento aqui. O Looker vai analisar esse arquivo para preencher os campos obrigatórios.

Se você não fez upload nem colou um documento XML de metadados do IdP, insira as informações de autenticação do IdP nos campos URL do IdP, Emissor do IdP e Certificado do IdP.

  • URL do IdP: é o URL para onde o Looker vai para autenticar usuários. Isso é chamado de URL de redirecionamento no Okta.

  • IdP Issuer: o identificador exclusivo do IdP. Isso é chamado de "chave externa" no Okta.

  • Certificado do IdP: a chave pública para permitir que o Looker verifique a assinatura das respostas do IdP.

Juntos, esses três campos permitem que o Looker confirme que um conjunto de declarações SAML assinadas realmente veio de um IdP confiável.

  • Entidade de SP/público-alvo do IdP: esse campo não é obrigatório para o Looker, mas muitos IdPs exigem esse campo. Se você inserir um valor nesse campo, ele será enviado ao seu IdP como Entity ID do Looker em solicitações de autorização. Nesse caso, o Looker só vai aceitar respostas de autorização que tenham esse valor como Audience. Se o IdP exigir um valor Audience, insira essa string aqui.
  • Deslocamento do relógio permitido: o número de segundos de deslocamento do relógio (a diferença nos carimbos de data/hora entre o IdP e o Looker) permitido. Esse valor geralmente é o padrão 0, mas alguns IdPs podem exigir mais tempo para fazer logins bem-sucedidos.

Configurações de atributos do usuário

Nos campos a seguir, especifique o nome do atributo na configuração SAML do IdP que contém as informações correspondentes para cada campo. Ao inserir os nomes dos atributos SAML, o Looker vai saber como mapear esses campos e extrair as informações deles no momento do login. O Looker não tem preferências sobre como essas informações são construídas. O importante é que a forma como você as insere no Looker corresponda à forma como os atributos são definidos no IdP. O Looker oferece sugestões padrão sobre como criar essas entradas.

Atributos padrão

Você precisa especificar estes atributos padrão:

  • Email Attr: o nome do atributo que o IdP usa para os endereços de e-mail dos usuários.

  • Atributo de nome: o nome do atributo que o IdP usa para os nomes dos usuários.

  • Atributo do sobrenome: o nome do atributo que o IdP usa para os sobrenomes dos usuários.

Como vincular atributos SAML aos atributos do usuário do Looker

Você pode usar os dados nos seus atributos SAML para preencher automaticamente os valores nos atributos do usuário do Looker quando um usuário faz login. Por exemplo, se você tiver configurado o SAML para fazer conexões específicas do usuário com o banco de dados, poderá vincular os atributos do SAML aos atributos do usuário do Looker para tornar as conexões do banco de dados específicas do usuário no Looker.

Para vincular atributos SAML aos atributos de usuário do Looker correspondentes, faça o seguinte:

  1. Digite o nome do atributo SAML no campo Atributo SAML e o nome do atributo do usuário do Looker que você quer vincular no campo Atributos do usuário do Looker.
  2. Marque Required se quiser exigir um valor de atributo SAML para permitir que um usuário faça login.
  3. Clique em + e repita essas etapas para adicionar mais pares de atributos.

Grupos e funções

Você tem a opção de criar grupos no Looker que espelham seus grupos SAML gerenciados externamente e, em seguida, atribuir papéis do Looker aos usuários com base nos grupos SAML espelhados. Quando você faz mudanças na associação ao grupo SAML, elas são propagadas automaticamente para a configuração do grupo do Looker.

O espelhamento de grupos SAML permite que você use seu diretório SAML definido externamente para gerenciar grupos e usuários do Looker. Isso permite gerenciar a associação do grupo em várias ferramentas de software como serviço (SaaS), como o Looker, em um só lugar.

Se você ativar a opção Mirror SAML Groups, o Looker vai criar um grupo para cada grupo SAML introduzido no sistema. Esses grupos do Looker podem ser visualizados na página Grupos da seção Administrador do Looker. Os grupos podem ser usados para atribuir funções aos participantes, definir controles de acesso ao conteúdo e atribuir atributos do usuário.

Grupos e funções padrão

Por padrão, a opção Espelhar grupos SAML está desativada. Nesse caso, é possível definir um grupo padrão para novos usuários SAML. Nos campos Novos grupos de usuários e Novos papéis de usuários, digite os nomes dos grupos ou papéis do Looker a que você quer atribuir novos usuários do Looker quando eles fizerem login pela primeira vez:

Esses grupos e funções são aplicados a novos usuários no primeiro login. Os grupos e as funções não são aplicados a usuários já existentes e não são reutilizados se forem removidos dos usuários após o login inicial.

Se você ativar os grupos SAML espelhados mais tarde, esses padrões serão removidos dos usuários na próxima vez que eles fizerem login e substituídos por funções atribuídas na seção Grupos SAML espelhados. Essas opções padrão não estarão mais disponíveis ou atribuídas e serão totalmente substituídas pela configuração de grupos espelhados.

Como ativar grupos SAML espelhados

Se você quiser espelhar seus grupos SAML no Looker, ative a chave Espelhar grupos SAML. O Looker mostra estas configurações:

Estratégia do localizador de grupos: selecione o sistema que o provedor de identidade usa para atribuir grupos, o que depende do seu provedor.

  • Quase todos os IdPs usam um único valor de atributo para atribuir grupos, conforme mostrado neste exemplo de declaração SAML: none <saml2:Attribute Name='Groups'> <saml2:AttributeValue >Everyone</saml2:AttributeValue> <saml2:AttributeValue >Admins</saml2:AttributeValue> </saml2:Attribute> Nesse caso, selecione Grupos como valores de atributos únicos.

  • Alguns IdPs usam um atributo separado para cada grupo e exigem um segundo atributo para determinar se um usuário é membro de um grupo. Confira um exemplo de declaração SAML que mostra esse sistema: none <saml2:Attribute Name='group_everyone'> <saml2:AttributeValue >yes</saml2:AttributeValue> </saml2:Attribute> <saml2:Attribute Name='group_admins'> <saml2:AttributeValue >no</saml2:AttributeValue> </saml2:Attribute> Nesse caso, selecione Grupos como atributos individuais com valor de associação.

Atributo de grupos: o Looker exibe esse campo quando a estratégia do Localizador de grupos está definida como Grupos como valores de um único atributo. Insira o nome do atributo de grupos usado pelo IdP.

Valor do membro do grupo: o Looker exibe esse campo quando a estratégia do Localizador de grupos está definida como Grupos como atributos individuais com valor de associação. Insira o valor que indica que um usuário é membro de um grupo.

Nome/funções/ID de grupo SAML do grupo preferido: esse conjunto de campos permite atribuir um nome de grupo personalizado e uma ou mais funções atribuídas ao grupo SAML correspondente no Looker:

  1. Insira o ID do grupo SAML no campo ID do grupo SAML. Para usuários do Okta, insira o nome do grupo do Okta como o ID do grupo SAML. Os usuários SAML incluídos no grupo SAML serão adicionados ao grupo espelhado no Looker.

  2. Insira um nome personalizado para o grupo espelhado no campo Nome personalizado. Esse é o nome que vai aparecer na página Grupos da seção Administrador do Looker.

  3. No campo à direita de Nome personalizado, selecione um ou mais papéis do Looker que serão atribuídos a cada usuário no grupo.

  4. Clique em + para adicionar outros conjuntos de campos e configurar outros grupos espelhados. Se você tiver vários grupos configurados e quiser remover a configuração de um deles, clique em X ao lado do conjunto de campos do grupo.

Se você editar um grupo espelhado que foi configurado anteriormente nesta tela, a configuração do grupo vai mudar, mas o grupo vai permanecer intacto. Por exemplo, você pode mudar o nome personalizado de um grupo, o que muda a forma como o grupo aparece na página Grupos do Looker, mas não muda as funções atribuídas e os membros do grupo. A alteração do ID do grupo SAML mantém o nome e as funções do grupo, mas os membros são reatribuídos com base nos usuários que são membros do grupo SAML externo que tem o novo UD do grupo SAML.

Todas as edições feitas em um grupo espelhado serão aplicadas aos usuários dele na próxima vez que fizerem login no Looker.

Gerenciamento avançado de funções

Se você tiver ativado a opção Mirror SAML Groups, o Looker vai mostrar essas configurações. As opções nesta seção determinam a flexibilidade dos administradores do Looker ao configurar grupos e usuários do Looker espelhados do SAML.

Por exemplo, se você quiser que a configuração do grupo e do usuário do Looker corresponda exatamente à configuração do SAML, ative essas opções. Quando as três primeiras opções estão ativadas, os administradores do Looker não podem modificar as associações de grupos espelhados e só podem atribuir funções aos usuários por grupos espelhados do SAML.

Se você quiser ter mais flexibilidade para personalizar seus grupos no Looker, desative essas opções. Seus grupos do Looker ainda vão refletir sua configuração SAML, mas você poderá fazer mais gerenciamento de grupos e usuários no Looker, como adicionar usuários SAML a grupos específicos do Looker ou atribuir funções do Looker diretamente a usuários SAML.

Para novas instâncias do Looker ou para instâncias que não têm grupos espelhados configurados anteriormente, essas opções estão desativadas por padrão.

Para instâncias do Looker configuradas com grupos espelhados, essas opções estão ativadas por padrão.

A seção Gerenciamento avançado de função contém estas opções:

Impedir que usuários individuais do SAML recebam funções diretas: ao ativar essa opção, os administradores do Looker não podem atribuir funções do Looker diretamente a usuários do SAML. Os usuários do SAML só recebem funções por meio de associações a grupos. Se os usuários SAML tiverem permissão para fazer parte de grupos do Looker integrados (não espelhados), eles ainda poderão herdar as funções dos grupos SAML espelhados e dos grupos do Looker integrados. Os papéis atribuídos diretamente a usuários SAML serão removidos na próxima vez que eles fizerem login.

Se essa opção estiver desativada, os administradores do Looker poderão atribuir funções do Looker diretamente aos usuários do SAML como se eles tivessem sido configurados diretamente no Looker.

Impedir a associação direta em grupos que não são SAML: ao ativar essa opção, os administradores do Looker não podem adicionar usuários SAML diretamente a grupos integrados do Looker. Se os grupos SAML espelhados puderem ser membros de grupos do Looker integrados, os usuários SAML poderão manter a associação em qualquer grupo pai do Looker. Todos os usuários SAML que foram atribuídos anteriormente a grupos integrados do Looker serão removidos desses grupos no próximo login.

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

Impedir a herança de função de grupos que não são SAML: ao ativar essa opção, os membros de grupos SAML espelhados não herdam funções de grupos integrados do Looker. Os usuários SAML que herdaram papéis de um grupo pai do Looker vão perder esses papéis na próxima vez que fizerem login.

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

Autenticação exige função: se essa opção estiver ativada, os usuários SAML precisarão ter uma função atribuída. Os usuários SAML que não tiverem um papel atribuído não poderão fazer login no Looker.

Se essa opção estiver desativada, os usuários do SAML poderão fazer a autenticação no Looker mesmo que não tenham uma função atribuída. Um usuário sem função atribuída não pode acessar dados nem realizar ações no Looker, mas pode fazer login.

Como desativar grupos SAML espelhados

Se você quiser parar de espelhar seus grupos SAML no Looker, desative a chave Espelhar grupos SAML. Todos os grupos SAML de espelho vazios serão excluídos.

Os grupos SAML de espelho não vazios vão continuar disponíveis para uso no gerenciamento de conteúdo e na criação de funções. No entanto, não é possível adicionar ou remover usuários de grupos SAML espelhados.

Opções de migração

Login alternativo para administradores e usuários específicos

Os logins de e-mail e senha do Looker são sempre desativados para usuários comuns quando a autenticação SAML está ativada. Essa opção permite o login alternativo com base em e-mail usando /login/email para administradores e usuários especificados com a permissão login_special_email.

Ativar essa opção é útil como alternativa durante a configuração da autenticação SAML caso ocorram problemas de configuração do SAML mais tarde ou se você precisar oferecer suporte a alguns usuários que não têm contas no seu diretório SAML.

Especificar o método usado para mesclar usuários SAML a uma conta do Looker

No campo Mesclar usuários usando, especifique o método a ser usado para mesclar um login SAML pela primeira vez a uma conta de usuário existente. É possível mesclar usuários dos seguintes sistemas:

  • E-mail/senha do Looker (não disponível para o Looker (Google Cloud Core))
  • Google
  • LDAP (não disponível para o Looker (Google Cloud Core))
  • OIDC

Se você tiver mais de um sistema, poderá especificar mais de um sistema para mesclagem neste campo. O Looker vai procurar usuários nos sistemas listados na ordem especificada. Por exemplo, suponha que você tenha criado alguns usuários usando o e-mail e a senha do Looker, ativado o LDAP e agora queira usar o SAML. O Looker vai mesclar primeiro por e-mail e senha e depois por LDAP.

Quando um usuário faz login pela primeira vez usando o SAML, essa opção conecta o usuário à conta atual, encontrando a conta com um endereço de e-mail correspondente. Se não houver uma conta de usuário, uma nova será criada.

Como mesclar usuários ao usar o Looker (Google Cloud Core)

Quando você usa o Looker (núcleo do Google Cloud) e o SAML, a mesclagem funciona conforme descrito na seção anterior. No entanto, isso só é possível se uma das duas condições a seguir for atendida:

  1. Condição 1: os usuários estão fazendo a autenticação no Looker (Google Cloud Core) usando as identidades do Google pelo protocolo SAML.
  2. Condição 2: antes de selecionar a opção de mesclagem, você concluiu as duas etapas a seguir:

Se a sua instância não atender a uma dessas duas condições, a opção Mesclar usuários usando vai ficar indisponível.

Ao mesclar, o Looker (Google Cloud Core) vai procurar registros de usuários que compartilham o mesmo endereço de e-mail.

Testar a autenticação do usuário

Clique no botão Testar para testar as configurações. Os testes serão redirecionados para o servidor e uma guia do navegador será aberta. A guia mostra:

  • Se o Looker conseguiu se comunicar com o servidor e validar.
  • Os nomes que o Looker recebe do servidor. É necessário validar se o servidor retorna os resultados corretos.
  • Um trace para mostrar como as informações foram encontradas. Use o rastreamento para resolver problemas se as informações estiverem incorretas. Se precisar de mais informações, leia o arquivo de servidor XML bruto.

Dicas:

  • Você pode executar esse teste a qualquer momento, mesmo que o SAML esteja parcialmente configurado. A execução de um teste pode ser útil durante a configuração para saber quais parâmetros precisam ser configurados.
  • O teste usa as configurações inseridas na página Autenticação SAML, mesmo que elas não tenham sido salvas. O teste não afeta nem muda nenhuma das configurações da página.
  • Durante o teste, o Looker transmite informações ao IdP usando o parâmetro SAML RelayState. O IdP precisa retornar esse valor RelayState ao Looker sem modificações.

Salvar e aplicar configurações

Quando terminar de inserir as informações e todos os testes forem aprovados, marque Confirmei a configuração acima e quero ativar a aplicação global e clique em Atualizar configurações para salvar.

Comportamento de login do usuário

Quando um usuário tenta fazer login em uma instância do Looker usando SAML, o Looker abre a página Log In. O usuário precisa clicar no botão Authenticate para iniciar a autenticação pelo SAML.

Esse é o comportamento padrão se o usuário ainda não tiver uma sessão ativa do Looker.

Se você quiser que os usuários façam login diretamente na sua instância do Looker depois que o IdP os autenticar e ignorar a página Fazer login, ative a opção Ignorar a página de login em Comportamento de login.

Se você estiver usando o Looker (original), o recurso Ignorar página de login precisa ser ativado pelo Looker. Para atualizar sua licença para esse recurso, entre em contato com um especialista de vendas do Google Cloud ou abra uma solicitação de suporte. Se você estiver usando o Looker (Google Cloud Core), a opção Ignorar página de login vai estar disponível automaticamente se o SAML for usado como o método de autenticação principal e será desativado por padrão.

Quando a opção Ignorar página de login está ativada, a sequência de login do usuário é a seguinte:

  1. O usuário tenta se conectar a um URL do Looker (por exemplo, instance_name.looker.com).

  2. O Looker determina se o usuário já tem uma sessão ativa. Para isso, o Looker usa o cookie AUTH-MECHANISM-COOKIE para identificar o método de autorização usado pelo usuário na última sessão. O valor é sempre um destes: saml, ldap, oidc, google ou email.

  3. Se o usuário tiver uma sessão ativa ativada, ele será direcionado para o URL solicitado.

  4. Se o usuário não tiver uma sessão ativa ativada, ele será redirecionado para o IdP. O IdP autentica o usuário quando ele faz login. O Looker autentica o usuário quando o IdP o envia de volta ao Looker com informações indicando que o usuário foi autenticado com o IdP.

  5. Se a autenticação no IdP for bem-sucedida, o Looker vai validar as declarações SAML, aceitar a autenticação, atualizar as informações do usuário e encaminhar o usuário para o URL solicitado, ignorando a página Fazer login.

  6. Se o usuário não conseguir fazer login no IdP ou se não tiver autorização do IdP para usar o Looker, dependendo do IdP, ele vai permanecer no site do IdP ou será redirecionado para a página Fazer login do Looker.

A resposta SAML excede o limite

Se os usuários que estão tentando fazer a autenticação receberem erros que indicam que a resposta SAML excedeu o tamanho máximo, aumente o tamanho máximo permitido.

Para instâncias hospedadas pelo Looker, abra uma solicitação de suporte para atualizar o tamanho máximo da resposta SAML.

Para instâncias do Looker hospedadas pelo cliente, é possível definir o tamanho máximo da resposta SAML em número de bytes com a variável de ambiente MAX_SAML_RESPONSE_BYTESIZE. Exemplo:

export MAX_SAML_RESPONSE_BYTESIZE=500000

O tamanho máximo padrão da resposta SAML é de 250.000 bytes.