Autenticação do OpenID Connect

Caso sua instância do Looker tenha sido criada após o Looker 22.10, por padrão, a página OpenID Connect estará disponível na seção Autenticação do menu Administrador.

Se a página OpenID Connect não aparecer na seção Authentication do menu Administrador, abra uma solicitação de suporte na Central de Ajuda do Looker e clique em Fale conosco.

As empresas usam diferentes provedores de OpenID Connect (OPs) para coordenar com o OpenID Connect (por exemplo, Okta ou OneLogin). Os termos usados nas instruções de configuração a seguir e na IU do Looker podem não corresponder diretamente aos usados pelo seu OP.

A página OpenID Connect na seção Authentication do menu Administrador permite que você configure o Looker para autenticar usuários usando o protocolo OpenID Connect. Esta página descreve esse processo e inclui instruções para vincular grupos do OpenID Connect a papéis e permissões do Looker.

Considerações sobre planejamento

  • Considere usar a opção Login alternativo para usuários especificados para permitir que os administradores do Looker acessem o Looker sem o OpenID Connect.
  • Não desative a autenticação do OpenID Connect enquanto estiver conectado ao Looker usando o OpenID Connect, a menos que você tenha um login de conta alternativo configurado. Caso contrário, você pode sair do app.
  • O Looker pode migrar contas existentes para o OpenID Connect usando endereços de e-mail provenientes de configurações atuais de e-mail/senha, LDAP, SAML ou Google Auth. Você poderá definir isso no processo de configuração.
  • O Looker só oferece suporte à autenticação OpenID Connect usando o Fluxo de código de autorização do OpenID Connect. Outros fluxos de código não são suportados.
  • A especificação OpenID Connect inclui um mecanismo de descoberta opcional. O Looker não é compatível com esse mecanismo. Portanto, é necessário fornecer URLs explícitos na seção Configurações de autenticação do OpenID Connect, conforme descrito abaixo.

Configurando o OpenID Connect

Para configurar a conexão entre o Looker e o OpenID Connect, execute as seguintes tarefas:

  1. Fornecer o URL do Looker ao seu provedor de conexão OpenID (OP, na sigla em inglês).
  2. Receba as informações obrigatórias do seu OP.

Como configurar o Looker no seu OP

Seu provedor de OpenID Connect (OP) precisará do URL da sua instância do Looker. Seu OP pode chamar isso de URI de redirecionamento ou URI de redirecionamento de login, entre outros nomes. No site da OP' forneça seu OP com o URL em que você normalmente acessa sua instância do Looker em um navegador, seguido por /openidconnect. Por exemplo, https://instance_name.looker.com/openidconnect.

Receber informações do OP

Para configurar a autenticação do Looker para OpenID Connect, você precisa das seguintes informações do seu OP:

  • Um identificador e chave secreta do cliente. Eles geralmente são fornecidos pelo OP no site quando você configura o URI de redirecionamento conforme descrito acima.
  • Durante o processo de autenticação do OpenID Connect, o Looker se conectará a três endpoints diferentes: um endpoint de autenticação, um endpoint de token de ID e um endpoint de informações do usuário. Você precisará dos URLs que seu OP usa para cada um desses endpoints.
  • Cada OP fornecerá informações do usuário em conjuntos chamados escopos. Você precisa saber os nomes dos escopos que o OP usa. O OpenID Connect requer o escopo openid, mas seu OP provavelmente incluirá outros escopos, como email, profile e groups.
  • No OpenID Connect, os atributos que armazenam dados do usuário são chamados de reivindicações. Você precisa saber quais declarações seu OP transmite ao Looker para fornecer as informações do usuário que você quer na sua instância do Looker. O Looker exige reivindicações que contenham informações de e-mail e nome. No entanto, se você tiver outros atributos de usuário, como fuso horário ou departamento, o Looker também precisará identificar quais declarações contêm essas informações. As reivindicações podem ser incluídas na resposta do endpoint de informações do usuário ou do endpoint do token de código. O Looker pode mapear declarações retornadas por qualquer um dos endpoints para os atributos de usuário do Looker.

Muitos OPs fornecem informações sobre como configurar o OpenID Connect na forma de um documento de descoberta, permitindo que você reúna algumas ou todas as informações necessárias para configurar o Looker para o OpenID Connect. Se você não tiver acesso a um documento de descoberta, precisará receber as informações necessárias da equipe de OP ou de autenticação interna.

Por exemplo, esta é uma seção de um exemplo de documento de descoberta fornecido pelo Google:

Definir as configurações de autenticação do OpenID Connect

Use as informações de configuração que você recebeu do documento de descoberta do OP, do OP ou da equipe de autenticação interna para inserir as configurações de conexão nos seguintes campos:

Identificador: o identificador do cliente exclusivo da sua instância do Looker. Isso deve ser fornecido pelo seu OP.

Chave secreta: a chave secreta do cliente exclusiva para sua instância do Looker. Isso deve ser fornecido pelo seu OP.

Issuer: o URL seguro que identifica seu OP.

Público-alvo: um identificador que indica ao seu OP quem é o cliente. Geralmente, é o mesmo que o valor em Identifier, mas pode ser um valor diferente.

URL de autorização: é o URL do OP em que a sequência de autenticação começa. Normalmente chamado de authorization_endpoint em um documento de descoberta.

URL do token: o URL em que o Looker recupera um token OAuth após a autorização. Normalmente chamado de token_endpoint em um documento de descoberta.

URL de informações do usuário: o URL onde o Looker recupera informações detalhadas do usuário. Normalmente chamado de userinfo_endpoint em um documento de descoberta.

Escopos: uma lista de escopos separados por vírgula usada pelo OP para fornecer informações do usuário ao Looker. Você precisa incluir o escopo openid e todos os escopos que incluem as informações exigidas pelo Looker, que incluem endereços de e-mail, nomes de usuários e atributos de usuário configurados na instância do Looker.

Como definir as configurações de atributos do usuário

Nesta seção, você vai mapear suas reivindicações OP' para os atributos de usuário do Looker.

Na seção Configurações de atributo do usuário, insira o nome da reivindicação do OP&&39 que contém as informações correspondentes para cada campo. Isso informa ao Looker como mapear essas declarações para informações do usuário do Looker no momento do login. O Looker não é específico sobre como as reivindicações são construídas, é importante que as informações de reivindicação inseridas aqui correspondam à maneira como as declarações são definidas em seu OP.

Reivindicações padrão

O Looker exige nome de usuário e informações de e-mail para autenticação do usuário. Insira as informações de reivindicação correspondentes da OP&S nesta seção:

E-mail de reivindicação: a reivindicação que seu OP usa para endereços de e-mail de usuários, como email.

Declaração de nome: é a reivindicação que seu OP usa para os nomes de usuários, como given_name.

Declaração de sobrenome: a reivindicação que seu OP usa para os sobrenomes dos usuários, como family_name.

Alguns OPs usam uma única reivindicação de nomes, em vez de separar nomes e sobrenomes. Se esse for o caso com seu OP, insira a reivindicação que armazena nomes nos campos Claim de nome e Sobrenome. Para cada usuário, o Looker usará o conteúdo do primeiro espaço até o primeiro nome, e o restante usará como último nome.

Pares de atributos

Você também pode usar os dados das declarações do OpenID Connect para preencher automaticamente os valores nos atributos de usuários do Looker quando um usuário fizer login. Por exemplo, se você configurou o OpenID Connect para fazer conexões específicas do usuário no seu banco de dados, é possível parear suas declarações do OpenID Connect com atributos de usuário do Looker para tornar conexões do banco de dados específicas do usuário no Looker.

Para parear declarações com os atributos de usuário do Looker correspondentess:

  1. Digite a declaração conforme identificado pelo OP no campo Claim e o atributo de usuário do Looker com que você quer parear no campo Atributos do usuário do Looker.
  2. Marque Obrigatório se você quiser bloquear o login por uma conta de usuário sem um valor no campo de reivindicação.
  3. Clique em + e repita essas etapas para adicionar mais pares de reivindicações e atributos.

Alguns OPs podem ter reivindicações "aninhadas" Exemplo:

"zoneinfo": "America/Los Angeles",
"phone_number": "555-1235",
"address": {
  "street_address": "1234 Main Street",
  "locality": "Anyton",
  "region": "IL",
  "postal_code": "60609",
  "country": "US"
},

No exemplo acima, a declaração locality está aninhada dentro da declaração address. Para declarações aninhadas, especifique as reivindicações mães e aninhadas, separadas por um caractere de barra ( /). Para configurar o Looker para a declaração locality acima, insira address/locality.

Grupos e papéis

O Looker pode criar grupos que espelham seus grupos do OpenID Connect gerenciados externamente e depois atribuir papéis do Looker aos usuários com base nos grupos espelhados do OpenID Connect. Quando você muda a associação ao grupo do OpenID Connect, essas alterações são propagadas automaticamente para a configuração do grupo do Looker.

