Configuración del administrador: Atributos de 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 los atributos de usuario para los cuales los propios usuarios proporcionan valores, como contraseñas o información de contacto. En Looker, varios lugares pueden hacer referencia a los atributos del usuario para ofrecer una experiencia personalizada a 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 relación con el atributo de usuario. Algunos atributos muestran “Predeterminado del sistema” en lugar de un botón para 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.

Crea 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 de 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 del nombre fácil de usar. De forma predeterminada, este será el nombre del atributo, con guiones bajos reemplazados por espacios y cada palabra en mayúscula. 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 de usuario. El tipo de datos del atributo de usuario puede ser uno de los siguientes:

    • String: Selecciona esta opción para crear un atributo de usuario que coincida exactamente con un valor de string, 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 quieres 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/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 el tipo de datos 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 de usuario. Consulta la página de documentación Expresiones de filtro para obtener una lista de las expresiones de filtro que puedes usar para los 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/hora (avanzado) para ingresar valores con las expresiones de filtro de Looker, que mostrarán un rango de valores para un atributo de 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 páginas de las cuentas de los usuarios.
    • Vista: Aparecerá en las páginas de las cuentas de los usuarios, pero no se podrá editar.
    • Editar: Aparecerá en las páginas de la cuenta de los usuarios y puede configurarla el usuario.
  • Ocultar valores: Aunque los usuarios puedan ver los atributos del usuario, establecer esta opción en hace que se enmascaran los valores de los atributos de usuario, lo cual es útil para 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 establezca en , no se podrá volver a cambiar a No. Cuando configuras Ocultar valores en , también debes especificar una lista de dominios permitidos como destino del 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 especifiques una lista de entidades permitidas del dominio, solo se puede publicar el atributo de usuario en los destinos que hayas incluido.

    Una vez que especifiques la lista de entidades permitidas del dominio para este atributo de usuario, si se le asignaron valores (ya sea para un usuario o un grupo, o estableciendo un valor predeterminado), no podrás cambiar la lista de entidades permitidas para hacer 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 de 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.

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 de usuario de la sección Usuarios del menú Administrador.
  2. En el menú desplegable, elige el usuario al que quieres asignarle un valor. Esto muestra una tabla de valores que se aplican a ese usuario.
  3. Haz clic en el botón Establecer valor para el usuario.
  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 asigna 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 no se tendrán en cuenta. El texto "Valor actual" aparecerá 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 otorgar 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 de número (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. En el menú desplegable, elige el grupo al que deseas asignarle un valor.
  4. Ingresa el valor del 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 en que deben aplicarse. Cada grupo tiene prioridad sobre los grupos que se indican debajo.

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. Arrastrar el grupo del equipo ejecutivo a la parte superior de la lista garantizará que a los miembros se les asigne el valor Executive (Ejecutivo) en lugar del valor Manager (Gerente).

Si un usuario configuró un valor personalizado para un atributo de usuario, el valor que este configuró anula cualquier valor asignado a un grupo al que pertenezca el usuario.

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

Los atributos de 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 recibir cada uno 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 de usuario en el campo Parámetros adicionales de JDBC, que personaliza la string de conexión de JDBC. Cuando un usuario ejecuta una consulta usando la conexión, se aplican los valores del atributo de usuario asignados al usuario, lo que permite que la conexión se personalice en función del usuario.

Configuración

Se puede configurar cualquier conexión para usar 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 la conexión.

Si una entrada se puede establecer como un atributo de usuario, Looker mostrará el botón Atributo de usuario junto a la entrada .

Haz clic en el botón Atributo de usuario para mostrar un menú desplegable que te permite elegir el atributo de usuario deseado. La lista muestra el nombre del atributo del usuario con el valor del atributo del 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 de usuario están disponibles a través de la variable líquida _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 los datos a los que no deberían tener acceso, no afectará las exploraciones, las dimensiones y las mediciones que se les muestran 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. Recibe 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, configura la base de datos de una conexión a un atributo de usuario para que se dirija a cada usuario 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 de usuario con su carga útil de 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 de 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 de 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 conservar las credenciales de cada usuario de Salesforce en Looker. Cuando un usuario realiza la acción Actualizar en los datos de Salesforce, Looker envía sus credenciales de Salesforce con la carga útil de JSON, que el servidor receptor puede usar para autenticarse 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 de usuario que les impidan enviar o programar contenido de Looker a ese destino de acción si no tienen un valor definido para ese atributo.

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 de usuario definido en el campo Name de la página User Attributes de la sección Users del panel Admin, required: true significa que un usuario debe tener un valor no nulo y válido definido para ese atributo de usuario para ver la acción cuando se envían datos, y sensitive: true significa que el valor del atributo del usuario se encripta 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 Agrega 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 de usuario, usa la sintaxis de variable líquida _user_attributes:


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 Vista 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 en una programación de vistas para el atributo de usuario salesforce_username, de modo que cada destinatario reciba ese panel filtrado por su nombre de usuario de Salesforce.

Requisitos previos

Solo los usuarios de Looker tienen configurados valores de atributos de usuario, por lo que todos los destinatarios de la entrega de datos deben tener una cuenta de Looker. Los atributos de usuario se aplican ejecutando el panel o la vista una vez por 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 de usuario en el filtro deseado.

    La casilla de selección que aparece a la derecha se actualiza automáticamente con una lista de atributos de usuario 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 deseado.

  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 exige que los datos que se muestran en 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 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. (Los atributos de usuario configurados para que los usuarios puedan editarlos no se pueden utilizar 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 quieres aplicar 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 de 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
  }
}

Conéctate a proveedores de Git

Para los proyectos de LookML, puedes configurar la autenticación de Git mediante HTTPS. Los proyectos que usan autenticación HTTPS de Git tienen la opción de aprovechar los atributos del usuario para acceder a las cuentas de Git de cada desarrollador 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 contraseña, selecciona en la opción Ocultar valores y, luego, ingresa la URL del proveedor de Git en el campo Lista de dominios permitidos.

Controla el acceso con otorgamientos de acceso

Puedes crear otorgamientos de acceso que limiten el acceso a una exploración, unión, vista o campo de LookML con los valores de atributos del usuario, los parámetros access_grant y 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 debes especificar 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, join, ver o campo para restringir esa estructura solo a los usuarios que tengan acceso a todos los permisos de acceso enumerados.

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.

Si deseas obtener más información para definir los otorgamientos de acceso, consulta la página de documentación del parámetro access_grant.

Variables líquidas

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 atributo 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 Usa los atributos de usuario para la inserción de nombres de tablas y esquemas dinámicos.

Límites de datos de Google BigQuery

Si usas Google BigQuery como base de datos, Google te cobra 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 de 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 la 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 atributos de usuario y 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 otro usuario como otro para ver su experiencia de Looker.

Cuando te encuentras en Modo de desarrollo, tus cambios no son visibles para otros usuarios hasta que implementas tus cambios 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.