Control de acceso y administración de permisos

Los administradores de Looker pueden administrar lo que un usuario o un grupo de usuarios puede ver y hacer en Looker especificando el siguiente acceso:

  • Acceso al contenido, que controla si un usuario o un grupo de usuarios puede ver una carpeta o administrarla. Un usuario que puede ver una carpeta puede navegar a ella y ver las listas de los paneles y las miradas de la carpeta. Un usuario que puede administrar una carpeta puede manipular el contenido de una carpeta (copiar, mover, borrar y cambiar el nombre de los paneles y las vistas), organizar la carpeta (cambiar el nombre, mover o borrar la carpeta) y otorgar acceso a la carpeta a otros usuarios y grupos. Los administradores de Looker administran el acceso al contenido en el panel Administrador o, si se permite, los usuarios individuales desde la carpeta.
  • Acceso a los datos, que controla qué datos puede ver un usuario. El acceso a los datos se administra principalmente con los conjuntos de modelos, que conforman la mitad de un rol de Looker. Luego, estos roles se aplican a los usuarios y grupos. El acceso a los datos se puede restringir aún más dentro de un modelo con filtros de acceso para limitar las filas de datos que pueden ver, como si hubiera un filtro automático en sus consultas. También puedes restringir el acceso a Exploraciones, combinaciones, vistas o campos específicos con otorgamientos de acceso.
  • Acceso a funciones, que controla los tipos de acciones que un usuario puede realizar en Looker, como ver datos y contenido guardado, cambiar los modelos de LookML, administrar Looker, etcétera. Los conjuntos de permisos administran el acceso a las funciones y constituyen la otra mitad de un rol de Looker. Algunos de estos permisos se aplican a toda la instancia de Looker, como poder ver todas las programaciones para enviar datos. La mayoría de los permisos se aplican a conjuntos de modelos específicos, como poder ver paneles definidos por el usuario en función de esos modelos.

El acceso a los datos, a las funciones y al contenido para los usuarios y los grupos se combinan para especificar lo que los usuarios pueden hacer y ver en Looker.

Usuarios y grupos

En Looker, hay usuarios individuales y grupos de usuarios. Los usuarios se administran en la página Usuarios del panel Administrador de Looker, mientras que los grupos se administran en la página Grupos del panel Administrador de Looker.

La práctica recomendada es usar grupos para evitar la tediosa tarea de asignar, ajustar y quitar controles para los usuarios de forma individual. Por lo general, la combinación de actividades que se permite para un usuario se puede organizar de modo que pertenezca a uno o más grupos. Si ninguna combinación de grupos es suficiente, considera crear un grupo con un solo usuario, lo que te permitirá expandirlo a más personas en el futuro. Para los filtros de acceso, considera usar los atributos de usuario, ya que puedes asignarlos a los grupos.

Cómo controlar el acceso de los usuarios al contenido

Las carpetas de Looker te permiten organizar conjuntos de paneles y vistas. También pueden contener otras carpetas, lo que facilita una jerarquía de organización anidada.

Las carpetas te permiten establecer niveles de acceso que determinan qué usuarios pueden editar el contenido de una carpeta (como los aspectos y los paneles), ver el contenido de una carpeta y cambiar la configuración:

  • Un usuario debe tener, como mínimo, el nivel de acceso Ver a una carpeta para ver que existe, ver las vistas y los paneles que contiene, y copiarlos.

  • Un usuario debe tener el nivel de acceso Administrar acceso, Editar para una carpeta para administrar el acceso a ella y editarla, así como su contenido (incluidos cambiar el nombre de las carpetas, mover contenido y borrar vistas y paneles).

De lo contrario, las carpetas no controlan lo que los usuarios pueden hacer en la plataforma de Looker ni qué datos pueden usar para crear su propio contenido. Para administrar ese nivel de acceso, consulta la sección Controla el acceso a las funciones y los datos en esta página.

En nuestra página de documentación Organiza y administra el acceso al contenido, se explican las instrucciones paso a paso para ajustar los niveles de acceso a las carpetas para los usuarios que exploran contenido en Looker. Los administradores de Looker también pueden ajustar los niveles de acceso a las carpetas para todos los grupos y usuarios en la página Acceso al contenido de Looker. También puedes consultar la página de documentación Diseña y configura un sistema de niveles de acceso para obtener información sobre el diseño de niveles de acceso a nivel de la instancia.

