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

Na página SAML da seção Authentication do menu Admin, configure o Looker para autenticar usuários com a Linguagem de marcação para autorização de segurança (SAML). Nesta página, descrevemos esse processo e incluímos instruções para vincular grupos SAML a papéis e permissões do Looker.

Provedores de identidade e SAML

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

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

O Looker oferece suporte ao login iniciado pelo IdP.

Parte do processo de configuração precisa ser concluído no site do IdP.

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

Como configurar o Looker no seu provedor de identidade

O IdP SAML precisa do URL da instância do Looker em que o IdP SAML precisa POSTAR as declarações SAML. No IdP, isso pode ser chamado de "URL de postagem", "Destinatário" ou "Destino", entre outros nomes.

As informações são o URL em que você normalmente acessa sua instância do Looker pelo 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 do seguinte:

  • O Looker requer o SAML 2.0.
  • Não desative a autenticação SAML enquanto você fizer login no Looker usando o SAML, a menos que tenha configurado um login de conta alternativa. Caso contrário, você poderá ficar sem acesso ao app.
  • O Looker pode migrar contas para SAML usando endereços de e-mail de configurações atuais de e-mail e senha ou do Google Auth, LDAP ou OIDC. Você poderá definir como as contas são migradas no processo de configuração.

Como começar

Acesse a página SAML Authentication da seção Admin do Looker para ver as opções de configuração a seguir. As alterações feitas nas opções de configuração só entram em vigor depois que você testa e salva as configurações na parte inferior 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 seu IdP.

O IdP pode oferecer um documento XML de metadados do IdP durante o processo de configuração do Looker. 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 IdP Metadata, que preencherá os campos obrigatórios da seção. Como alternativa, preencha os campos obrigatórios na resposta recebida durante a configuração do IdP. Não será 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 do documento inteiro aqui. O Looker analisará o arquivo para preencher os campos obrigatórios.

Se você não tiver feito upload nem colado um documento XML de metadados do IdP, digite as informações de autenticação do IdP nos campos URL do IdP, emissor do IdP e certificado do IdP.

  • IdP URL: o URL que o Looker usa para autenticar os usuários. Isso é chamado de URL de redirecionamento no Okta.

  • IdP Issuer: o identificador exclusivo do IdP. No Okta, isso é chamado de "Chave externa".

  • IdP Certificate: a chave pública que permite ao Looker verificar 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/IdP Audience: este campo não é obrigatório pelo Looker, mas muitos IdPs exigem esse campo. Se você inserir um valor nesse campo, ele vai ser enviado ao seu IdP como o 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, digite 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) permitidos. Esse valor geralmente é o padrão 0, mas alguns IdPs podem exigir mais liberdade para logins.

Configurações de atributos do usuário

Nos campos a seguir, especifique o nome do atributo na configuração SAML do seu IdP com as informações correspondentes para cada campo. Inserir os nomes dos atributos SAML informa ao Looker como mapear esses campos e extrair as informações deles no momento do login. O Looker não é específico 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 seu IdP. O Looker oferece sugestões padrão sobre como criar essas entradas.

Atributos padrão

Você precisará especificar estes atributos padrão:

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

  • FName Attr: o nome do atributo que seu IdP usa para os nomes dos usuários.

  • LName Attr: o nome do atributo que seu IdP usa para os sobrenomes dos usuários.

Pareando atributos SAML com atributos de usuário do Looker

Você pode usar os dados nos atributos SAML para preencher automaticamente os valores nos atributos de usuário do Looker quando um usuário fizer login. Por exemplo, se você configurou o SAML para estabelecer conexões específicas do usuário com o banco de dados, é possível parear os atributos SAML com os do Looker para tornar as conexões do banco de dados específicas do usuário no Looker.

Para parear atributos SAML com atributos de usuário correspondentes do Looker:

  1. Digite o nome do atributo SAML no campo Atributo SAML e o nome do atributo de usuário do Looker que você quer parear no campo Atributos de usuário do Looker.
  2. Marque Obrigatório se você 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 papéis

O Looker tem a opção de criar grupos que espelham os 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 usar o diretório SAML definido externamente para gerenciar usuários e grupos do Looker. Dessa forma, você pode gerenciar a associação a várias ferramentas de software como serviço (SaaS), como o Looker, em um só lugar.

