Tableau Server 2020.2 is released (https://www.tableau.com/support/releases/server/2020.2) and among many new features and improvements, there is one which is specifically related to what this blog is about.
With this improvement, it is possible now to have multiple connections for one server (one connection per site) – TabPy, Rserve, Ople.ai, AtlTabPy, MatLab version of TabPy, etc. This allows organizations to have different analytics extensions per department or user role.
Multiple Analytics Extensions (former External Services) connections feature is explained as:
Server administrators can now configure multiple Analytics Extension (formerly External Service) connections in Tableau Server. Administrators can set one per site through the Settings UI and turn connections on or off at the Site level. Now teams using different R, Python, and other external data science environments can share their work with consumers across the same Server. Settings are easier than ever to configure with UI controls or via the Server REST API.
https://www.tableau.com/products/new-features#feature-128745
We will look at REST API some other time and in this post I just want to show you how to configure a connection for a site. Tableau documentation for the configuration is at https://help.tableau.com/current/server/en-us/config_r_tabpy.htm.
It is important to understand that web UI or REST API are now the only way to enable, disable and configure analytics extensions – TSM doesn’t provide that functionality anymore.
To enable analytics extensions feature which is disabled by default you need to be a server administrator. The screenshot below shows how to enable the feature for the whole server:
Make sure you are configuring All Sites, go to Setting, Extensions tab, set Enable analytics extension checkbox and click Save.
With the feature enabled for a server now you can configure a connection for each specific site. To be able to do so you need to be a site administrator. The next screenshot demonstrates how a connection can be configured:
Select the site you want to configure (on the screenshot it is TabPy Site), go to Settings, Extensions tab, set Enable analytics extension for site checkbox and configure a connection with setting Connection Type, Host, and Port. Set Require SSL and authentication parameters as needed (read How to configure TabPy with authentication and use it in Tableau for authentication configurations steps) and click Save button.
With the configuration successfully saved all the workbooks published on the site will use the configured connection. For workbooks on other sites connection from that site (if configured at all) will be used.
[…] analytics extensions are configured with admin UI and not with TSM (more details here – Multiple Analytics Extensions Connections with Tableau Server 2020.2). And if a connection is secured (Require SSL checkbox is on) Tableau will validate certificate […]
[…] new Tableau Server and Desktop certificate validation happens on Tableau side as explained in Tableau and Trusted […]
I’m not able to get this to work – using Tableau Server version 2020.2
When my prep flow (w/ Python script) is running on my desktop in prep builder, I can successfully connect to the TabPy server with authentication AND without authentication.
When I publish my flow to the Tableau Server, I can only successfully connect to the TabPy server WITHOUT authentication. Any ideas?
Prep is not using this functionality and has its own settings for analytics extensions.
What are the repro steps for the issue with authentication you have between Tableau Server 2020.2 and TabPy?
by “What are the repo steps…”, does that mean, “What are the reproducible steps”? If so, I’ve used the information here: https://help.tableau.com/v2020.2/server/en-us/config_r_tabpy.htm
What else can I specifically provide?
Is it TabPy or Rserve you are using with Tableau Server? And how you configure auth for it?
TabPy
For the tabPy server, I modify the config file to point to a password file containing the username and password.
I put that same username and password (as well as hostname and port) into the Admin. side of the Tableau server UI
I assume users were added to the password file with
tabpy-user
command.When you open your TabPy instance in a browser with something like http://<tabpy-host>:<tabpy-port> (or https:// if configured for SSL) does it ask for credentials and do the same credentials work?
Yes.
And yes, I was able to open it, and sign in with the same credentials.
Ryan, it sounds like an issue we need to look at. If you want to schedule a call so we can have a shared screen session contact my team PM nmannheimer<at>tableau.com and hopefully we can figure it out together.
Sounds good, I’ll reach out to him, thanks!