Aunque el acceso al contenido se administra por separado del acceso a las funciones, el rol que se asigna a un usuario puede afectar si puede ver los informes y los paneles que aparecen en una carpeta, ver un informe o un panel, o administrar una carpeta. En la sección Cómo interactúan el acceso al contenido y los permisos de esta página, se describe con más detalle cómo el acceso a las funciones afecta el acceso al contenido.

Controla el acceso a las funciones y los datos

Para controlar el acceso a las funciones y los datos en Looker, por lo general, se crea un grupo de usuarios (esto es opcional, pero se recomienda) y se le asigna un rol. Un rol une un conjunto de permisos con un conjunto de modelos de LookML. Los modelos definen qué campos y datos están disponibles.

Puedes aplicar límites de datos específicos a usuarios específicos con los filtros de acceso. Además, puedes limitar a los desarrolladores de Looker a trabajar con modelos basados en bases de datos específicas mediante proyectos.

También puedes controlar el acceso a Exploraciones, combinaciones, vistas o campos específicos mediante la creación de otorgamientos de acceso. Los otorgamientos de acceso limitan el acceso solo a los usuarios a los que se les asignaron valores específicos de atributo de usuario.

Si quieres lograr esto… Estos son los pasos básicos que debes seguir:
Cómo controlar las acciones que puede realizar un usuario Crear un conjunto de permisos con los permisos adecuados y, luego, asignar un grupo o usuario a un rol con ese conjunto de permisos
Controla a qué campos puede acceder un usuario Crear un modelo con los campos adecuados y, luego, asignar un grupo o usuario a un rol con ese modelo
Controla a qué datos puede acceder un usuario Crear un modelo con las limitaciones de datos adecuadas y, luego, asignar un grupo o usuario a un rol con ese modelo

- o -

Usa filtros de acceso para limitar a un usuario a los datos adecuados.

- o -

Usa atributos de usuario para proporcionar credenciales de base de datos diferentes a un grupo o usuario.

- o -

Usa atributos de usuario con otorgamientos de acceso para restringir el acceso a Exploraciones, combinaciones, vistas o campos específicos.
Controla a qué conexiones de base de datos puede acceder un desarrollador de Looker Crear un proyecto con las conexiones adecuadas, asociarlo a un conjunto de modelos y, luego, asignar un grupo o usuario a un rol con esos modelos

El acceso a las funciones también puede afectar el acceso al contenido. Consulta la sección Cómo interactúan el acceso al contenido y los permisos de esta página para obtener más detalles sobre cómo el acceso a los datos y a las funciones afectan el acceso al contenido.

Elementos básicos que debes comprender

Funciones

Un rol es una combinación de un conjunto de permisos y un conjunto de modelos. Un conjunto de permisos se compone de uno o más permisos y define lo que puede hacer el rol. Un conjunto de modelos se compone de uno o más modelos y define a qué modelos de LookML se aplica el rol.

Después de crear un rol, puedes asignarle un usuario individual o un grupo de usuarios. Si agregas algunos roles a un usuario individual y otros a un grupo al que pertenece, el usuario heredará todos esos roles juntos.

Algunos permisos son relevantes para toda tu instancia de Looker, mientras que otros solo se aplican a los modelos dentro del mismo rol. Consulta la página de documentación de Roles para obtener más información.

Proyectos

Los proyectos te permiten restringir qué modelos pueden usar qué conexiones de base de datos. Esto puede ayudarte a controlar con qué conjuntos de datos pueden interactuar tus desarrolladores de Looker cuando crean modelos. Un proyecto puede contener uno o más modelos, y se puede configurar para usar una o más conexiones.

Esta restricción definida a través de los proyectos también se transmite al Ejecutor de SQL de Looker, lo que garantiza que tus desarrolladores no puedan acceder a conexiones de bases de datos prohibidas mediante el Ejecutor de SQL.

Atributos de usuario