Se você ativar a opção Espelhar grupos SAML, 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. É possível usar os grupos para atribuir funções aos participantes, definir controles de acesso ao conteúdo e atribuir atributos do usuário.

Grupos e papéis padrão

Por padrão, a opção Espelhar grupos SAML fica desativada. Nesse caso, você pode definir um grupo padrão para novos usuários SAML. Nos campos Novos grupos de usuários e Novos papéis do usuário, insira os nomes dos grupos ou funções do Looker a que você quer atribuir novos usuários do Looker quando eles fizerem login no Looker pela primeira vez:

Esses grupos e funções são aplicados aos novos usuários no login inicial. Os grupos e as funções não são aplicados a usuários preexistentes e não serão reaplicados se forem removidos dos usuários após o login inicial.

Se você ativar grupos SAML espelhados, esses padrões serão removidos para os usuários no próximo login e substituídos por funções atribuídas na seção Espelhar grupos SAML. Essas opções padrão não vão estar mais disponíveis nem atribuídas, e serão totalmente substituídas pela configuração dos grupos espelhados.

Como ativar grupos SAML espelhados

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

Group Finder Strategy: selecione o sistema que o IdP usa para atribuir grupos, que depende do seu IdP.

  • 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> Neste caso, selecione Grupos como valores de atributos únicos.

  • Alguns IdPs usam um atributo separado para cada grupo e depois exigem um segundo atributo para determinar se um usuário é membro de um grupo. Confira abaixo um exemplo de declaração SAML que mostra este 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> Neste caso, selecione Grupos como atributos individuais com valor de associação.

Atributo de grupos: o Looker mostra esse campo quando a Estratégia do localizador de grupos está definida como Grupos como valores de um único atributo. Digite o nome do Atributo de grupos usado pelo IdP.

Valor do participante do grupo: o Looker mostra 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 de grupo/papéis/ID de grupo SAML preferencial: com esse conjunto de campos, você pode atribuir um nome de grupo personalizado e uma ou mais funções atribuídas ao grupo SAML correspondente no Looker:

  1. Digite o ID do grupo SAML no campo ID do grupo SAML. Para usuários do Okta, digite 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. Digite um nome personalizado para o grupo espelhado no campo Nome personalizado. Esse é o nome que será exibido na página Grupos da seção Administrador do Looker.

  3. No campo à direita do campo Nome personalizado, selecione um ou mais papéis do Looker que vão ser atribuídos a cada usuário do 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 grupo, clique no X ao lado do conjunto de campos desse grupo.

Se você editar um grupo espelhado configurado anteriormente nessa tela, a configuração dele vai mudar, mas o grupo em si permanecerá intacto. Por exemplo, é possível mudar o nome personalizado de um grupo. Isso mudaria a forma como ele aparece na página Grupos do Looker, mas não alteraria as funções e os participantes atribuídos. 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 do grupo SAML externo que tem o novo grupo SAML UD.

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

Gerenciamento avançado de funções

Se você tiver ativado a opção Espelhar grupos SAML, o Looker vai mostrar essas configurações. As opções desta seção determinam a flexibilidade que os administradores do Looker têm ao configurar grupos e usuários do Looker espelhados do SAML.

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

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

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

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

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

Impedir que usuários individuais SAML recebam papéis diretos: ativar essa opção impede que os administradores do Looker atribuam papéis do Looker diretamente a usuários SAML. Os usuários SAML só vão receber funções por associações a grupos. Se os usuários do SAML tiverem permissão para associação em grupos nativos (não espelhados) do Looker, eles ainda poderão herdar os papéis dos grupos SAML espelhados e dos grupos nativos do Looker. Todos os usuários SAML que receberam funções anteriormente atribuídas diretamente terão essas funções removidas no próximo login.

Se essa opção estiver desativada, os administradores do Looker vão poder atribuir papéis do Looker diretamente aos usuários SAML como se eles estivessem configurados de forma nativa no Looker.

Impedir a associação direta em grupos que não são SAML: essa opção impede que os administradores do Looker adicionem usuários SAML diretamente a grupos nativos do Looker. Se os grupos SAML espelhados tiverem permissão para participar de grupos nativos do Looker, os usuários do SAML poderão manter a associação em qualquer grupo pai do Looker. Todos os usuários SAML atribuídos a grupos nativos do Looker serão removidos deles no próximo login.

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