Espelhar grupos do OpenID Connect permite usar seu diretório do OpenID Connect definido externamente para gerenciar grupos e usuários do Looker. Assim, é possível gerenciar a associação ao grupo para várias ferramentas de software como serviço (SaaS), como o Looker, em um só lugar.

Se você ativar a opção Espelhar grupos do OpenID Connect, o Looker criará um grupo do Looker para cada grupo do OpenID Connect 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 papéis padrão

A opção Espelhar grupos do OpenID Connect fica desativada por padrão. Nesse caso, você pode definir um grupo padrão para novos usuários do OpenID Connect. Nos campos New User Groups e New User Roles, insira 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 no Looker:

Esses grupos e funções são aplicados a novos usuários no primeiro login. Elas não são aplicadas a usuários preexistentes e não são aplicadas novamente se forem removidas dos usuários após o login inicial.

Se você ativar os grupos espelhados do OpenID Connect, esses padrões serão removidos dos usuários no próximo login e substituídos por funções atribuídas na seção Espelhar grupos do OpenID Connect. 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 espelhados do OpenID Connect

Para espelhar seus grupos do OpenID Connect no Looker, ative a chave Espelhar grupos do OpenID Connect:

Reivindicação de grupos: insira a reivindicação que seu OP usa para armazenar nomes de grupos. O Looker cria um grupo do Looker para cada grupo do OpenID Connect introduzido no sistema pela reivindicação do Grupos. Esses grupos do Looker podem ser visualizados na página Grupos da seção Administrador do Looker. Os grupos podem ser usados para definir controles de acesso ao conteúdo e atribuir atributos do usuário.

Nome / grupo de funções / nome do grupo do OpenID Connect: este conjunto de campos permite atribuir um nome a um grupo personalizado e um ou mais papéis atribuídos ao grupo OpenID Connect correspondente no Looker:

  1. Digite o nome do grupo do OpenID Connect no campo OpenID Connect Group Name. Os usuários do OpenID Connect incluídos no grupo do OpenID Connect serão adicionados ao grupo espelhado no Looker.

  2. Digite um nome personalizado para o grupo espelhado no campo Nome personalizado. Este será o nome 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 serão atribuídos a cada usuário do grupo.

  4. Clique em + para adicionar 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 em X ao lado do conjunto de campos desse grupo.

Se você editar um grupo espelhado que foi configurado anteriormente nesta tela, a configuração do grupo será alterada, mas o grupo permanecerá intacto. Por exemplo, você pode alterar o nome personalizado de um grupo, além de mudar a forma como ele aparece na página Grupos do Looker, mas não os papéis atribuídos e os participantes do grupo. Alterar o ID do grupo do OpenID Connect manteria o nome e as funções do grupo, mas os participantes do grupo seriam reatribuídos com base nos usuários que são membros do grupo externo do OpenID Connect que tem o novo ID do grupo OpenID Connect.

Se você excluir um grupo nesta página, ele não será mais espelhado no Looker, e os membros dele não terão mais os papéis atribuídos a ele no Looker.

Qualquer edição feita em um grupo espelhado será aplicada aos usuários desse grupo no próximo login que fizerem no Looker.

Gerenciamento avançado de papéis

Se você tiver ativado a chave Espelhar grupos do OpenID Connect, o Looker exibirá essas configurações. As opções nesta seção determinam a flexibilidade que os administradores do Looker têm ao configurar grupos do Looker e usuários que foram espelhados do OpenID Connect.

Por exemplo, se você quiser que seu grupo do Looker e a configuração do usuário correspondam estritamente à configuração do OpenID Connect, ative essas opções. Quando as três primeiras opções estão ativadas, os administradores do Looker não podem modificar a associação dos grupos espelhados e só podem atribuir papéis aos usuários por meio de grupos espelhados do OpenID Connect.

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

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

Para as instâncias atuais do Looker que têm grupos espelhados configurados, essas opções são ativadas por padrão.

Ativar configurações mais restritivas fará com que os usuários perdam a associação ao grupo ou papéis atribuídos que foram configurados diretamente no Looker. Isso ocorre na próxima vez que esses usuários fazem login no Looker.

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