Los atributos de usuario te permiten asignar valores arbitrarios a grupos de usuarios o usuarios individuales. Luego, estos valores se usan como entradas en varias partes de Looker, lo que permite personalizar las experiencias para cada usuario.

Una forma en que los atributos del usuario controlan el acceso es mediante la parametrización de las credenciales de la base de datos para que sean específicas para cada usuario. Esto solo tiene valor si tu base de datos tiene varios usuarios con acceso a datos variados. Consulta la página de documentación Atributos del usuario para obtener más información.

Otra forma en que los atributos de usuario controlan el acceso es como parte de los filtros de acceso. Los filtros de acceso te permiten utilizar uno o más atributos del usuario como filtro de datos. Por ejemplo, puedes asignarle a cada usuario un nombre de empresa y, luego, asegurarte de que el contenido que vea se filtre por ese nombre. Para obtener una descripción de cómo aplicar filtros de acceso, consulta la página de documentación de Atributos del usuario y la página de documentación del parámetro access_filter.

Los atributos del usuario también controlan los otorgamientos de acceso. Una concesión de acceso especifica un atributo de usuario y define los valores permitidos en ese atributo para otorgar acceso a una función de Explorar, unir, ver o un campo. Luego, usa el parámetro required_access_grants en el nivel de Explorar, Unión, Vista o Campo para restringir el acceso a esas estructuras de LookML solo a los usuarios que tengan los valores de atributo de usuario permitidos. Por ejemplo, puedes usar una concesión de acceso para limitar el acceso a la dimensión salary solo a los usuarios que tengan el valor payroll en su atributo de usuario department. Para obtener una descripción de cómo definir los otorgamientos de acceso, consulta la página de documentación del parámetro access_grant.

Cómo usar los componentes básicos

Cómo controlar el acceso a las funciones

Los permisos controlan los tipos de actividades que puede realizar un usuario o un grupo. De esta manera, un usuario puede obtener permisos:

  1. La práctica recomendada es identificar uno o más grupos de usuarios que deberían tener un conjunto de permisos y, si es necesario, crear un grupo. Si lo deseas, puedes otorgar permisos a usuarios individuales.
  2. Crea un conjunto de permisos que contenga los permisos adecuados.
  3. Si algunos de los permisos que se asignarán son específicos del modelo, crea o identifica un conjunto de modelos existente.
  4. Crea un rol que combine el conjunto de permisos y, si es necesario, el conjunto de modelos.
  5. Asigna el rol desde la página Roles. Una vez que el rol exista, también podrás asignarlo a un usuario en la página Usuarios.

Puedes asignar varios roles a un usuario o grupo. En ese caso, los usuarios tendrán todos los permisos de todos los roles que tengan. Por ejemplo:

  • El rol 1 permite ver los paneles en el modelo 1.
  • El rol 2 permite ver paneles y explorar en el modelo 2.

Si asignas ambos roles al mismo grupo de usuarios, estos podrán ver los paneles en Model1 y Model2, pero solo podrán explorar en Model2.

Controla el acceso de los usuarios a los campos de Looker

Los campos con los que puede trabajar un usuario están controlados por los modelos a los que puede acceder. De esta manera, un usuario puede obtener acceso de campo:

  1. Crea un modelo de LookML (o una combinación de modelos de LookML) que contenga solo los campos a los que un usuario debe tener acceso.
  2. Ve a Administrador > Usuarios > Roles.
  3. En la página Roles, crea un conjunto de modelos que contenga esos modelos y, luego, asígnale un rol.
  4. Para trabajar con grupos de usuarios, que se considera una práctica recomendada, crea un grupo en la página Grupos de Looker. Luego, asigna ese grupo a los roles adecuados en la página Roles.
  5. Para trabajar con usuarios individuales, asígnales roles desde la página Usuarios o Roles.

Puedes asignar varios roles a un usuario o grupo. Luego, los usuarios pueden trabajar con todos los modelos de todos los roles que tienen.

Es importante tener en cuenta que el parámetro hidden para los campos está diseñado para crear experiencias más claras para los usuarios, no para controlar el acceso a los campos. El parámetro hidden oculta los campos del selector de campos, pero no impedirá que un usuario los use. Si alguien le envía un vínculo que usa ese campo, podrá verlo, y otros lugares de Looker seguirán mostrando el campo.

