Configurar Tableau Server para OpenID Connect

Este tema describe cómo configurar Tableau Server para que use OpenID Connect (OIDC) en el inicio de sesión único (SSO). Este es uno de los pasos del proceso. Los temas siguientes contienen información sobre cómo configurar y usar OIDC con Tableau Server.

  1. Descripción general de OpenID Connect

  2. Configurar el proveedor de identidades para OpenID Connect

  3. Configurar Tableau Server para OpenID Connect (se encuentra aquí)

  4. Iniciar sesión en Tableau Server con OpenID Connect

Notas:

  1. Abra TSM en un navegador:

    https://<nombre-equipo-tsm>:8850. Para obtener más información, consulte Iniciar sesión en la interfaz de usuario web de Tableau Services Manager.

  2. En la pestaña CONFIGURACIÓN, seleccione Identidad de usuario y acceso > Método de autenticación.

  3. En Método de autenticación, seleccione OpenID Connect en el menú desplegable.

  4. En OpenID Connect, seleccione Habilitar la autenticación OpenID para el servidor.

  5. Introduzca la información de configuración de OpenID de su organización:

    Imagen de una configuración de OpenID Connect en TSM

    Notas:

    • Para el Paso 3: Si su proveedor depende de un archivo de configuración alojado en el equipo local (en lugar de uno de una URL pública), puede especificar el archivo con el tsm authentication openid <comandos>. Use la opción --metadata-file <file_path> para especificar un archivo de configuración del IdP local.

    • Para Paso 4: A partir de Tableau Server 2025.3, puede habilitar el cierre de sesión único (SLO) y especificar una URL a la que redirigir a sus usuarios después de cerrar la sesión.

    • Para el Paso 5: A partir de Tableau Server 2026.2, puede habilitar los atributos de usuario y sus funciones como parte del flujo de trabajo de autenticación de OIDC. Para obtener más información, consulte Atributos de usuario en notificaciones OIDC.

  6. Haga clic en Guardar cambios pendientes cuando haya introducido dicha información.

  7. Haga clic en Cambios pendientes, en la parte superior de la página:

    Barra de herramientas de Tableau Server Manager que indica que hay cambios pendientes.

  8. Haga clic en Aplicar cambios y reiniciar.

En el procedimiento de esta sección se describe cómo utilizar la interfaz de línea de comandos de TSM para configurar OpenID Connect. También puede utilizar un archivo de configuración para efectuar la configuración inicial de OpenID Connect. Consulte Entidad openIDSettings.

  1. Utilice el comando configure de tsm authentication openid <comandos> para establecer las siguientes opciones necesarias:

    • --client-id <id>: especifica el ID de cliente del proveedor que el IdP ha asignado a la aplicación. Por ejemplo, “xxxkjwdlnaoiloadjkwha".

    • --client-secret <secret>: especifica el secreto de cliente del proveedor. Se trata de un token que Tableau usa para verificar la autenticidad de la respuesta por parte del IdP. Este valor es un secreto y se debe proteger. Por ejemplo, “xxxhfkjaw72123=".

    • --config-url <url> o --metadata-file <file_path>: especifica la ubicación del archivo JSON de configuración del proveedor. Si el proveedor aloja un archivo de detección JSON público, utilice --config-url. En caso contrario, especifique una ruta en el equipo local y un nombre de archivo para --metadata-file.

    • --return-url <url>: URL del servidor. Suele ser el nombre público de su servidor, por ejemplo, "http://example.tableau.com".

    Por ejemplo, ejecute el siguiente comando:

    tsm authentication openid configure --client-id “xxxkjwdlnaoiloadjkwha" --client-secret “xxxhfkjaw72123=" --config-url "https://example.com/openid-configuration" --return-url "http://tableau.example.com"

    Nota: 

  2. Escriba el siguiente comando para habilitar OpenID Connect:

    tsm authentication openid enable

  3. Ejecute tsm pending-changes apply para aplicar los cambios.

    Si los cambios pendientes requieren un reinicio del servidor, el comando pending-changes apply mostrará un mensaje para informarle de que se producirá un reinicio. Este mensaje aparece aunque el servidor esté detenido, pero en ese caso no se reiniciará. Puede suprimir el mensaje con la opción --ignore-prompt, pero no se modificará el comportamiento de reinicio. Si los cambios no requieren un reinicio, se aplicarán sin ningún mensaje. Para obtener más información, consulte tsm pending-changes apply.

Configurar OpenID para que funcione con un proxy de reenvío

De forma predeterminada, Tableau Server ignora la configuración del proxy y envía todas las solicitudes de OpenID directamente al IdP.

