Controle de acesso e gerenciamento de permissões

Os administradores do Looker podem gerenciar o que um usuário ou grupo de usuários pode ver e fazer no Looker especificando o seguinte acesso:

  • Acesso ao conteúdo, que controla se um usuário ou grupo de usuários pode acessar ou gerenciar uma pasta. Um usuário que tenha acesso a uma pasta pode navegar até ela e conferir as listas de dashboards e Looks na pasta. Um usuário que pode gerenciar uma pasta pode manipular o conteúdo de uma pasta (copiar, mover, excluir e renomear dashboards e Looks), organizar a própria pasta (renomear, mover ou excluir a pasta) e conceder acesso a outros usuários e grupos. O acesso ao conteúdo é gerenciado pelos administradores do Looker no painel Administrador ou, se permitido, por usuários individuais na pasta.
  • Acesso aos dados, que controla quais dados um usuário tem permissão para visualizar. O acesso aos dados é gerenciado principalmente por conjuntos de modelos, que compõem metade de um papel do Looker. Em seguida, esses papéis são aplicados a usuários e grupos. O acesso a dados pode ser ainda mais restrito em um modelo usando filtros de acesso para limitar quais linhas de dados podem ser acessadas, como se houvesse um filtro automático nas consultas. Também é possível restringir o acesso a análises detalhadas, mesclagens, visualizações ou campos específicos usando permissões de acesso.
  • Acesso a recursos, que controla os tipos de ações que um usuário pode realizar no Looker, incluindo a visualização de dados e conteúdo salvo, a alteração dos modelos do LookML, a administração do Looker e assim por diante. O acesso aos recursos é gerenciado por conjuntos de permissões, que compõem a outra metade de um papel do Looker. Algumas permissões se aplicam a toda a instância do Looker, como a capacidade de conferir todas as programações de envio de dados. A maioria das permissões é aplicada a conjuntos de modelos específicos, como a possibilidade de acessar painéis definidos pelo usuário com base nesses modelos.

O acesso a dados, a recursos e ao conteúdo de usuários e grupos são combinados para especificar o que os usuários podem fazer e ver no Looker.

Usuários e grupos

No Looker, há usuários individuais e grupos de usuários. Os usuários são gerenciados na página Usuários do painel Administrador do Looker, e os grupos são gerenciados na página Grupos do painel Administrador do Looker.

A prática recomendada é usar grupos para evitar o tédio de atribuir, ajustar e remover controles para cada usuário individualmente. Normalmente, a combinação de atividades para permitir que um usuário seja organizada fazendo com que ele pertença a um ou mais grupos. Se nenhuma combinação de grupos for suficiente, crie um grupo com apenas um usuário, o que permite expandir o grupo para mais pessoas no futuro. Para filtros de acesso, considere usar atributos do usuário, já que é possível atribuir atributos do usuário a grupos.

Como controlar o acesso ao conteúdo do usuário

As pastas do Looker permitem organizar conjuntos de painéis e Looks. Elas também podem conter outras pastas, facilitando uma hierarquia aninhada de organização.

As pastas permitem definir níveis de acesso que determinam quais usuários podem editar o conteúdo de uma pasta (como Looks e dashboards), visualizar o conteúdo em uma pasta e alterar as configurações:

  • O usuário precisa ter pelo menos o nível de acesso View a uma pasta para conferir se ela existe, para visualizar os Looks e dashboards dentro dela e para copiar os Looks e os dashboards na pasta.

  • O usuário precisa ter o nível de acesso Gerenciar acesso, edição para uma pasta gerenciar o acesso e editar a pasta e o conteúdo dela, incluindo renomear pastas, mover conteúdo e excluir Looks e dashboards.

As pastas não controlam o que os usuários podem fazer na plataforma do Looker ou quais dados eles podem usar para criar o próprio conteúdo. Para gerenciar esse nível de acesso, consulte a seção Como controlar o acesso a recursos e dados nesta página.