Controla el acceso de los usuarios a los datos

Existen varias formas de controlar el acceso de un usuario a los datos, según el caso de uso:

  • Para prohibir que los usuarios vean ciertas columnas de datos, controla los campos a los que pueden acceder, como se describe en la sección Controla el acceso de los usuarios a los campos de Looker. Mientras un usuario no pueda desarrollar ni usar SQL Runner, estará limitado por los campos a los que tiene acceso.
  • Para prohibir que los usuarios vean ciertas filas de datos, aplica campos de filtro de acceso, como se describe en la página de documentación del parámetro access_filter.
  • Para limitar el acceso a Exploraciones, combinaciones, vistas o campos específicos, crea concesiones de acceso que limiten el acceso solo a los usuarios a los que se les asignen los valores de atributos de usuario permitidos, como se describe en la página de documentación del parámetro access_grant.
  • Para limitar a los usuarios de Looker a ejecutar consultas en un usuario específico de la base de datos, que tu equipo de base de datos configuró para limitar el acceso a los datos, usa los atributos del usuario. Te permiten parametrizar la conexión de tu base de datos para que un grupo de usuarios o usuarios individuales ejecuten sus consultas con credenciales de base de datos específicas. También deberías considerar limitar a los usuarios a los campos de Looker adecuados. De lo contrario, el usuario de Looker puede intentar consultar un campo al que su usuario de base de datos no tiene acceso y recibirá un error.

Al igual que el parámetro de campo hidden no está diseñado para controlar el acceso a los campos, el parámetro hidden de Explorar no impide que todos los usuarios vean una exploración. El parámetro hidden quita la función Explorar del menú Explorar, pero si un usuario guardó contenido que hace referencia a una función Explorar oculta, seguirá teniendo acceso a sus datos.

Si usas incorporaciones firmadas, asegúrate de configurar los controles de acceso a los datos a través de la URL de incorporación firmada.

Controla el acceso de los desarrolladores a las conexiones de bases de datos

A diferencia de los usuarios normales, los desarrolladores de Looker no están completamente limitados por los modelos y los filtros de acceso, ya que pueden agregar o modificar modelos de LookML. Sin embargo, los administradores aún pueden limitar a los desarrolladores de Looker a ciertas conexiones de bases de datos mediante proyectos. Para ello, deberás hacer lo siguiente:

  1. Crea un proyecto que restrinja una cantidad determinada de modelos a una cantidad determinada de conexiones de bases de datos. Para ello, ve a la página Administrar proyectos de Looker.
  2. Ve a Administrador > Usuarios > Roles.
  3. En la página Roles, crea un conjunto de modelos que contenga al menos uno de los modelos del proyecto y, luego, asígnale un rol.
  4. Para trabajar con grupos de usuarios, que se considera una práctica recomendada, crea un grupo en la página Grupos de Looker. Luego, asigna ese grupo a los roles adecuados en la página Roles.
  5. Para trabajar con usuarios individuales, asígnales roles desde la página Usuarios o Roles.

Si un desarrollador de Looker puede ver cualquier modelo que forma parte de un proyecto, podrá ver todos los modelos que forman parte de ese proyecto. Por ejemplo, esto podría suceder si asignaste a un desarrollador de Looker a un rol con un solo modelo, pero ese modelo formaba parte de un proyecto que contenía otros modelos.

Cómo interactúan el acceso al contenido y los permisos

Los usuarios administran el acceso al contenido cuando ven una carpeta, o bien un administrador de Looker lo hace en la página Acceso al contenido del panel Administrador. Los roles que se asignan a un usuario determinan su acceso a las funciones y los datos. Esto afecta lo que el usuario puede hacer en una carpeta y si puede ver los aspectos y los paneles.

Cómo ver datos en las Vistas y los paneles

Para ver los datos de un aspecto o panel, el usuario debe tener, como mínimo, acceso de Visualización a la carpeta en la que se almacena el contenido.

Los usuarios deben tener los permisos access_data y see_looks para seleccionar un aspecto y ver sus datos. Los usuarios deben tener los permisos access_data y see_user_dashboards para seleccionar un panel y ver sus datos.