A partir de Tableau Server 2021.2.2 y versiones posteriores, si Tableau está configurado para usar un proxy de reenvío para conectarse a Internet, entonces puede configurar Tableau Server para usar la configuración del puerto y el host del proxy para comunicarse con el IdP de OpenID.

La forma de configurar Tableau Server es diferente según cómo haya implementado el proxy de reenvío en su organización:

  • El proxy de reenvío está configurado en el equipo con Windows donde se ejecuta Tableau Server.
  • Tableau Server envía todo el tráfico saliente directamente a un servidor proxy de reenvío que se ejecuta en su organización.

Configuración del proxy del sistema de Windows

Si su organización ha configurado un proxy de reenvío en cada equipo con Windows, use este método para usar la configuración del proxy del sistema para OpenID en Tableau Server. Ejecute los comandos siguientes:

tsm configuration set -k tomcat.useSystemProxies -v true
tsm pending-changes apply

Servidores proxy de reenvío

Use el comando, tsm configuration set, para realizar los cambios.

  • Para los hosts de proxy HTTPS, utilice los siguientes pares clave-valor:

    -k tomcat.https.proxyHost -v host.domain

    -k tomcat.https.proxyPort -v port_number

    Por ejemplo, si su servidor proxy está en https://proxy.example.lan:8443, luego ejecute los siguientes comandos:

    tsm configuration set -k tomcat.https.proxyHost -v proxy.example.lan
    tsm configuration set -k tomcat.https.proxyPort -v 8443
    tsm pending-changes apply
  • Para los hosts de proxy HTTP, utilice los siguientes pares clave-valor:

    -k tomcat.http.proxyHost -v host.domain

    -k tomcat.http.proxyPort -v port_number

    Una vez que haya configurado estas claves, ejecute tsm pending-changes apply.

Personalizar y controlar el acceso a los datos usando atributos de usuario

Los atributos de usuario son metadatos de usuario definidos por su organización. Los atributos de usuario se pueden utilizar para determinar el acceso en un modelo de autorización típico de control de acceso basado en atributos (ABAC). Los atributos de usuario pueden ser cualquier aspecto del perfil de usuario, incluidos los roles de trabajo, la pertenencia a departamentos, el nivel de gestión, etc. También pueden asociarse con contextos de usuario en tiempo de ejecución, como dónde inicia sesión el usuario o su preferencia de idioma.

Al incluir atributos de usuario en su flujo de trabajo, puede controlar y personalizar la experiencia del usuario a través del acceso a los datos y la personalización.

  • Acceso a datos: Los atributos de usuario se pueden utilizar para aplicar directivas de seguridad de datos. Esto garantiza que los usuarios solo vean la información que corresponda.
  • Personalización: Al pasar atributos de usuario como la ubicación y el rol, su contenido se puede personalizar para mostrar solo la información relevante para el usuario que accede a él, lo que le facilita encontrar la información que necesita.

Resumen de los pasos para pasar los atributos de usuario

El proceso de habilitar atributos de usuario en un flujo de trabajo se resume en los siguientes pasos:

  1. Habilitar la configuración de atributos de usuario
  2. Incluir atributos de usuario en la confirmación
  3. Asegúrese de que el autor del contenido incluya las funciones de atributos de usuario y los filtros pertinentes
  4. Revise el contenido

Paso 1: Habilitar la configuración de atributos de usuario

Por motivos de seguridad, los atributos de usuario solo se validan en un flujo de trabajo de autenticación cuando un administrador del servidor habilita la configuración del atributo de usuario.

  1. Abra TSM en un navegador:

    https://<nombre-equipo-tsm>:8850. Para obtener más información, consulte Iniciar sesión en la interfaz de usuario web de Tableau Services Manager.

  2. En la pestaña CONFIGURACIÓN, seleccione Identidad de usuario y acceso > Método de autenticación.

  3. En Método de autenticación, seleccione SAML en el menú desplegable.

  4. En el paso 8, seleccione la casilla de verificación Habilitar la captura de atributos de usuario durante la autenticación SAML.

  5. Cuando termine, haga lo siguiente:

    1. Haga clic en Guardar cambios pendientes.

    2. Haga clic en Cambios pendientes, en la parte superior de la página.

    3. Haga clic en Aplicar cambios y reiniciar.

Paso 2: Incluir el atributo de usuario en la confirmación

Asegúrese de que la confirmación contiene los atributos de usuario.

