Configuración del administrador: Atributos del usuario

Los atributos de usuario proporcionan una experiencia personalizada para cada usuario de Looker. Un administrador de Looker define un atributo de usuario y, luego, aplica un valor de atributo de usuario a un grupo de usuarios o a usuarios individuales.

Los administradores también pueden definir atributos de usuario para los que los propios usuarios proporcionan valores, como contraseñas o información de contacto. En varios lugares de Looker, se puede hacer referencia a los atributos del usuario para proporcionar una experiencia personalizada para cada uno.

Looker incluye automáticamente algunos atributos de usuario, como email, first_name, landing_page, last_name, full_name, ID, timezone (si está configurado), locale y number_format.

Cómo ver los atributos de usuario

Para ver tu lista de atributos de usuario, ve a la página Atributos de usuario en la sección Usuarios del menú Administrador.

La tabla de atributos de usuario proporciona el nombre, la etiqueta y el tipo de cada atributo de usuario (consulta la siguiente sección para obtener más información). Además, la tabla proporciona un botón para las acciones que puedes realizar en el atributo del usuario. Algunos atributos muestran "Predeterminado del sistema" en lugar de un botón para las acciones, lo que significa que Looker crea automáticamente esos atributos para cada usuario. Looker reserva los atributos de usuario predeterminados del sistema para uso interno y no se pueden editar.

Cómo crear atributos de usuario