Impedir a herança de papéis de grupos que não são SAML: ativar essa opção impede que os participantes de grupos SAML espelhados herdem papéis de grupos nativos do Looker. Todos os usuários SAML que herdaram papéis de um grupo pai do Looker perderão esses papéis no próximo login.

Se essa opção estiver desativada, os grupos SAML espelhados ou os usuários SAML adicionados como participantes de um grupo nativo do Looker vão herdar os papéis atribuídos ao grupo pai do Looker.

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

Se essa opção estiver desativada, os usuários SAML vão poder 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 tem acesso aos dados nem realiza ações no Looker, mas pode fazer login nele.

Como desativar grupos SAML espelhados

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

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

Opções de migração

Login alternativo para administradores e usuários especificados

Os logins por e-mail/senha do Looker são sempre desativados para usuários normais quando a autenticação SAML está ativada. Esta opção permite um login por e-mail alternativo usando o /login/email para administradores e usuários específicos com a permissão login_special_email.

Ativar essa opção é útil como um substituto durante a configuração da autenticação SAML caso ocorram problemas de configuração SAML no futuro 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 para mesclar usuários SAML com uma conta do Looker

No campo Mesclar usuários usando, especifique o método a ser usado para mesclar um primeiro login SAML com 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 neste campo. O Looker procura usuários dos sistemas listados na ordem em que são especificados. Por exemplo, imagine que você criou alguns usuários usando o e-mail/senha do Looker, ativou o LDAP e agora quer usar o SAML. O Looker seria mesclado por e-mail/senha primeiro e depois por LDAP.

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

Mesclar usuários com o Looker (Google Cloud Core)

Quando você usa o Looker (Google Cloud Core) e o SAML, a mesclagem funciona conforme descrito na seção anterior. No entanto, isso só será 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 no protocolo SAML.
  2. Condição 2 Antes de selecionar a opção de mesclagem, você concluiu as duas etapas a seguir:

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

Durante a mesclagem, o Looker (Google Cloud Core) procura registros de usuários que compartilhem o mesmo endereço de e-mail.

Testar autenticação do usuário

Clique no botão Testar para testar suas configurações. Os testes redirecionarão você para o servidor e abrirá uma guia do navegador. A guia mostra:

  • Se o Looker conseguiu se comunicar com o servidor e validar.
  • Os nomes que o Looker recebe do servidor. Você precisa validar se o servidor retorna os resultados corretos.
  • Um rastro para mostrar como a informação foi encontrada. Use o rastreamento para resolver problemas se as informações estiverem incorretas. Se você precisar de informações adicionais, leia o arquivo bruto do servidor XML.

Dicas:

  • É possível 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 identificar quais parâmetros precisam ser definidos.
  • 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 vai afetar nem mudar as configurações dessa página.
  • Durante o teste, o Looker transmite informações para o 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 suas informações e todos os testes forem aprovados, marque a opção Eu confirmei a configuração acima e quero ativá-la globalmente 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 Fazer login. O usuário precisa clicar no botão Authenticate para iniciar a autenticação via SAML.

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

Se você quiser que os usuários façam login diretamente na instância do Looker após a autenticação do IdP e ignorem a página Log In, ative Bypass Login Page em Login Behavior.

Se você estiver usando o Looker (original), o recurso Ignorar página de login precisará ser ativado pelo Looker. Para atualizar a licença desse recurso, entre em contato com um especialista em 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 estará disponível automaticamente se o SAML for usado como o método de autenticação principal e o padrão será desativado.

Quando a opção Ignorar página de login estiver ativada, a sequência de login do usuário será 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 ativada. Para isso, o Looker usa o cookie AUTH-MECHANISM-COOKIE para identificar o método de autorização utilizado 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á levado 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 no IdP. O Looker faz a autenticação quando o IdP envia o usuário de volta ao Looker com informações indicando que ele está 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 Login.

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

Resposta SAML que excede o limite

Se os usuários que estão tentando se autenticar estiverem recebendo erros indicando que a resposta SAML excedeu o tamanho máximo, você poderá aumentar o tamanho máximo permitido para a resposta SAML.

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 padrão para o tamanho máximo da resposta SAML é de 250.000 bytes.