As instruções detalhadas para ajustar os níveis de acesso às pastas para usuários que estão navegando pelo conteúdo no Looker estão na página de documentação Organizar e gerenciar o acesso ao conteúdo. Os administradores do Looker também podem ajustar os níveis de acesso às pastas para todos os grupos e usuários na página Acesso ao conteúdo do Looker. Consulte também a página de documentação Como projetar e configurar um sistema de níveis de acesso para informações sobre o design do nível de acesso em toda a instância.

Embora o acesso ao conteúdo seja gerenciado separadamente do acesso aos recursos, a função atribuída a um usuário pode afetar a visualização de Looks e dashboards listados em uma pasta, de um Look ou um dashboard ou de gerenciamento de uma pasta. A seção Como o acesso e as permissões ao conteúdo interagem nesta página descreve em mais detalhes como o acesso aos recursos afeta o acesso ao conteúdo.

Como controlar o acesso a recursos e dados

Para controlar o acesso a recursos e dados no Looker, crie um grupo de usuários (opcional, mas recomendado) e atribua a ele uma função. Uma função vincula um conjunto de permissões a um conjunto de modelos do LookML. Os próprios modelos definem quais campos e dados estão disponíveis.

É possível aplicar limites de dados específicos a usuários específicos com filtros de acesso. Além disso, você pode limitar os desenvolvedores do Looker a trabalhar com modelos baseados em bancos de dados específicos usando projetos.

Também é possível controlar o acesso a explorações, junções, visualizações ou campos específicos criando concessão de acesso. As permissões de acesso limitam o acesso apenas a usuários que receberam valores específicos do atributo do usuário.

Se você quiser fazer isso ... Estas são as etapas básicas que você vai seguir:
Controlar as ações que um usuário pode realizar Criar um conjunto de permissões com as permissões apropriadas e atribuir um grupo ou usuário a uma função com ele
Controlar quais campos um usuário pode acessar Criar um modelo com os campos apropriados e atribuir um grupo ou usuário a uma função com esse modelo
Controlar quais dados um usuário pode acessar Crie um modelo com as limitações de dados adequadas e atribua um grupo ou usuário a uma função com esse modelo

- ou -

Use filtros de acesso para limitar um usuário aos dados adequados.

- ou -

Use atributos do usuário para fornecer credenciais de banco de dados diferentes a um grupo ou usuário

- ou -

Use atributos do usuário com concessão de acesso para restringir o acesso a explorações, junções, visualizações ou campos específicos.
Controlar quais conexões de banco de dados um desenvolvedor do Looker pode acessar Crie um projeto com as conexões adequadas, associe o projeto a um conjunto de modelos e atribua um grupo ou usuário a uma função com esses modelos

O acesso a recursos também pode afetar o acesso ao conteúdo. Consulte a seção Como o acesso ao conteúdo e as permissões interagem nesta página para mais detalhes sobre como o acesso aos dados e aos recursos afetam o acesso ao conteúdo.

Elementos básicos que você precisa entender

Papéis

Um papel é uma combinação de um conjunto de permissões e um conjunto de modelos. Um conjunto de permissões é composto por uma ou mais permissões e define o que o papel pode fazer. Um conjunto de modelos é composto por um ou mais modelos e define a quais modelos do LookML o papel se aplica.

Após criar uma função, é possível atribuir a ela um usuário individual ou um grupo de usuários. Se você adicionar algumas funções a um usuário individual e outras a um grupo ao qual ele pertence, o usuário vai herdar todas essas funções juntas.

Algumas permissões são relevantes para toda a instância do Looker, outras só se aplicam aos modelos com a mesma função. Consulte a página de documentação sobre papéis para mais informações.

Projetos

Os projetos permitem restringir quais conexões de banco de dados podem ser usadas por quais modelos. Isso pode ajudar a controlar quais conjuntos de dados os desenvolvedores do Looker podem acessar ao criar modelos. Um projeto pode conter um ou mais modelos e pode ser configurado para usar uma ou mais conexões.

Essa restrição definida por projetos também flui para o Looker SQL Runner, o que garante que os desenvolvedores não tenham acesso a conexões de banco de dados proibidas usando o SQL Runner.

Atributos do usuário

