Skip to main content

I have installed a TabPy server on an EC2, it resides in the same VPC as a Tableau Server running in docker.

 

Tableau Desktop is able to speak to TabPy and return calculations, The Tableau server allows the workbook to be published but once uploaded, it gives the error:

 

TabPY Error: Failed to connect to analytics extension (ext-svc-type-tabpy, SSL off, auth off, host <host IP here>, port 9004): Workbook contains custom scripts, which are not allowed on this server.

 

Note: I have removed the host IP above on purpose, it is correct. SSL is intended to be off (access is restricted by our AWS Security Group configuration - this has been tested and is correctly configured).

 

When I ssh into the Tableau server I can ping port 9004 for TabPY.

 

The below commands were run on tsm:

⌗Enable TabPy

tsm security maestro-tabpy-ssl enable --connection-type maestro-tabpy --tabpy-host ${TabPyServer.PublicIp} --tabpy-port 9004

⌗Enable insecure scripts (tabpy calculated fields)

tsm configuration set -k vizqlserver.allow_insecure_scripts -v true

#Apply changes  

tsm pending-changes apply --ignore-prompt 

 

In our test environment setting vizqlserver.allow_insecure_scripts to true fixed the issue but in production, the error persists.

 

when I run the below on production:

tsm configuration get -k vizqlserver.allow_insecure_scripts

it returns as true.

 

In the Tableau server the TabPy connection was added via the API and is selected as an Analytics connection for the workbook to use.

 

We are using Tableau server with Linux, it has only one site (the default one). IT has been rebooted many times. The workbook has been uploaded multiple times, but the error persists.

 

Is there anything that could cause this error, other than the vizqlserver.allow_insecure_scripts setting?

3 respuestas
  1. 27 dic 2023, 14:27

    @Peter Cunningham​ 

    Hi, the configuration you set:

    tsm security maestro-tabpy-ssl enable --connection-type maestro-tabpy --tabpy-host ${TabPyServer.PublicIp} --tabpy-port 9004

    is to configure Tableau Prep in Tableau Server to run scripts. Probably what you are missing is to configure Tabpy in the analytics extensions of your Tableau Server site. If needed, after enabling Tabpy, republish the workbook from Tableau Desktop, and after publishing select the Tabpy extension.

    @Peter Cunningham​ Hi, the configuration you set:tsm security maestro-tabpy-ssl enable --connection-type maestro-tabpy --tabpy-host ${TabPyServer.Also, if you have several sites, you may need to check the overall config to allow the use of analytical extensions:

    https://help.tableau.com/current/server/en-us/dashboard_extensions_server.htm

    imageSometimes in the past, I remembered I had to add a site, then check the option in manage all sites, and then remove the added site.

     

    If this post resolves the question, would you be so kind to "Select as Best"?. This will help other users find the same answer/resolution and help community keep track of answered questions. Thank you.

     

    Regards,

     

    Diego Martinez

    Tableau Visionary and Forums Ambassador

0/9000