Para ver los datos de una tarjeta de aspecto o panel, el usuario debe tener acceso a ellos. Sin el acceso a los datos necesario, ocurrirá lo siguiente:

  • Incluso si el usuario puede ver un aspecto en una carpeta y puede navegar a él, no se ejecuta la consulta del aspecto y el usuario no puede ver sus datos.
  • Incluso si el usuario puede ver un panel en una carpeta y puede navegar a él, cualquier tarjeta a la que no tenga acceso se mostrará en blanco. Si un panel tiene tarjetas creadas a partir de varios modelos, el usuario podrá ver las tarjetas asociadas con los modelos a los que tiene acceso, y las tarjetas de otros modelos mostrarán un error.

Por ejemplo, un usuario que tiene acceso de Visualización a una carpeta, acceso a los datos subyacentes a todas las tablas de la carpeta y permisos de access_data y see_looks puede ver una lista de todas las tablas de la carpeta y también puede ver esas tablas. Si este usuario no tiene acceso para ver LookML o paneles definidos por el usuario, no verá ningún panel que pueda existir en la carpeta.

Cómo ver una carpeta y listas de paneles y diseños

Los usuarios necesitan al menos el nivel de acceso Ver a una carpeta para poder verla y ver la lista de contenido almacenado en ella.

Los usuarios que también tienen al menos el permiso see_looks pueden ver los títulos de los looks en la carpeta. Los usuarios que también tienen al menos el permiso see_user_dashboards pueden ver los títulos de los paneles en la carpeta. Sin embargo, esto no implica que puedan ver los datos de los aspectos visuales ni los paneles.

Por ejemplo, un usuario que tiene el permiso see_looks, pero no tiene el permiso access_data, puede ver los títulos de los looks, pero no puede ver los datos de los looks.

Los usuarios que tienen el permiso access_data, pero no tienen see_looks ni see_user_dashboards, no pueden ver ninguna carpeta ni contenido.

Cómo modificar una carpeta

Un usuario debe tener el nivel de acceso Administrar acceso, Editar para una carpeta para poder organizarla, lo que incluye copiar y mover contenido, cambiar el nombre de las carpetas y moverlas, y realizar acciones similares. Los usuarios también deben tener el permiso manage_spaces para crear, editar, mover y borrar carpetas.

Usar tu infraestructura de permisos de usuario (LDAP, SAML y OpenID Connect)

Si ya tienes una infraestructura de LDAP, SAML o OpenID configurada, puedes usar ese sistema para administrar los accesos de los usuarios. Puedes encontrar las instrucciones para configurar LDAP en la página Autenticación de LDAP. Puedes encontrar las instrucciones para configurar SAML en la página de documentación de autenticación de SAML. Puedes encontrar las instrucciones para configurar OpenID Connect en la página de documentación de autenticación de OpenID Connect.

Si configuraste grupos en tu implementación de LDAP, SAML o OpenID Connect, también puedes usar esos grupos en Looker. Sin embargo, debes tener en cuenta lo siguiente:

  • Los grupos que hayas creado se transferirán automáticamente a Looker y se podrán ver en la página Grupos. Se creará un grupo de Looker para cada grupo de LDAP, SAML o OpenID Connect, y el nombre del grupo de Looker reflejará el nombre del grupo de LDAP, SAML o OpenID Connect.
  • Podrás usar estos grupos de Looker para asignar niveles de acceso a las carpetas y atributos de usuario a los miembros de los grupos.
  • No podrás usar los grupos de Looker para configurar roles como lo harías con un grupo creado de forma manual. En su lugar, asignarás tus grupos de LDAP, SAML o OpenID Connect a roles de Looker durante el proceso de configuración y solo podrás cambiar los roles asignados desde las páginas de configuración de LDAP, SAML o OpenID Connect. Requerimos este enfoque para que tus grupos de LDAP, SAML o OpenID Connect sigan siendo tu única fuente de información. Sin esta restricción, la asignación de grupos a roles podría diferir de su función prevista en tu esquema de LDAP, SAML o OpenID Connect.

También puedes usar LDAP para aplicar conexiones de base de datos específicas del usuario a las consultas de Looker, como se describe en la página de documentación de autenticación de LDAP.