Com os atributos de usuário, é possível atribuir valores arbitrários a grupos de usuários ou usuários individuais. Esses valores são usados como entradas para várias partes do Looker, personalizando as experiências para cada usuário.

Uma maneira de os atributos do usuário controlarem o acesso é parametrizando as credenciais do banco de dados para que sejam específicas para cada usuário. Isso só terá valor se o banco de dados tiver vários usuários com acessos diferentes aos dados. Consulte a página de documentação Atributos do usuário para mais informações.

Os atributos do usuário também controlam o acesso como parte dos filtros de acesso. Com os filtros de acesso, é possível usar um ou mais atributos de usuário como filtro de dados. Por exemplo, você pode atribuir um nome de empresa a cada usuário e filtrar o conteúdo que eles veem por esse nome. Para uma descrição de como aplicar filtros de acesso, consulte as páginas de documentação Atributos do usuário e access_filter.

Os atributos do usuário também controlam as permissões de acesso. Uma concessão de acesso especifica um atributo do usuário e define valores permitidos nesse atributo para conceder acesso a uma Análise, participação, visualização ou campo. Em seguida, use o parâmetro required_access_grants no nível Explorar, juntar, visualização ou campo para restringir o acesso a essas estruturas do LookML apenas aos usuários que têm os valores de atributo de usuário permitidos. Por exemplo, é possível usar uma concessão de acesso para limitar o acesso à dimensão salary apenas aos usuários que têm o valor payroll no atributo de usuário department. Para conferir uma descrição de como definir concessões de acesso, consulte a página de documentação do parâmetro access_grant.

Como usar os elementos básicos

Controlar o acesso a recursos

As permissões controlam os tipos de atividades que um usuário ou grupo pode realizar. É assim que um usuário pode receber permissões:

  1. A prática recomendada é identificar um ou mais grupos de usuários que precisam ter um conjunto de permissões e criar um grupo, se necessário. Você pode conceder permissões a usuários individuais, se quiser.
  2. Crie um conjunto de permissões que contenha as permissões adequadas.
  3. Se algumas das permissões a serem atribuídas forem específicas do modelo, crie ou identifique um conjunto de modelos.
  4. Crie um papel que combine o conjunto de permissões e, se necessário, o conjunto de modelos.
  5. Atribua a função na página Papéis. Depois de criada, a função também pode ser atribuída a um usuário na página Usuários.

É possível atribuir várias funções a um usuário ou grupo. Nesse caso, os usuários terão todas as permissões de todos os papéis que tiverem. Exemplo:

  • A função 1 permite visualizar painéis no Modelo1.
  • Com o Role2, é possível conferir painéis e explorá-los no Model2.

Se você atribuir os dois papéis ao mesmo grupo de usuários, eles poderão acessar os painéis no Model1 e no Model2, mas só poderão ser explorados no Model2.

Controlar o acesso dos usuários aos campos do Looker

Os campos com que um usuário pode trabalhar são controlados pelos modelos que ele pode acessar. É assim que um usuário pode ter acesso ao campo:

  1. Crie um modelo do LookML (ou uma combinação de modelos do LookML) que contenha apenas os campos a que um usuário precisa ter acesso.
  2. Acesse Administrador > Usuários > Papéis.
  3. Na página Papéis, crie um conjunto de modelos que contenha esses modelos e o atribua a um papel.
  4. Para trabalhar com grupos de usuários, o que geralmente é considerado uma prática recomendada, crie um grupo na página Grupos do Looker. Em seguida, atribua esse grupo aos papéis apropriados na página Papéis.
  5. Para trabalhar com usuários individuais, atribua papéis a eles nas páginas Usuários ou Funções.

É possível atribuir várias funções a um usuário ou grupo. Os usuários podem trabalhar com todos os modelos de todos os papéis que têm.

É importante observar que o parâmetro hidden para campos foi criado para criar experiências mais limpas para os usuários, não para controlar o acesso a campos. O parâmetro hidden oculta campos do seletor de campos, mas não impede que um usuário use esse campo. Se alguém enviar um link que usa esse campo, ele vai aparecer, e outros lugares no Looker ainda vão mostrar o campo.