Nota: Los atributos de la respuesta SAML están sujetos al límite de 4096 caracteres, a excepción de los atributos scope o scp. Si los atributos de la respuesta, incluidos los atributos de usuario, superan este límite, Tableau elimina los atributos y pasa el atributo ExtraAttributesRemoved en su lugar. A continuación, el autor del contenido puede crear un cálculo con el atributo ExtraAttributesRemoved para determinar cómo mostrar el contenido a los usuarios cuando se detecte el atributo.

Ejemplo

Supongamos que tiene un empleado, Fred Suzuki, que es un gerente ubicado en la región sur. Quiere asegurarse de que, cuando Fred revise los informes, solo pueda ver los datos de la región Sur. En un caso como este, puede incluir el atributo de usuario Region en la respuesta SAML como en el siguiente ejemplo.

<saml:Assertion xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion"
	<saml;Issuer">https://myidp.okta.com/saml</saml:Issuer">
   <saml;Subject">
	  <saml:NameId Format="urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress"fsuzuki@example.com</saml:NameID">
   <saml:AttributeStatement xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion">
  		<saml:Attribute Name="Region" NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:unspecified">
  			<saml:AttributeValue">South</saml:AttributeValue">
    	</saml:Attribute">
   </saml:AttributeStatement">
</saml:Assertion">

Paso 3: Asegurarse de que el autor del contenido incluya funciones de atributo

Asegúrese de que el autor del contenido incluya las funciones de atributos de usuario y los filtros relacionados para controlar qué datos se pueden mostrar en su contenido. Para garantizar que las confirmaciones de atributos de usuario se pasan a Tableau, el contenido debe contener una de las siguientes funciones de atributos de usuario:

  • USERATTRIBUTE('attribute_name')
  • USERATTRIBUTEINCLUDES('attribute_name', 'expected_value')

La función que usa el autor del contenido depende de si se espera que los atributos de usuario devuelvan un valor único o varios. Para obtener más información sobre estas funciones y ver ejemplos de cada una, consulte Funciones de usuario(El enlace se abre en una ventana nueva) en la ayuda de Tableau.

Notas:

  • La vista previa del contenido con estas funciones no está disponible cuando se crea en Tableau Desktop o Tableau Cloud. La función devolverá NULL o FALSE. Para asegurarse de que las funciones de usuario funcionan como se espera, recomendamos al autor que revise las funciones después de poner el contenido a disposición.
  • Para asegurarse de que el contenido se representa como se espera, el autor del contenido podría considerar incluir un cálculo que use el atributo ExtraAttributesRemoved que 1) compruebe este atributo y 2) determine qué hacer con el contenido si lo hace, como mostrar un mensaje. Tableau solo añadirá el ExtraAttributesRemoved atributo y eliminará todos los demás atributos (excepto scp o scope) cuando los atributos del XML de SAML superen los 4096 caracteres. Esto es para garantizar un rendimiento óptimo y respetar las limitaciones de almacenamiento.

Ejemplo

Continuando con el ejemplo introducido en Paso 2: Incluir el atributo de usuario en la confirmación anterior, para pasar la confirmación de atributo de usuario “Región” a un libro de trabajo, el autor puede incluir USERATTRIBUTEINCLUDES. Por ejemplo, USERATTRIBUTEINCLUDES('Region', [Region]), donde “Region” es el atributo de usuario y [Region] es una columna de los datos. Con el nuevo cálculo, el autor puede crear una tabla con datos de gerentes y ventas. Cuando se agrega el cálculo, el libro de trabajo devuelve valores “Falso” como se esperaba.

Para mostrar solo los datos asociados con la región sur en el libro de trabajo insertado, el autor puede crear un filtro y personalizarlo para mostrar valores cuando la región sur sea “Verdadero”. Cuando se aplica el filtro, el libro de trabajo se queda en blanco como se esperaba, porque la función devuelve valores “Falso” y el filtro se personaliza para mostrar solo los valores “Verdadero”.

Paso 4: Revisar el contenido

Revise y valide el contenido.

Ejemplo

Para concluir el ejemplo del Paso 3: Asegurarse de que el autor del contenido incluya funciones de atributo anterior, puede ver que los datos de ventas de la vista están personalizados para Fred Suzuki porque su contexto de usuario es la región Sur.

Los administradores de las regiones representadas en el libro de trabajo deberían ver el valor asociado con su región. Por ejemplo, Sawdie Pawthorne, de la región Oeste, ve datos específicos de su región.

Los gerentes cuyas regiones no están representadas en el libro de trabajo ven un libro de trabajo en blanco.

Limitaciones y problemas conocidos

Hay algunos problemas conocidos y limitaciones que debe tener en cuenta al trabajar con funciones de atributos de usuario.

¡Gracias por sus comentarios!Sus comentarios se han enviado correctamente. ¡Gracias!