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 acessar e fazer no Looker especificando o seguinte acesso:

  • Acesso ao conteúdo, que controla se um usuário ou grupo de usuários pode ver ou gerenciar uma pasta. Um usuário que possa visualizar uma pasta pode navegar até a pasta e visualizar as listas de dashboards e Looks na pasta. Um usuário com permissão para 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 a outros usuários e grupos acesso a ela. O acesso ao conteúdo é gerenciado pelos administradores do Looker no painel Administrador ou, se permitido, por usuários específicos 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 aos dados pode ser ainda mais restrito em um modelo usando filtros de acesso para limitar quais linhas de dados eles podem ver, como se houvesse um filtro automático nas consultas. Você também pode restringir o acesso a explorações, junções, visualizações ou campos específicos usando concessão de acesso.
  • Acesso a recursos, que controla os tipos de ações que um usuário pode realizar no Looker, incluindo visualizar dados e conteúdo salvo, alterar os modelos do LookML, administrar o 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

O Looker tem usuários individuais e grupos de usuários. Os usuários são gerenciados na página Usuários do painel Administrador do Looker, enquanto 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 que permite a um usuário pode ser organizada fazendo com que esse usuário 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 de usuário, já que é possível atribuir atributos de usuário a grupos.

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

As pastas do Looker permitem organizar conjuntos de dashboards 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 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 sobre como ajustar os níveis de acesso à pasta para usuários que pesquisam conteúdo no Looker são abordadas na página de documentação Como organizar e gerenciar o acesso ao conteúdo. Os administradores do Looker também podem ajustar os níveis de acesso à pasta 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 ver informações sobre o design do nível de acesso para 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 LookML. Os próprios modelos definem quais campos e dados estão disponíveis.

Você pode aplicar limites de dados específicos a determinados usuários com filtros de acesso. E 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 concessões de acesso limitam o acesso apenas a usuários com valores específicos de atributo do usuário atribuídos.

Se você quiser fazer isso ... Estas são as etapas básicas que você 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 Criar um modelo com as limitações de dados apropriadas e atribuir um grupo ou usuário a uma função com esse modelo

- ou -

Usar filtros de acesso para limitar um usuário aos dados apropriados

- ou -

Use atributos de usuário para fornecer diferentes credenciais de banco de dados 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 Criar um projeto com as conexões apropriadas, associá-lo a um conjunto de modelos e atribuir um grupo ou usuário a um papel 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 é a 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 a função pode fazer. Um conjunto de modelos é formado 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 alguns papéis a um usuário individual e outros a um grupo ao qual o usuário pertence, o usuário herdará todos esses papéis juntos.

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

Projetos

Os projetos permitem restringir as conexões de banco de dados que podem ser usadas por cada modelo. Isso ajuda a controlar com quais conjuntos de dados os desenvolvedores do Looker podem interagir 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 é parametrizar 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, é possível atribuir a cada usuário um nome de empresa e verificar se o conteúdo exibido para ele é filtrado 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 concessõ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, mesclar, visualização ou campo para restringir o acesso a essas estruturas do LookML apenas aos usuários que têm os valores de atributo do 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 aos 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. É possível conceder permissões a usuários individuais, se você quiser.
  2. Crie um conjunto de permissões que contenha as permissões apropriadas.
  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 o papel 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:

  • Com o Role1, é possível conferir os painéis do Model1.
  • 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 do usuário aos campos do Looker

Os campos com os quais um usuário pode trabalhar são controlados pelos modelos que o usuário 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) contendo apenas os campos aos quais um usuário deve 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 é 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 todas as funções que tiverem.

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

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 confiram 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 o usuário não puder desenvolver nem usar o SQL Runner, ele ficará limitado pelos campos aos quais 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 explorações, junções, visualizações ou campos específicos, crie concessões de acesso que limitem o acesso apenas aos usuários com os valores de atributo de usuário permitidos, conforme descrito na página de documentação do parâmetro access_grant.
  • Se quiser limitar o acesso dos usuários do Looker a uma consulta específica em um usuário do banco de dados configurado pela equipe do banco de dados para limitar o acesso, use os atributos do usuário. Eles permitem parametrizar sua conexão de banco de dados para que um grupo de usuários ou usuários individuais executem suas consultas com credenciais de banco de dados específicas. 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 se destina a controlar o acesso ao campo, o parâmetro hidden para "Análises" não impede que todos os usuários a visualizem. O parâmetro hidden remove a Análise do menu Explorar, mas, se um usuário tiver salvado 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 ficam totalmente limitados por modelos e filtros de acesso, porque podem simplesmente fazer adições ou alterações 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. Criar um projeto que restrinja um determinado número de modelos a um determinado número de conexões de banco de dados. Isso pode ser 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 é 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. Por exemplo, isso pode acontecer se você atribuir a um desenvolvedor do Looker a um papel com apenas um modelo, mas esse modelo fizer parte de um projeto com outros modelos.

Como as permissões e o acesso ao conteúdo 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 recurso e o acesso aos dados do usuário. Isso afeta o que o usuário pode fazer em uma pasta e se ele pode visualizar Looks e dashboards.

Como visualizar dados em Looks e dashboards

Para visualizar os dados de um Look ou um dashboard, o usuário precisa ter pelo menos o acesso de Visualização à pasta em que o conteúdo está armazenado.

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

Para conferir os dados em um bloco do Look ou do dashboard, o usuário precisa ter acesso a eles. Sem o acesso necessário aos dados:

  • Mesmo que o usuário possa ver um Look listado em uma pasta e navegar até o Look, a consulta dele não será executada, e o usuário não poderá acessar os dados dele.
  • Mesmo que o usuário possa ver um dashboard listado em uma pasta e navegar até ele, qualquer bloco a que o usuário não tenha acesso será exibido como 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 com acesso View para uma pasta, acesso aos dados para os dados subjacentes de todos os Looks na pasta e as permissões access_data e see_looks podem acessar uma lista de todos os Looks na pasta e também visualizar 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 conferir 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 podem 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 ver nenhuma pasta ou conteúdo.

Como modificar uma pasta

O usuário precisa ter o nível de acesso Gerenciar acesso, Editar para uma pasta poder organizá-la, inclusive copiar e mover conteúdo, renomear e mover pastas e outras 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 de LDAP, SAML ou OpenID, poderá usar esse sistema para gerenciar logins de usuário. As instruções para a configuração do LDAP podem ser encontradas na página Autenticação LDAP. As instruções para a configuração do SAML podem ser encontradas na página de documentação da autenticação SAML. As instruções para configurar o OpenID Connect podem ser encontradas 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ê vai poder usar esses grupos do Looker para atribuir níveis de acesso a pastas e atributos de usuário aos participantes.
  • Não é possível usar os grupos do Looker para configurar papéis, como você 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 do 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.