Was this page helpful?
Yes No

Identity Store

Tableau Server requires an identity store to manage user and group information.  There are two kinds of identity stores: local and external. When you install Tableau Server you must configure either a local identity store or an external identity store.

For information about configuration options for the identity store, see identityStore Entity and LDAP Configuration Reference.

Local identity store

When you configure Tableau Server with a local identity store, all user and group information is stored and managed in the Tableau Server repository. In the local identity store scenario, there is no external source for users and groups.

External identity store

When you configure Tableau Server with an external store, all user and group information is stored and managed by an external directory service. Tableau Server must synchronize with the external identity store so that local copies of the users and groups exist in the Tableau Server repository, but the external identity store is the master source for all user and group data.

If you have configured the Tableau Server identity store to communicate with an external LDAP directory, then all users (including the initial admin account) that you add to Tableau Server must have an account in the directory.

When Tableau Server is configured to use an external LDAP directory for authentication, you must first import user identities from the external directory to the identity store. When users sign in to Tableau Server, their credentials are passed to the external directory, which is responsible for authenticating the user; Tableau Server does not perform this authentication. However, the Tableau user names stored in the identity store are associated with rights and permissions for Tableau Server. Therefore, after authentication is verified, Tableau Server manages user access (authorization) for Tableau resources.

Active Directory is an example of an external user store. Tableau Server is optimized to interface with Active Directory. For example, if you are installing Tableau Server on an Active Directory domain-joined computer, then Setup will detect some Active Directory configurations. If you are installing into Active Directory, we recommend configuring the identity store with Configure Initial Node Settings. If you are using TSM CLI to install Tableau Server, then you must use the LDAP - Active Directory template to configure identity store.

If you will be running Tableau Server in an Active Directory environment, review User Management in Active Directory Deployments before you deploy.

For all other external stores, Tableau Server supports LDAP as a generic way to communicate the identity store. For example, OpenLDAP is one of several LDAP server implementations with a flexible schema. Tableau Server can be configured to query the OpenLDAP server. To do so, the directory administrator must provide information about the schema. During setup, you must use Configure Initial Node Settings to configure a connection to other LDAP directories.

LDAP bind

Clients that wish to query a user store using LDAP must authenticate and establish a session. This is done by binding. There are multiple ways to bind. Simple binding is authenticating with a username and password. For organizations that connect to Tableau Server with simple bind, we recommend configuring an SSL encrypted connection, otherwise the credentials are sent over the wire in plaintext. Another type of binding Tableau Server supports is GSSAPI binding. GSSAPI uses Kerberos to authenticate. In Tableau Server’s case, Tableau Server is the client and the external user store is the LDAP server.

LDAP with GSSAPI (Kerberos) bind

We recommend binding to LDAP directory with GSSAPI. To bind with GSSAPI you will need a keytab file specifically for the Tableau Server service.

If you are installing into Active Directory, and the computer where you are installing Tableau Server is already joined to the domain, then the computer may already have a configuration file and a keytab file. In this case, the Kerberos files are for the operating system functionality and authentication. Strictly speaking, you can use these files for GSSAPI bind, but we don't recommend using them. Instead, contact your Active Directory administrator and request a keytab specifically for the Tableau Server service. See Understanding Keytab Requirements.

Assuming your operating system has a properly configured keytab for authentication to the domain, then the Kerberos keyfile for GSSAPI bind is all you need for the base installation of Tableau Server. If you plan to use Kerberos authentication for users, then configure Kerberos for user authentication and Kerberos delegation to data sources after installation is complete.

LDAP over SSL

By default, LDAP with simple bind is not encrypted. If you are configuring LDAP with simple bind, we strongly recommend that you enable LDAP over SSL (LDAPS).

If you already have certificates installed for LDAP on the computer running Tableau Server, then LDAPS should work with minimal configuration during the installation process.

Specifically, if you have installed Tableau Server, and you have valid certificates installed in the Tableau keystore (/etc/opt/tableau/tableau_server/tableauservicesmanagerca.jks), then you can specify SSL when you configure the identity store.

The default password for the Java keystore is changeit.

If you do not have certificates already in place on your computer that are configured for the LDAP server then you must obtain a SSL certificate for the LDAP server and import it into the Tableau system keystore.

Use the "keytool" Java tool to import certificates. In a default installation, this tool is installed with Tableau Server at /opt/tableau/tableau_server/packages/respository.<installer version>/jre/bin/keytool.

The following command (for RHEL-like distributions) imports the certificate:

sudo "$PROGRAMFOLDER"/packages/repository*/jre/bin/keytool -import -file "$CERTSDIR" -alias $OPENLDAPSSLSERVER -keystore /etc/opt/tableau/tableau_server/tableauservicesmanagerca.jks -storepass changeit -noprompt

System user and groups

Tableau Server on Linux uses one user, and two groups for proper operation. The user and groups can be local or from an LDAP directory service.

User

Tableau Server requires a service account. This account is an unpriviledged user with normal login privileges.

LDAP/AD

If you want to use an existing user account in your LDAP directory, or if you want to create a new user account in your LDAP directory for Tableau Server then you must disable account and group creation during installation.

Specifically, you will need to set the --disable-account-creation and -g flags when you run the initialize-tsm script. If you are not going to use the default names, then you will also need to specify user and group names with the --unprivileged-user and the --tsm-authorized-group flags. See Help Output for initialize-tsm Script for more details.

The user account should be an unprivileged user with normal login privileges. Configure the account with the following characteristics:

  • Shell set to /bin/bash.

  • For convenience, consider setting the home directory to the data directory path. The account must have ownership and write privileges to the home directory.

Local

If you want to use local users and groups, the initialize-tsm script can automatically create them during installation. By default, the unprivileged account is named tableau. If an account named tableau already exists, the Tableau will use it. To specify a different account, see Help Output for initialize-tsm Script.

Groups

Tableau Server requires two groups for operation.

In a default installation, the local tableau account belongs to a primary group named tableau. However, if you specify an alternate unprivileged user during installation, then the primary group for that alternate account will be used. As a convenience, any account can be added to this group to be able to read the Tableau Server log files (without becoming root).

The second group is used to authorize which users are authorized to authenticate to Tableau Services Manager (TSM). Any user in this group will be able to send commands to TSM, so it should be restricted to Tableau Server administrators. By default, this group is named tsmadmin.

If there is an existing LDAP group that matches these criteria, it can be used. Otherwise, a new LDAP group could be created, and all Tableau Server administrators can be added to this new group. Note that at least one administrator must be in this group in order to successfully initialize Tableau Server.

Authenticating clients

Basic user authentication in Tableau Server is by username and password sign-in for both local and external user stores. In the local case, user passwords are stored as a hashed password in the respository. In the external case, Tableau Server passes the credentials to the external user store and awaits a response as to whether the credentials are valid. External user stores can also handle other kinds of authentication like Kerberos or SSPI (Active Directory only), but the concept is still the same, Tableau Server delegates the credentials or user to the external store and awaits a response.

You can configure Tableau Server such that username-password sign-in is disabled. In these scenarios other authentication methods, such as trusted authentication, OpenID, or SAML can be used. See Authentication.