Habilitar el acceso de la cuenta de servicio de Kerberos

Puede configurar Tableau Server para que use una cuenta de servicio de Kerberos para acceder a una base de datos. En este escenario, Tableau Server se conecta a las bases de datos con una cuenta de servicio (también denominada "cuenta Ejecutar como").

Para utilizar la autenticación Ejecutar como en Tableau Server, primero debe crear un libro de trabajo o una fuente de datos que utilice la autenticación integrada. Cuando los usuarios publiquen en Tableau Server obtendrán la opción de autenticación Ejecutar como. Si crea una fuente de datos con la creación web de Tableau Server que utiliza la autenticación integrada, la fuente de datos utilizará la autenticación Ejecutar como de forma predeterminada.

Nota: La autenticación integrada también se denomina Autenticación de Windows en algunos conectores. En ambos casos, Tableau Server utiliza la autenticación Kerberos.

Acceso a datos con la cuenta de servicio Ejecutar como

Para utilizar la autenticación Ejecutar como, la cuenta Ejecutar como requiere permisos de lectura y consulta a bases de datos externas. Tal y como se ha diseñado, los usuarios de Tableau Server con el rol de Creator o el rol de Explorer (Puede Publicar) tienen acceso completo a la cuenta Ejecutar como para consultas a bases de datos externas.

Por ejemplo, un usuario con el rol Creator puede ver todas las bases de datos que tengan acceso a la cuenta de servicio de Ejecutar como. También pueden incluir tablas y ejecutar SQL personalizado.

Si el usuario Creator especifica el nombre de host de la base de datos y selecciona Autenticación integrada al crear una nueva fuente de datos con creación web, se mostrarán al usuario las bases de datos a las que se ha concedido acceso de tipo Ejecutar como.

El acceso de consulta de los recursos de la base de datos no está restringido a los usuarios que se conectan a Tableau Server con creación web. Los usuarios sofisticados, que tienen los mismos roles mencionados anteriormente y que tienen conocimiento de los nombres de los servidores de bases de datos, podrían crear libros de trabajo con Tableau Desktop que muestran las bases de datos a las que se les ha concedido acceso Ejecutar como.

Recomendaciones

Su organización debe evaluar si el acceso de los usuarios a las bases de datos en estos casos es aceptable. Generalmente, la reducción del uso y alcance de la cuenta de servicio de Ejecutar como reducirá la probabilidad de que el usuario acceda inadvertidamente al contenido de la base de datos. Sin embargo, reducir el uso y el alcance de la cuenta de servicio de Ejecutar como también puede suponer una mayor gestión de credenciales para usted y sus usuarios.

Evalúe las siguientes recomendaciones según las necesidades y las políticas de acceso a los datos de su empresa.

  • En primer lugar, compruebe que confía en todos los usuarios que tienen roles de Creator o Explorer (puede publicar). Usted confía en que estos usuarios llevarán a cabo las acciones de Tableau de la forma adecuada.
  • Si no puede confiar en todos los usuarios que tienen derechos de publicación sobre fuentes de datos a las que accede la cuenta de servicio Ejecutar como, podría necesitar insertar credenciales para esas fuentes de datos.
  • Si una fuente de datos no está configurada para realizar actualizaciones automáticas de extracciones, es decir, si se accede a la fuente de datos principalmente como una conexión en vivo, es posible que pueda utilizar Kerberos Delegation. Para conocer los requisitos, consulte Habilitar la delegación de Kerberos.

Requisitos

  • No se admite MIT Kerberos.
  • La cuenta Ejecutar como servicio debe tener acceso de lectura a la base de datos de destino.

Proceso de configuración

Esta sección proporciona un ejemplo del proceso para habilitar el acceso de la cuenta de servicio de Kerberos.

  1. Cree una cuenta de usuario de dominio que actuará como cuenta Ejecutar como servicio. Esta cuenta debe tener acceso de lectura a la base de datos de destino.

    En este ejemplo, la cuenta Ejecutar como servicio es el nombre principal de usuario tabsrv@example.com.

  2. Cree un archivo keytab para la cuenta Ejecutar como servicio.

    Por ejemplo, los siguientes comandos crean un archivo keytab (tabsrv-runas.keytab) usando la herramienta ktutil:

    ktutil
    ktutil:  addent -password -p tabsrv@EXAMPLE.COM -k 2 -e <encryption scheme>

    Los esquemas de cifrado para este comando incluyen RC4-HMAC, aes128-cts-hmac-sha1-96 y aes256-cts-hmac-sha1-96. Consulte con su equipo de TI cuál es el esquema de cifrado correcto para su entorno y fuente de datos.

    ktutil:  wkt tabsrv-runas.keytab

    Tableau Server usará la cuenta Ejecutar como servicio y el archivo keytab asociado para realizar la autenticación y una conexión directa con la base de datos.

  3. Copie el archivo keytab en el directorio de datos de Tableau Server y establezca la propiedad y los permisos adecuados. El archivo keytab debe ser legible para el usuario sin privilegios. El usuario sin privilegios predeterminado creado por la configuración de Tableau es tableau.

    Si ejecuta una implementación de varios nodos, debe ejecutar los siguientes comandos en cada nodo del clúster:

    mkdir /var/opt/tableau/tableau_server/keytab                
    sudo cp -p tabsrv-runas.keytab /var/opt/tableau/tableau_server/keytab                 
    sudo chown $USER /var/opt/tableau/tableau_server/keytab/tabsrv-runas.keytab                  
    chgrp tableau /var/opt/tableau/tableau_server/keytab/tabsrv-runas.keytab                  
    chmod g+r /var/opt/tableau/tableau_server/keytab/tabsrv-runas.keytab 
    
  4. Ejecute los siguientes comandos de TSM para habilitar el acceso de Ejecutar como, establecer la cuenta Ejecutar como servicio y asociar el archivo keytab a la cuenta de servicio.

    tsm configuration set -k features.RunAsAuthLinux -v true --force-keys
    tsm configuration set -k native_api.datasource_runas_principal -v tabsrv@EXAMPLE.COM --force-keys
    tsm configuration set -k native_api.datasource_runas_keytab_path -v /var/opt/tableau/tableau_server/keytab/tabsrv-runas.keytab --force-keys			
  5. Ejecute el siguiente comando de TSM para aplicar los cambios en la implementación de Tableau Server:

    tsm pending-changes apply

    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.

¡Gracias por sus comentarios!