We are proud to share our inclusion in the 2024 Gartner Magic Quadrant for Data Integration Tools. We believe this recognition reflects the differentiated business outcomes CData delivers to our customers.
Get the Report →Publish PingOne-Connected Dashboards in Tableau Server
Use CData Tableau Connectors and Tableau Server to visualize live PingOne data.
Tableau Server is a visual analytics platform transforming the way businesses use data to solve problems. When paired with the CData Tableau Connector for PingOne, you get access to live PingOne data within Tableau Server. This article shows how to connect to PingOne in Tableau Desktop, publish a Data Source to Tableau Server, and build a simple chart from that data.
The CData Tableau Connectors enable high-speed access to live PingOne data in Tableau Server. Once you install the connector, you simply authenticate with PingOne and you can immediately start building responsive, dynamic visualizations and dashboards. By surfacing PingOne data using native Tableau data types and handling complex filters, aggregations, & other operations automatically, CData Tableau Connectors grant seamless access to PingOne data.
NOTE: The CData Tableau Connectors require Tableau 2020.3 or higher. If you are using an older version of Tableau, you will need to use the CData Tableau Connector for PingOne. If you wish to connect to PingOne data in Tableau Cloud, you will need to use CData Connect.
Enable Connectivity to PingOne in Tableau Server
Start by installing the CData Tableau Connector on the machine hosting Tableau Server.
Installation on a Linux Machine:
- Unpack the setup.zip archive. Creating a directory for the connector like /opt/cdata/pingone is recommended, but the exact install location does not matter.
- Navigate to the lib subdirectory under the install directory. Generate a license file by running this command and following the prompts:
java -jar cdata.tableau.pingone.jar -l
- Copy cdata.tableau.pingone.jar and cdata.tableau.pingone.lic into the drivers directory, /opt/tableau/tableau_driver/jdbc.
- Copy cdata.pingone.taco into the connectors directory, MyTableauServerRootDir/data/tabsvc/vizqlserver/Connectors. In most cases MyTableauServerRootDir is located at /var/opt/tableau/tableau_server.
- Restart Tableau Server.
If you cannot execute the java commmand from step 2, you will need to install a Java runtime environment. The name of this package differs on Red Hat-based and Debian-based systems:
OS | Java Package |
---|---|
Ubuntu | openjdk-8-jre-headless |
Debian | openjdk-8-jre-headless |
RHEL | java-1.8.0-openjdk |
CentOS | java-1.8.0-openjdk |
Fedora | java-1.8.0-openjdk |
SUSE | java-1_8_0-openjdk |
You can substitute Java 8 with a later Java release as needed.
Installation on a Windows Machine:
- Run the setup.exe installer. The driver JAR file will be automatically placed in the drivers directory, C:\Program Files\Tableau\Drivers.
- Navigate to the lib folder under the installation directory. By default the installation directory is a folder in C:\Program Files\CData.
- Copy cdata.tableau.pingone.lic into the drivers directory.
- Copy cdata.tableau.pingone.taco into the connectors directory, MyTableauServerRootDir/data/tabsvc/vizqlserver/Connectors. In most cases MyTableauServerRootDir is located under C:\ProgramData.
- Restart Tableau Server.
Connect to PingOne in Tableau Desktop
Once the connectors are installed on the Server machine, we can configure a connection to PingOne in Tableau Desktop and publish a PingOne-based Data Source to Tableau Server.
- Open Tableau Desktop.
- Click More under Connect -> To a Server.
- Select "PingOne by CData".
- Configure the connection to the data.
To connect to PingOne, configure these properties:
- Region: The region where the data for your PingOne organization is being hosted.
- AuthScheme: The type of authentication to use when connecting to PingOne.
- Either WorkerAppEnvironmentId (required when using the default PingOne domain) or AuthorizationServerURL, configured as described below.
Configuring WorkerAppEnvironmentId
WorkerAppEnvironmentId is the ID of the PingOne environment in which your Worker application resides. This parameter is used only when the environment is using the default PingOne domain (auth.pingone). It is configured after you have created the custom OAuth application you will use to authenticate to PingOne, as described in Creating a Custom OAuth Application in the Help documentation.
First, find the value for this property:
- From the home page of your PingOne organization, move to the navigation sidebar and click Environments.
- Find the environment in which you have created your custom OAuth/Worker application (usually Administrators), and click Manage Environment. The environment's home page displays.
- In the environment's home page navigation sidebar, click Applications.
- Find your OAuth or Worker application details in the list.
-
Copy the value in the Environment ID field.
It should look similar to:
WorkerAppEnvironmentId='11e96fc7-aa4d-4a60-8196-9acf91424eca'
Now set WorkerAppEnvironmentId to the value of the Environment ID field.
Configuring AuthorizationServerURL
AuthorizationServerURL is the base URL of the PingOne authorization server for the environment where your application is located. This property is only used when you have set up a custom domain for the environment, as described in the PingOne platform API documentation. See Custom Domains.
Authenticating to PingOne with OAuth
PingOne supports both OAuth and OAuthClient authentication. In addition to performing the configuration steps described above, there are two more steps to complete to support OAuth or OAuthCliet authentication:
- Create and configure a custom OAuth application, as described in Creating a Custom OAuth Application in the Help documentation.
- To ensure that the driver can access the entities in Data Model, confirm that you have configured the correct roles for the admin user/worker application you will be using, as described in Administrator Roles in the Help documentation.
- Set the appropriate properties for the authscheme and authflow of your choice, as described in the following subsections.
OAuth (Authorization Code grant)
Set AuthScheme to OAuth.
Desktop Applications
Get and Refresh the OAuth Access Token
After setting the following, you are ready to connect:
- InitiateOAuth: GETANDREFRESH. To avoid the need to repeat the OAuth exchange and manually setting the OAuthAccessToken each time you connect, use InitiateOAuth.
- OAuthClientId: The Client ID you obtained when you created your custom OAuth application.
- OAuthClientSecret: The Client Secret you obtained when you created your custom OAuth application.
- CallbackURL: The redirect URI you defined when you registered your custom OAuth application. For example: https://localhost:3333
When you connect, the driver opens PingOne's OAuth endpoint in your default browser. Log in and grant permissions to the application. The driver then completes the OAuth process:
- The driver obtains an access token from PingOne and uses it to request data.
- The OAuth values are saved in the location specified in OAuthSettingsLocation, to be persisted across connections.
The driver refreshes the access token automatically when it expires.
For other OAuth methods, including Web Applications, Headless Machines, or Client Credentials Grant, refer to the Help documentation.
- Click "Sign In".

