1 Reply Latest reply on Mar 3, 2017 4:32 PM by diego.medrano

    Client Certificate Authentication and Refreshextract

    Sam Underland

      Is the "tableau refreshextract" command supported when the server is configured for "mutual SSL and automatic login with client certificates"?

       

      Here's the scenario: A user wants to update their datasource for a workbook automatically where the datasource is based on an Excel workbook. Our server is configured for "mutual SSL and automatic login with client certificates".

       

      The datasource should be updatable by the "tableau refreshextract" command except that the command doesn't appear to have any parameters for certificate authentication, Username and password: yes, but certificates: no. Running the command

      tableau refreshextract --server https://myserver.com --site xyz --project Default --original-file "file-path-to-xlsx" --datasource "datasourcename"

      always results in the error "sign in to server failed. Either the site does not exist, or you do not have access to this site."

       

      Tabcmd has certificate-authentication built-in so you can use "tabcmd login --server https://myserver.com --use-certificate" to login, then "tabcmd refreshextracts ..." to update a datasource but can only be updated from data accessible by the server. There is no "--original-file" option for refreshing the extracts with tabcmd as there is with the "tableau refreshextract" command.

       

      I know that I can update the datasource that is based on an Excel file as long as the following conditions are met:

      1. The datasource is published as an extract rather than live 2. the UNC path is used in the datasource and 3. the run-as user of the server has to be able to access to the file. The third condition is less than ideal since users may not have the ability to set the access controls on the file by themselves.

       

      Is there an undocumented certificate-login option for "tableau refreshextract" or is there some other way I should be going about doing this? Thanks in advance.