Para definir un atributo de usuario, haz clic en el botón Crear atributo de usuario en la página Atributos de usuario, en la sección Usuarios del menú Administrador. Cada atributo de usuario tiene la siguiente configuración:

  • Nombre: Es el nombre del atributo de usuario, para usar en entornos basados en texto como LookML (los nombres solo pueden contener letras minúsculas, números y guiones bajos).
  • Etiqueta: Es la versión fácil de usar del nombre. De forma predeterminada, este será el nombre del atributo, con guiones bajos reemplazados por espacios y cada palabra en mayúsculas. Sin embargo, la etiqueta se puede modificar según sea necesario.
  • Tipo de datos: Este parámetro de configuración se usa para verificar que se asignen valores válidos a los usuarios para este atributo. El tipo de datos del atributo del usuario puede ser uno de los siguientes:

    • Cadena: Selecciona esta opción para crear un atributo de usuario que coincida exactamente con un valor de cadena, como un nombre de usuario. Para usar varios valores de cadena o una expresión de filtro de Looker en el valor del atributo de usuario, selecciona la opción Filtro de cadenas (avanzado). Si deseas que tu atributo de usuario se trate como una cadena literal, asegúrate de incluir comillas simples ' en su sintaxis, como en este ejemplo: '{{ _user_attributes['name_of_attribute'] }}'
    • Número: Selecciona esta opción para especificar un solo número, como el número de empleado. Para usar un rango de números o una expresión de filtro de Looker, en su lugar, usa el Filtro de números (avanzado).
    • Fecha/hora: Selecciona esta opción para especificar una sola hora o fecha, como la fecha de nacimiento del usuario. Para usar un período o una expresión de filtro de Looker, usa el Filtro de fecha y hora (avanzado).
    • URL relativa: Selecciona esta opción para especificar una URL relativa, como /browse/boards/2, que apunte a contenido específico, como una pizarra, una carpeta o un archivo de Markdown (como un archivo README o de documento de un proyecto) en tu instancia de Looker. Por ejemplo, el atributo de usuario landing_page tiene un tipo de datos de URL relativa y se puede usar para especificar una página principal específica para un usuario o grupo.
    • Filtro de cadenas (avanzado): Selecciona esta opción para permitir múltiples valores de cadena o una expresión de filtro de Looker en el atributo de usuario. Consulta la página de documentación de expresiones de filtro para obtener una lista de expresiones de filtro que puedes usar para cadenas.
    • Filtro de número (avanzado): Selecciona esta opción para permitir un rango de valores numéricos o una expresión de filtro de Looker en el atributo del usuario. Consulta la página de documentación Expresiones de filtro para obtener una lista de las expresiones de filtro que puedes usar para números.
    • Filtro de fecha/hora (avanzado): Selecciona esta opción para permitir un período o una expresión de filtro de Looker en el atributo de usuario. Consulta la página de documentación Expresiones de filtro para obtener una lista de expresiones de filtro que puedes usar para la fecha y la hora.

    Usa los tipos de datos Filtro de cadena (avanzado), Filtro de número (avanzado) y Filtro de fecha y hora (avanzado) para ingresar valores con expresiones de filtro de Looker, que mostrarán un rango de valores para un atributo del usuario.

  • Acceso de usuario: Puedes elegir el nivel de visibilidad y de edición que tienen los usuarios para un atributo de usuario.

    • Ninguna: No aparecerá en las carpetas de los usuarios. las páginas de tu cuenta.
    • Vista: Aparecerá en las carpetas de los usuarios. las páginas de tu cuenta, pero no podrás editarlas.
    • Editar: Aparecerá en las páginas de las cuentas de los usuarios y el usuario podrá configurarla.
  • Ocultar valores: Incluso si los atributos del usuario son visibles para los usuarios, si estableces esta opción en , se enmascararán los valores de los atributos del usuario, lo que es útil para las contraseñas y otra información sensible. Si configuras este valor en Yes, también se enmascara el valor del atributo de usuario en los menús desplegables de atributos de usuario de la página Configuración de conexión. Una vez que el valor se establece en Yes, no se puede volver a cambiar a No. Si configuras Ocultar valores como , también debes especificar una lista de dominios permitidos como destino para el atributo de usuario.

  • Lista de dominios permitidos: Cuando ocultes los valores de un atributo de usuario nuevo, también deberás especificar una lista de dominios permitidos que conste de las URLs a las que se puede enviar el atributo, como nombres de host para conexiones de bases de datos y URLs para integraciones HTTPS de Git en proyectos. Puedes utilizar el comodín (*) para habilitar la publicación a varias páginas del mismo sitio. Una vez que hayas especificado una lista de entidades permitidas de dominios, el atributo del usuario solo se podrá publicar en los destinos que hayas indicado.

    Una vez que hayas especificado la lista de entidades permitidas de dominios para este atributo de usuario, si se le asignó algún valor (para un usuario, un grupo o mediante la configuración de un valor predeterminado), no podrás cambiar la lista de entidades permitidas para que las URLs sean menos restrictivas. Solo puedes hacer que las URLs sean más restrictivas o quitarlas de la lista de entidades permitidas. Por ejemplo, si la Lista de dominios permitidos incluye una entrada my_domain/route/*, no podrás cambiarla más adelante a my_domain/*. Si necesitas que la lista de entidades permitidas sea menos restrictiva, borra todos los valores existentes asignados al atributo del usuario, incluidos los valores predeterminados.

  • Establecer un valor predeterminado: Selecciona esta casilla de verificación para establecer un valor predeterminado en caso de que no se asigne un valor a un usuario.

Una vez que definas un atributo de usuario, podrás asignar valores a usuarios individuales o grupos de usuarios. Para ello, haz clic en las pestañas Valores del usuario y Valores de grupo de la página.

Cómo asignar valores a usuarios individuales

Después de definir un atributo de usuario, puedes asignarle un valor a un usuario individual:

  1. Haz clic en la pestaña Valores del usuario en la página Atributos del usuario de la sección Usuarios del menú Administrador.
  2. En el menú desplegable, elige el usuario al que quieres asignarle un valor. Se mostrará una tabla de valores que se aplican a ese usuario.
  3. Haz clic en el botón Set Value for User.
  4. Ingresa el valor nuevo en el campo Valor nuevo.
  5. Haz clic en Guardar.

Cuando se asigna un valor a un usuario individual, ese valor siempre tiene prioridad sobre los valores que se asignan a los grupos de ese usuario. En la pestaña Valores del usuario, se muestra cuando se asignó un valor personalizado a un atributo de usuario que anula un valor de grupo. El texto "Anulado" aparecerá junto a los valores anulados, y estos valores no se tendrán en cuenta. El texto "Current Value" junto al valor del atributo de usuario activo.

Para asignar varios valores a un atributo de usuario, usa el tipo de datos Filtro de cadena (avanzado) y, luego, ingresa varios valores separados por comas. Asegúrate de que no haya espacios en blanco entre los valores. Por ejemplo, puedes ingresar la cadena: Executive, Management, Contributors.

Para asignar todos los valores posibles a un administrador de Looker o a otro usuario, usa un valor comodín en el atributo de usuario:

  • Para otorgar a un administrador o a otro usuario acceso a todos los valores de un campo de cadena, establece el tipo de datos del atributo de usuario en Filtro de cadena (avanzado) y usa el valor %, NULL.

  • Para otorgarle a un administrador o a otro usuario acceso a todos los valores de un campo numérico, establece el tipo de datos del atributo de usuario en Filtro numérico (avanzado) y usa un valor de <0, >=0, NULL.

Asigna valores a grupos de usuarios

Puedes asignar un valor para un atributo de usuario a un grupo de usuarios. En la página User Attributes del panel Admin, selecciona Edit a la derecha del atributo que deseas establecer. Luego, sigue estos pasos:

  1. Haz clic en la pestaña Group Values.
  2. Haz clic en el botón + Agregar grupo.
  3. Elige el grupo al que deseas asignar un valor en el menú desplegable.
  4. Ingresa el valor que tendrá el grupo en el campo Valor.
  5. Haz clic en Guardar.

Cuando se asigna un valor a varios grupos, debes decidir qué grupo debe tener prioridad, en caso de que un usuario pertenezca a varios grupos. Para ello, arrastra los grupos en el orden que se debe aplicar. Cada grupo tiene prioridad sobre los grupos que se enumeran debajo de él.

Por ejemplo, puedes tener grupos de equipo ejecutivo y equipo de gestión. Los ejecutivos también son gerentes, por lo que son miembros de ambos grupos. Si arrastras el grupo Equipo ejecutivo a la parte superior de la lista, te asegurarás de que a sus miembros se les asigne el valor Ejecutivo en lugar del valor Gerente.

Si un usuario estableció un valor personalizado para un atributo de usuario, el valor que estableció anula cualquier valor que se le haya asignado a un grupo al que pertenezca.

¿Dónde se pueden usar los atributos de usuario?

Los atributos del usuario tienen las siguientes funciones:

Conexiones de base de datos

El host, el puerto, la base de datos, el nombre de usuario, la contraseña y el esquema de una conexión pueden tener el valor de un atributo de usuario. (El campo de host de conexión no aceptará un atributo de usuario que tenga un nivel de Acceso de usuario establecido como Editable).

Estos atributos de usuario hacen que la conexión sea específica para el usuario que ejecuta una consulta. También se puede hacer referencia a los atributos del usuario en el campo Parámetros adicionales de JDBC, que personaliza la cadena de conexión de JDBC. Cuando un usuario ejecuta una consulta con la conexión, se aplican los valores de atributos del usuario asignados a él, lo que permite personalizar la conexión en función del usuario.

Configuración

Se puede configurar cualquier conexión para que use atributos de usuario desde la página Conexiones en la sección Administrador de Looker. (Consulta la página de documentación Configuración del administrador: Conexiones para obtener información sobre la página Conexiones). Para crear una conexión nueva, haz clic en Agregar conexión. Para configurar una conexión existente, haz clic en Editar junto a ella.

Si una entrada se puede establecer en un atributo de usuario, Looker muestra un botón Atributo de usuario junto a la entrada .

Haz clic en el botón Atributo del usuario para mostrar un menú desplegable que te permita elegir el atributo del usuario deseado. La lista muestra el nombre del atributo de usuario con el valor del atributo de usuario actual entre paréntesis.

Para hacer referencia a un atributo de usuario en el campo Parámetros adicionales de JDBC, debes usar la misma sintaxis de plantillas de Liquid que está disponible en LookML. Los atributos del usuario están disponibles a través de la variable de Liquid _user_attributes. Por ejemplo, para hacer referencia a un atributo de usuario llamado my_jdbc_param_attribute, usa la siguiente sintaxis:

my_jdbc_param={{ _user_attributes['name_of_attribute'] }}

Caso de uso: Aplicación de permisos a nivel de base de datos en Looker

Si tu base de datos tiene diferentes cuentas con diversas restricciones de acceso, puedes aprovechar los permisos de la base de datos en Looker. Parametriza el nombre de usuario y la contraseña de una conexión para que cada usuario se conecte con las credenciales adecuadas para su nivel de acceso a la base de datos. Si bien esto garantiza que los usuarios no vean datos a los que no deberían tener acceso, no afectará qué Exploraciones, dimensiones y medidas se les muestren en Looker.

Por ejemplo, si un usuario está configurado para conectarse a la base de datos con una cuenta que le impide ver una columna credit_card_number en la tabla user, cualquier dimensión que use esa columna de la base de datos seguirá apareciendo en Looker. Recibirá un error de la base de datos si intenta ejecutar una consulta que incluya esa dimensión.

Caso de uso: Uso de un modelo para varias bases de datos idénticas

Supongamos que tienes varias bases de datos con el mismo esquema, por ejemplo, cuando los datos de cada cliente están aislados en su propia base de datos para tomar medidas de seguridad de los datos (como el cumplimiento de la HIPAA). O tal vez quieras que tus desarrolladores de LookML ejecuten consultas en una copia de desarrollo de una base de datos de producción.

Si estas bases de datos residen en el mismo servidor, no es necesario que configures conexiones y modelos por separado. En su lugar, establece la base de datos de una conexión en un atributo de usuario y cada usuario se dirigirá a la base de datos especificada en su valor para el atributo de usuario Database Name.

Acciones de datos

Las acciones de datos se pueden configurar para incluir ciertos atributos del usuario con su carga útil JSON. Úsalo para enviar información específica del usuario junto con los datos, como sus credenciales para realizar una operación en un servicio en particular.

Configuración

Para incluir un atributo del usuario en una acción de datos, agrega un bloque user_attribute_param a la definición de action. Cada bloque toma dos parámetros:

  • user_attribute: Es el nombre del atributo del usuario.
  • name: Es el nombre que se usará en la carga útil de JSON.

En este ejemplo, se usan dos atributos de usuario (salesforce_username y salesforce_password) para contener las credenciales de Salesforce de cada usuario en Looker. Cuando un usuario realiza la acción de actualizar datos en Salesforce, Looker envía sus credenciales de Salesforce con la carga útil de JSON, que el servidor receptor puede usar para autenticar en Salesforce.

dimension: stage_name {
  type: string
  sql: ${TABLE}.stage_name;;
  action: {
    label: "Update in Salesforce"
    url: "https://example.com/my_salesforce_url"
    user_attribute_param: {
      user_attribute: salesforce_username
      name: "username"
    }
    user_attribute_param: {
      user_attribute: salesforce_password
      name: "password"
    }
    form_param: {
      name: "new_stage_name"
      type: string
      required: yes
    }
  }
}

Acciones personalizadas en un centro de acciones

Puedes configurar una acción personalizada para incluir atributos del usuario que restrinjan a los usuarios de enviar o programar contenido de Looker a ese destino de acción si no tienen un valor definido para ese atributo del usuario.

Configuración

El parámetro params en una acción personalizada representa los campos del formulario que un administrador de Looker debe configurar en la página de habilitación de la acción desde la lista Acciones del panel Administrador. En el parámetro params de tu archivo de acción, incluye lo siguiente:

  params = [{
    description: "A description of the param.",
    label: "A label for the param.",
    name: "action_param_name",
    user_attribute_name: "user_attribute_name",
    required: true,
    sensitive: true,
  }]

donde user_attribute_name es el atributo del usuario definido en el campo Nombre de la página Atributos del usuario en la sección Usuarios del panel Administrador, required: true significa que un usuario debe tener un valor no nulo y válido definido para ese atributo del usuario para ver la acción cuando se publican los datos, y sensitive: true significa que el valor del atributo del usuario está encriptado y nunca se muestra en la IU de Looker una vez ingresado. Puedes especificar varios subparámetros de atributos de usuario.

Un administrador de Looker debe configurar los campos del formulario de la acción con el atributo de usuario:

  1. Haz clic en el botón Habilitar o Configuración junto a la acción en la página Acciones del panel Administrador.
  2. Haz clic en el ícono de atributo de usuario para el campo correspondiente y selecciona el atributo de usuario deseado.

Consulta la sección Cómo agregar atributos de usuario a acciones personalizadas de la página de documentación Cómo compartir datos a través de un centro de acciones.

Filtros

Los filtros en Exploraciones, Vistas y Paneles se pueden establecer en un atributo de usuario para personalizar la consulta en función del usuario que la ejecuta.

Por ejemplo, puedes crear un atributo de usuario llamado salesforce_username y configurar cada usuario de Looker para que su valor sea su nombre de usuario de Salesforce. Luego, podrías establecer un filtro en un panel para el atributo de usuario salesforce_username y cada usuario vería ese panel filtrado por su nombre de usuario particular de Salesforce.

Configuración

En la sección FILTROS de una exploración, una vista o un panel, haz lo siguiente:

  1. Selecciona la opción coincide con un atributo de usuario en el filtro deseado.

    El cuadro de selección de la derecha se actualiza automáticamente con una lista de atributos de usuario que tienen el mismo tipo que el campo del filtro, como número, cadena (texto), fecha, etcétera. Looker muestra tu valor para cada atributo de usuario entre paréntesis.

  2. Selecciona el atributo de usuario deseado.

Sintaxis de filtros avanzados

Si deseas realizar una acción más compleja que una simple verificación de igualdad del filtro, selecciona coincidencias (avanzadas) y haz referencia al atributo de usuario con una Variable Liquid:

{{ _user_attributes['name_of_attribute'] }}

Por ejemplo, supongamos que necesitas aplicar un prefijo sf_ al valor del atributo de usuario salesforce_username porque así es como se almacenan los valores en tu base de datos. Para agregar el prefijo al valor del atributo del usuario, usa la sintaxis de la variable _user_attributes de Liquid:


sf_{{_user_attributes['salesforce_username']}}

Puedes usar el mismo patrón para insertar atributos de usuario en los filtros del panel y los filtros de elementos del panel de LookML.

Vistas y paneles programados

Los filtros de panel y de aspecto se pueden configurar por programación, incluida la opción de usar un atributo de usuario. Esto te permite personalizar los resultados de la entrega de datos para cada destinatario de correo electrónico. Puedes personalizar las entregas de contenido que se envían como publicaciones únicas y recurrentes.

Por ejemplo, puedes crear un atributo de usuario llamado salesforce_username y establecer el valor de cada nombre de usuario de Salesforce. Establece un filtro en un panel o programa de Look en el atributo de usuario salesforce_username para que cada destinatario obtenga ese panel filtrado por su nombre de usuario de Salesforce.

Requisitos previos

Solo los usuarios de Looker tienen valores de atributos de usuario establecidos, por lo que cada destinatario de la entrega de datos debe tener una cuenta de Looker. Para aplicar los atributos de usuario, ejecuta el panel o la vista una vez para cada destinatario.

Configuración

Abre el Programador en la vista o en el panel:

  1. En la sección Filtros, selecciona la opción coincide con un atributo del usuario en el filtro deseado.

    El cuadro de selección de la derecha se actualiza automáticamente con una lista de atributos del usuario que son del mismo tipo que el filtro. Tu propio valor para cada atributo de usuario se muestra entre paréntesis.

  2. Selecciona el atributo de usuario que deseas.

  3. Marca la casilla de verificación Ejecutar programación como destinatario junto al campo Opciones de correo electrónico.

Filtros de acceso

Puedes limitar los datos a los que puede acceder un usuario con filtros de acceso, que proporcionan seguridad a nivel de fila. Aunque puedes usar el parámetro access_grant, los filtros de acceso se implementan y mantienen más fácilmente con los atributos del usuario.

Los filtros de acceso proporcionan una forma segura de aplicar restricciones de datos específicas del usuario. Definir uno o más filtros de acceso para una exploración de LookML aplica la restricción de que los datos que se muestran de una exploración se filtren en función del usuario que ejecuta la consulta. Por lo tanto, los filtros de acceso proporcionan una capa adicional de restricción, lo que garantiza que el usuario solo pueda ver subconjuntos específicos de los datos desde una conexión de base de datos.

Configuración

  1. Crea un atributo de usuario:
    • Para configurar Acceso de usuario, establece Ninguno (recomendado) o Ver. (Un atributo de usuario configurado para que los usuarios puedan editarlo no se puede usar para un filtro de acceso).
    • Asigna valores de atributos de usuario a grupos o usuarios individuales.
  2. En la definición de LookML para la exploración en la que deseas que se aplique el filtro de acceso, agrega un bloque access_filter con los siguientes parámetros:
    • field: Es el nombre del campo de LookML en el que se debe filtrar.
    • user_attribute: Es el nombre del atributo del usuario que almacena el valor que deseas usar para filtrar los datos.
  3. Ejecuta una consulta en esa exploración.
  4. Revisa la cláusula WHERE del SQL de la consulta a fin de verificar que los datos se filtren según tu valor para el atributo de usuario.

Este LookML garantiza que las consultas sobre los pedidos se filtren por marca, en la que la marca específica se basará en el valor asignado del usuario para un atributo del usuario llamado company:

explore: orders {
  view_name: orders
  access_filter: {
    field: products.brand_name
    user_attribute: company
  }
  join: products {
    foreign_key: orders.product_id
  }
}

Cómo conectarse a proveedores de Git

En el caso de los proyectos de LookML, puedes configurar la autenticación de Git a través de HTTPS. Los proyectos que usan la autenticación de HTTPS de Git tienen la opción de aprovechar los atributos del usuario para acceder a las cuentas de Git de los desarrolladores individuales cuando realizan operaciones de Git para el desarrollador.

Los atributos de usuario de las contraseñas de las cuentas de Git deben estar ocultos. Cuando crees el atributo de contraseña, selecciona en la opción Ocultar valores y, luego, ingresa la URL del proveedor de Git en el campo Lista de entidades permitidas del dominio.

Controla el acceso con otorgamientos de acceso

Puedes crear concesiones de acceso que limiten el acceso de una exploración, una unión, una vista o un campo de LookML con los valores de los atributos del usuario, el parámetro access_grant y el parámetro required_access_grants.

Los otorgamientos de acceso funcionan de la siguiente manera:

  1. Debes definir un otorgamiento de acceso con el parámetro access_grant. Como parte de la definición, asocia el otorgamiento de acceso con un atributo de usuario. También especificas qué valores de atributos de usuario proporcionan acceso al otorgamiento de acceso.
  2. A continuación, usa el parámetro required_access_grants en el nivel Explorar, Unir, Vista o Campo para restringir esa estructura solo a los usuarios que tengan acceso a cada concesión de acceso que se enumere.

Por ejemplo, puedes usar un otorgamiento 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 más información sobre cómo definir los otorgamientos de acceso, consulta la página de documentación del parámetro access_grant.

Variables de Liquid

LookML permite el uso de varias variables líquidas diferentes, que pueden ser útiles para tipos más complejos de resultados personalizados. Ahora se pueden incluir los valores de atributos de un usuario en Liquid. La expresión líquida debe usar una sintaxis adecuada para el dialecto de tu base de datos.

Puedes ver ejemplos en la sección Conexión de esta página de documentación y en la página de prácticas recomendadas Cómo usar atributos de usuario para la inserción dinámica de esquemas y nombres de tablas.

Límites de datos de Google BigQuery

Si usas Google BigQuery como base de datos, Google te cobrará por cada consulta según su tamaño. Para evitar que los usuarios ejecuten accidentalmente una consulta demasiado costosa, puedes aplicar un atributo de usuario en el parámetro de configuración Máx. de gigabytes de facturación en tu conexión con BigQuery. Los valores que proporciones en el atributo del usuario deben ser la cantidad de gigabytes que un usuario puede extraer en una sola consulta.

Paneles incorporados

Puedes limitar los datos que se muestran en los paneles y las vistas incorporados basando los valores del filtro en los valores de los atributos del usuario. Para obtener más información, consulta la publicación de Comunidad Crea un panel incorporado de prueba de concepto (con tecnología de Looker).

Localización

Los atributos de usuario locale y number_format pueden establecer la apariencia de los datos, las visualizaciones y las partes de la interfaz de usuario de Looker para usuarios o grupos de usuarios específicos. Consulta la página de documentación Localizar Looker para obtener más información.

Prueba los atributos de usuario y los filtros de acceso

Puedes probar los efectos de tus atributos de usuario con la función sudo de Looker. Los administradores (o los usuarios con los permisos see_users y sudo) pueden usar sudo como otro usuario para ver su experiencia en Looker.

Cuando estás en el Modo de desarrollo, los cambios no son visibles para otros usuarios hasta que los implementas en producción. Si no implementaste los cambios para que otros usuarios los vean, no los verás cuando uses la identidad como otro usuario.