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 que pode gerenciar uma pasta pode manipular o conteúdo dela (copiando, movendo, excluindo e renomeando dashboards e Looks), organizar a 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 específicos na pasta.
  • Acesso a 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. Essas funções são aplicadas 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, recursos e conteúdo para usuários e grupos se combinam 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 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 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 à 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, o papel atribuído a um usuário pode afetar se ele pode acessar os Looks e painéis listados em uma pasta, visualizar um Look ou painel ou gerenciar 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.

É possível aplicar limites de dados específicos a usuários específicos 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 análises detalhadas, mesclagens, visualizações ou campos específicos criando permissões 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 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 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.

Depois de criar uma função, você pode atribuir um usuário individual ou um grupo de usuários a ela. 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 se aplicam apenas aos modelos na mesma função. Consulte a página de documentação sobre papéis para mais informações.

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

Os atributos do usuário permitem 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ó tem valor se o banco de dados tiver vários usuários com acesso a dados diferentes. Consulte a página de documentação Atributos do usuário para mais informações.

Outro modo de os atributos do usuário controlarem o acesso é como parte dos filtros de acesso. Os filtros de acesso permitem usar um ou mais atributos do 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 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.
  • A função2 permite acessar painéis e fazer análises no modelo2.

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 > Funções.
  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.
  • Para limitar os usuários do Looker a consultas em um usuário específico do banco de dados, que a equipe do 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 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 > Funções.
  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 puder acessar qualquer modelo que faça parte de um projeto, ele poderá acessar 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 acessar Looks e painéis.

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 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 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 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 aos dashboards do LookML ou definidos pelo usuário, ele não vai conseguir acessar os dashboards que estão 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, pode ver os títulos dos Looks, mas não os 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.

Modificar uma pasta

Um 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 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 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 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.