Controlar o acesso dos usuários aos dados

Há várias maneiras de controlar o acesso de um usuário aos dados, dependendo do caso de uso:

  • Para impedir que os usuários acessem determinadas colunas de dados, controle os campos que eles podem acessar, conforme descrito na seção Controlar o acesso dos usuários aos campos do Looker. Enquanto um usuário não puder desenvolver e usar o SQL Runner, ele será limitado pelos campos a que tem acesso.
  • Para impedir que os usuários confiram determinadas linhas de dados, aplique os campos de filtro de acesso, conforme descrito na página de documentação do parâmetro access_filter.
  • Para limitar o acesso a análises detalhadas, mesclagens, visualizações ou campos específicos, crie permissões que limitem o acesso apenas aos usuários que receberam os valores de atributo de usuário permitidos, conforme descrito na página de documentação do parâmetro access_grant.
  • Para limitar os usuários do Looker a consultas em um usuário específico do banco de dados, que a equipe de banco de dados configurou para limitar o acesso aos dados, use os atributos do usuário. Elas permitem que você parametrize a conexão do banco de dados para que um grupo de usuários ou usuários individuais executem consultas com credenciais específicas do banco de dados. Também é recomendável limitar os usuários aos campos apropriados do Looker. Se você não fizer isso, o usuário do Looker poderá tentar consultar um campo que o usuário do banco de dados dele não tem acesso e receberá um erro.

Assim como o parâmetro de campo hidden não é destinado a controlar o acesso a campos, o parâmetro hidden para Análises não impede que todos os usuários acessem uma Análise. O parâmetro hidden remove a Análise do menu "Análise", mas se um usuário tiver salvo conteúdo que faz referência a uma Análise oculta, ele ainda terá acesso aos dados dela.

Se você estiver usando a incorporação assinada, configure os controles de acesso aos dados pelo URL de incorporação assinado.

Controlar o acesso dos desenvolvedores às conexões de banco de dados

Ao contrário dos usuários comuns, os desenvolvedores do Looker não são totalmente restritos por modelos e filtros de acesso, porque podem simplesmente fazer adições ou mudanças nos modelos do LookML. No entanto, os administradores ainda podem usar projetos para limitar os desenvolvedores do Looker a determinadas conexões de banco de dados. Para fazer isso, siga estas etapas:

  1. Crie um projeto que restrinja um determinado número de modelos a um determinado número de conexões de banco de dados. Isso é feito na página Gerenciar projetos do Looker.
  2. Acesse Administrador > Usuários > Papéis.
  3. Na página Papéis, crie um conjunto de modelos que contenha pelo menos um dos modelos no projeto e atribua-o a um papel.
  4. Para trabalhar com grupos de usuários, o que geralmente é considerado uma prática recomendada, crie um grupo na página Grupos do Looker. Em seguida, atribua esse grupo aos papéis apropriados na página Papéis.
  5. Para trabalhar com usuários individuais, atribua papéis a eles nas páginas Usuários ou Funções.

Se um desenvolvedor do Looker conseguir ver qualquer modelo que faça parte de um projeto, ele poderá visualizar todos os modelos que fazem parte desse projeto. Isso pode acontecer, por exemplo, se você atribuir um desenvolvedor do Looker a um papel com apenas um modelo, mas esse modelo fizer parte de um projeto que contém outros modelos.

Como o acesso ao conteúdo e as permissões interagem

O acesso ao conteúdo é gerenciado pelos usuários quando eles acessam uma pasta ou por um administrador do Looker na página Acesso ao conteúdo do painel Administrador. As funções atribuídas a um usuário determinam o acesso a recursos e dados. Isso afeta o que o usuário pode fazer em uma pasta e se ele pode acessar os painéis e os Looks.

Como visualizar dados em Looks e dashboards

Para acessar os dados de um visual ou painel, o usuário precisa ter pelo menos acesso de leitura à pasta em que o conteúdo está armazenado.

Os usuários precisam ter as permissões access_data e see_looks para selecionar um visual e acessar os dados dele. Os usuários precisam ter as permissões access_data e see_user_dashboards para selecionar um painel e visualizar os dados.

