Getting Started with the CData ADO.NET Provider for PingOne

Complete guide to installing, licensing, and connecting with the CData ADO.NET Provider for PingOne.


This guide explains everything you need to work with the CData ADO.NET Provider for PingOne. You will learn how to install the provider, set up a connection to your PingOne data, and run simple commands in your .NET applications using familiar ADO.NET patterns.

Whether you are building desktop apps, web apps, or background services, the provider enables secure, high-performance connectivity to live PingOne data without needing to manage API details manually.

Installation and Licensing

System Requirements

  • Windows: Windows 10/11 or Windows Server 2016+
  • .NET Versions: .NET Framework 4.0+, .NET 6+, .NET Standard assemblies
  • IDE: Visual Studio 2017 or later

Installing the ADO.NET Provider

Windows Installation

  1. Download the ADO.NET provider installer from your CData account or the evaluation page.
  2. Run the installer and follow the installation wizard to completion.
  3. The installer registers the provider and places all assemblies in the appropriate CData installation folders.
  4. You will be prompted for your license key during installation:
    XXXX-XXXX-XXXX-XXXX-XXXX
    • Note: If you are using a trial, select Trial Key instead.

Activating your License

Licensing behavior varies depending on whether you are developing with the .NET Framework or .NET Standard. Use the steps below to activate the provider in your environment.

.NET Framework (Windows)

On Windows using the .NET Framework, no extra action is required. The installer or NuGet package automatically installs your development license.

.NET Standard (Windows/Mac/Linux)

For .NET Standard platforms like .NET Core, Mono, or Xamarin, you must install a license manually before using the provider.

Using the Install-License Tool

The toolkit includes an install-license utility in the

lib/netstandard2.0
folder for applying trial or full licenses.

To install a trial license:


dotnet ./install-license.dll

To activate a full product license:


dotnet ./install-license.dll 

After running the tool, your development machine is licensed and ready to use the provider in .NET applications.

Runtime Licensing

When deploying applications, specify the Runtime Key (RTK) in your connection string to enable redistribution.

Property Description
RTK Your Runtime Key used for deployed ADO.NET applications.

Common Licensing Questions

Can I use my license on multiple machines?
Yes, depending on your subscription tier. If unsure, review your order confirmation or contact [email protected].

I lost my license key. How do I retrieve it?
Email [email protected] with your order number.

Can I transfer my license to another machine?
Submit a License Transfer Request:
https://www.cdata.com/lic/transfer/

Once approved, an activation is added to your product key and the previous installation becomes invalid.

For more licensing support, visit portal.cdata.com or email [email protected].

Connection Configuration

Once installed, the next step is to configure a connection to PingOne. Connections are created using ADO.NET connection strings in your .NET application's code or configuration file.

Creating a connection manager

  • Open Visual Studio.
  • Navigate to View, select Server Explorer.
  • Click Connect to Database from the left sidebar.
  • In the Add Connection dialog, click Change.
  • Choose CData PingOne data source, then click OK.

Configuring Connection Properties

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:

  1. From the home page of your PingOne organization, move to the navigation sidebar and click Environments.
  2. 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.
  3. In the environment's home page navigation sidebar, click Applications.
  4. Find your OAuth or Worker application details in the list.
  5. 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:

  1. The driver obtains an access token from PingOne and uses it to request data.
  2. 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.


Test your connection

  • Click Test Connection.
  • Once the connection is successful, you can explore the data inside Visual Studio.

Common Connection Issues

Authentication Failed

Solution: Verify OAuth settings, client IDs, secrets, or token permissions for your PingOne. Contact [email protected] for assistance.

Cannot Reach Server

Solution: Check firewall, proxy, and VPN configurations. Contact [email protected] for required port information.

Table Not Found

Solution: Confirm you selected the correct schema or database when querying PingOne.


What's Next

Now that you have installed, licensed, and configured the ADO.NET provider, here are scenarios you can use to explore our ADO.NET tools:


Get Support

If you need assistance at any point:


FAQs

Installation and Licensing

  • Do I need administrator rights to install the ADO.NET Provider?
    Yes, administrator rights are required to install components for use across Visual Studio.
  • Do I need an RTK to deploy to Azure Data Factory?
    Yes. Set the RTK property in your application's connection string before publishing.

Connecting

  • Can I use multiple PingOne accounts?
    Create separate Connection =strings for each account.
  • Can I connect through a proxy?
    Yes. Configure proxy settings in the Connection string.
  • How do I test my connection?
    Click Test Connection in the Connection Manager UI.

Performance & Troubleshooting

  • How can I improve query performance
    Apply filters, limit row counts, and leverage server-side paging properties.
  • How do I enable logging?
    Add the following to your connection manager:
    • Logfile: /path/to/logfile.log
    • Verbosity: 3

    Be prepared to securely upload the log file upon request when reaching out to [email protected] for troubleshooting analysis.

    For questions not covered in this FAQ, contact [email protected].

Ready to get started?

Download a free trial of the PingOne Data Provider to get started:

 Download Now

Learn more:

PingOne Icon PingOne ADO.NET Provider

Rapidly create and deploy powerful .NET applications that integrate with PingOne.