Impedir que usuários individuais do OpenID Connect recebam papéis diretos: ativar essa opção impede que os administradores do Looker atribuam papéis do Looker diretamente a usuários do OpenID Connect. Os usuários do OpenID Connect só receberão papéis por meio das associações a grupos. Se os usuários do OpenID Connect tiverem permissão para participar em grupos nativos do Looker (não espelhados), eles ainda poderão herdar papéis de grupos espelhados do OpenID Connect e de grupos nativos do Looker. Os usuários que tiverem atribuído papéis antes do OpenID Connect terão esses papéis removidos no próximo login.

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

Impedir a associação direta em grupos que não sejam do OpenID Connect: ativar essa opção impede que os administradores do Looker adicionem usuários do OpenID Connect diretamente a grupos nativos do Looker. Se for permitido que os grupos espelhados do OpenID Connect sejam membros de grupos nativos do Looker, os usuários do OpenID Connect poderão manter a associação em qualquer grupo pai do Looker. Todos os usuários do OpenID Connect que foram atribuídos anteriormente a grupos nativos 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 do OpenID Connect diretamente a grupos nativos do Looker.

Impedir herança de papéis de grupos que não sejam do OpenID Connect: ativar esta opção impede que membros de grupos do OpenID Connect espelhados herdem papéis de grupos nativos do Looker. Os usuários do OpenID Connect que herdaram papéis de um grupo pai do Looker perderão os papéis no próximo login.

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

Autenticação obrigatória: se essa opção estiver ativada, os usuários do OpenID Connect precisarão atribuir uma função. Os usuários do OpenID Connect 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 OpenID Connect poderão se autenticar no Looker, mesmo se não tiverem um papel atribuído. Um usuário sem papel atribuído não poderá ver os dados nem realizar ações no Looker, mas poderá fazer login nele.

Como configurar opções de migração

Conforme explicado nesta seção, o Looker recomenda que você ative o Login alternativo e forneça uma estratégia de combinação para os usuários atuais.

Login alternativo para usuários especificados

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

Isso é útil como um substituto durante a configuração do OpenID Connect caso ocorram problemas de configuração do OpenID Connect posteriormente ou caso você precise oferecer suporte a alguns usuários que não têm contas no diretório do OpenID Connect.

Para ativar logins alternativos usando a API Looker, consulte a página de documentação Como ativar a opção de login alternativo.

Especifique o método usado para mesclar os usuários do OpenID Connect em uma conta do Looker

No campo Merge Users Using, especifique o método que será usado para mesclar um primeiro login do Open ID Connect com uma conta de usuário. As opções são Looker Email/Password, Google, LDAP e SAML.

Se você tem vários sistemas de autenticação, pode especificar mais de um sistema para mesclar neste campo. O Looker procurará usuários nos sistemas listados na ordem em que eles forem especificados. Por exemplo, suponha que você tenha criado alguns usuários com e-mail/senha do Looker, tenha ativado o LDAP e agora queira usar o OpenID Connect. No exemplo acima, o Looker mesclava-se primeiro por e-mail/senha e, depois, LDAP.

Quando um usuário fizer login pela primeira vez com o OpenID Connect, esta opção conectará o usuário à conta existente, encontrando a conta com um endereço de e-mail correspondente. Se não houver uma conta, um novo usuário será criado.

Como testar a autenticação do usuário

Ao especificar essa configuração, clique no botão Testar para testar a configuração do OpenID Connect.

Leia os resultados do teste com cuidado. Algumas partes do teste podem ser bem-sucedidas, mesmo que outras falhem.

Os testes redirecionarão para os endpoints e abrirão uma nova guia do navegador. A guia exibe:

  • Se o Looker conseguiu se comunicar com os diversos endpoints e validar
  • Um trace da resposta do endpoint de autenticação
  • As informações do usuário que o Looker recebe do endpoint de informações do usuário
  • As versões bruta e decodificada do token de ID recebida

Use esse teste para verificar se as informações recebidas dos vários endpoints estão corretas e para resolver erros.

Dicas:

  • É possível executar esse teste a qualquer momento, mesmo que o OpenID Connect esteja parcialmente configurado. Executar um teste pode ser útil durante a configuração para ver quais parâmetros precisam ser configurados.
  • O teste usa as configurações digitadas na página OpenID Connect Authentication, mesmo que essas configurações não tenham sido salvas. O teste não afetará nem mudará as configurações dessa página.

Salvar e aplicar configurações

Primeiro, teste a configuração e leia os resultados do teste com cuidado para verificar se todas as partes do teste foram bem-sucedidas. Salvar informações de configuração do OpenID Connect incorretos pode bloquear você e outras pessoas fora do Looker.

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