Para acessar os dados em um Bloco de pesquisa ou painel, o usuário precisa ter acesso a eles. Sem o acesso necessário aos dados:

  • Mesmo que o usuário consiga acessar um look listado em uma pasta e navegar até ele, a consulta do look não é executada e o usuário não consegue acessar os dados do look.
  • Mesmo que o usuário consiga acessar um painel listado em uma pasta e navegar até ele, qualquer bloco em que o usuário não tenha acesso é exibido em branco. Se um dashboard tiver blocos criados a partir de vários modelos, o usuário poderá ver os blocos associados aos modelos aos quais tem acesso, e os blocos de outros modelos vão mostrar um erro.

Por exemplo, um usuário que tem acesso de leitura a uma pasta, acesso de dados aos dados subjacentes a todos os Looks na pasta e as permissões access_data e see_looks pode acessar uma lista de todos os Looks na pasta e também pode acessar esses Looks. Se esse usuário não tiver acesso ao LookML ou aos dashboards definidos pelo usuário, não verá dashboards que possam existir na pasta.

Como exibir uma pasta e listas de Looks e dashboards

O usuário precisa ter pelo menos o nível de acesso Visualização em uma pasta para ter acesso a ela e conferir a lista de conteúdos armazenados dentro dela.

Os usuários que também têm pelo menos a permissão see_looks podem ver os títulos dos Looks na pasta. Os usuários que também têm pelo menos a permissão see_user_dashboards podem ver os títulos dos painéis na pasta. No entanto, isso não significa que eles possam acessar os dados dos Looks ou dashboards.

Por exemplo, um usuário que tem a permissão see_looks, mas não tem a permissão access_data, tem acesso aos títulos dos Looks, mas não aos dados deles.

Os usuários que têm a permissão access_data, mas não têm see_looks ou see_user_dashboards não podem acessar pastas ou conteúdo.

Modificar uma pasta

Um usuário precisa ter o nível de acesso Gerenciar acesso, Editar para organizar uma pasta, incluindo copiar e mover conteúdo, renomear e mover pastas e ações semelhantes. Os usuários também precisam ter a permissão manage_spaces para criar, editar, mover e excluir pastas.

Usar sua infraestrutura de permissões de usuário (LDAP, SAML e OpenID Connect)

Se você já tiver uma configuração de infraestrutura LDAP, SAML ou OpenID, poderá usar esse sistema para gerenciar os logins dos usuários. As instruções para a configuração do LDAP podem ser encontradas na página Autenticação LDAP. As instruções para configurar o SAML estão na página de documentação Autenticação SAML. As instruções para configurar o OpenID Connect estão na página de documentação da autenticação do OpenID Connect.

Se você tiver configurado grupos na implementação do LDAP, SAML ou OpenID Connect, também poderá usar esses grupos no Looker. No entanto, alguns pontos merecem atenção:

  • Todos os grupos criados são transferidos automaticamente para o Looker e ficam visíveis na página Grupos. Um grupo do Looker será criado para cada grupo do LDAP, SAML ou OpenID Connect, e o nome do grupo do Looker será igual ao do grupo do LDAP, SAML ou OpenID Connect.
  • Você poderá usar esses grupos do Looker para atribuir níveis de acesso a pastas e atributos do usuário aos membros dos grupos.
  • Não é possível usar grupos do Looker para configurar funções como faria com um grupo criado manualmente. Em vez disso, você vai mapear seus grupos do LDAP, SAML ou OpenID Connect para os papéis do Looker durante o processo de configuração, mas só vai poder alterar as funções atribuídas nas páginas de configuração do LDAP, SAML ou OpenID Connect. Exigimos essa abordagem para que seus grupos LDAP, SAML ou OpenID Connect continuem sendo sua única fonte de informações. Sem essa restrição, o mapeamento de grupo para função pode divergir da função pretendida no esquema LDAP, SAML ou OpenID Connect.

Também é possível usar o LDAP para aplicar conexões de banco de dados específicas do usuário a consultas do Looker, conforme descrito na página de documentação de Autenticação LDAP.