How to avoid display of login prompt in Spotfire Web Player for any analysis using data connectors

How to avoid display of login prompt in Spotfire Web Player for any analysis using data connectors

book

Article ID: KB0070412

calendar_today

Updated On:

Products Versions
Spotfire Web Player 7.5 and higher

Description

By default, when an analysis file is created using a data connection, it usually prompts the user to enter credentials when opened from the Web Player. You can disable the prompt by using one of the following three authentication modes. The authentication mode is set to "Prompt" by default.

1. ServiceAccount
2. Kerberos
3. WebConfig

This article describes how to avoid the login prompt using WebConfig authentication mode.

Issue/Introduction

This article describes how to avoid login prompt in Web Player for any analysis using data connectors by setting authentication mode to WebConfig.

Resolution

In your analysis file, go to Edit >> Data Connection Properties >> Select the connection and click Settings >> Go to Data Source tab >> Settings >> Credentials. Select the second radio button, and enter the credentials profile name of your choice as shown in the screenshot. Save the analysis file.

User-added image

Export the Web Player Service configuration via command line in the bin folder (<TSS Install Directory>\tomcat\bin). 
Note: For Spotfire 10.3 and onwards, execute the command in <TSS Install Directory>\tomcat\spotfire-bin\
 
 Example: config export-service-config --capability=WEB_PLAYER --force --deployment-area=YOUR_DEPLOYMENT_AREA_NAME

Open the Spotfire.Dxp.Worker.Host.exe.config file, and change the authentication mode of the connector in use from "Prompt" to "WebConfig". For example, if you are using data connection to SQL server then change the line:
 
 FROM: <adapter name="Spotfire.SqlServerAdapter" mode="Prompt"/>  To: <adapter name="Spotfire.SqlServerAdapter" mode="WebConfig"/>

In the same file, locate the section mentioned in brackets ( <setting name="DataAdapterCredentials" serializeAs="Xml"> ) and create your credentials profile as mentioned below:
 
 <setting name="DataAdapterCredentials" serializeAs="Xml">   <value>    <credentials>     <entry profile="profile_name">      <username>DOMAIN\username</username>      <password>PASSWORD</password>     </entry>    </credentials>   </value> </setting>

In the above tag enter the username and password which were used to connect the data source while creating the analysis file. For integrated security, the username should be in the DOMAIN\user format (for example, EMEA\SalesUsers and EMEA\ExecUsers). In <entry profile="profile_name">, profile_name is the one which you have mentioned in the analysis file(for example, 'test' in our case). Save the file and close it.

After doing the changes, import the configuration back to the server via the command line from the same folder.
 
 Example: config import-service-config --config-name=GIVE_ANY_NAME

Now, you need to apply the imported configuration to the desired Web Player Service(s). Browse the Spotfire Server URL with Admin privileges and go to Nodes and Services >> Select the desired Web Player Service(s) >>  Edit >>  Under Configuration select the one which was given while importing the configuration (GIVE_ANY_NAME). Wait till the Web Player Service and its instances restart.

NOTE: You can create credentials profile for data connection stored in a library as well. In that case, all the analysis files created using that data connection will not prompt for login in the Web Player.

Additional Information