Discover Schemas and Query Data
Once you establish the connection to PingOne data, you can configure which entities to visualize.
- Select CData from the Database pull-down menu.
- Select PingOne from the Schema pull-down menu.
- Drag the tables and views you wish to visualize onto the join area. You can include multiple tables.
- Select Update Now or Automatically Update. Update Now lets you preview the first 10,000 rows of the data source (or enter the number of rows you want to see in the Rows text box). Automatically Update auto-loads the changes in the preview area.
Publish Data to Tableau Server
After you configure the data you wish to visualize, you can publish the Data Source to a Tableau Server instance. In Tableau Desktop:
- Click Server -> Sign In.
- Enter the URL for your Tableau Server.
- Authenticate with Tableau Server credentials.
- Click Server -> Publish Data Source and select your data source.
- Click Publish.
- Select the Project, name the Data Source, and optionally add a description.
- Click Publish.
This creates a new entry under the server's data source list, from which you an change the data source's permissions, view its history, and perform other management tasks.

Note that workstation connected to the same server will be able to use the same source in Tableau Desktop, even if the connector isn't installed there. Also, workbooks created directly on Tableau Server (via the web interface) can use this source.
Visualize PingOne Data in Tableau Server
With the Data Source published to Tableau Server, you are ready to visualize PingOne data.
- Login to your Tableau Server instance.
- Connect to the remote source using the Search for Data -> Tableau Server in the Connect sidebar.
- Click the published Data Source.
- Click New Workbook.
- In the workbook, PingOne fields are listed as Dimensions and Measures, depending on the data type. The CData Tableau Connector discovers data types automatically, allowing you to leverage the powerful data processing and visualization features of Tableau.
- Drag a field from the Dimensions or Measures area to Rows or Columns. Tableau creates column or row headers.
- Select one of the chart types from the Show Me tab. Tableau displays the chart type that you selected.
Using the CData Tableau Connector for PingOne with Tableau Server, you can easily create robust visualizations and reports on PingOne data. Download a free, 30-day trial and get started today.