![]() |
VOOZH | about |
SAS is a software suite developed for advanced analytics, multivariate analysis, business intelligence, data management, and predictive analytics. When you pair SAS with the CData ODBC Driver for PingOne, you gain database-like access to live PingOne data from SAS, expanding your reporting and analytics capabilities. This article explains how to create a library for PingOne in SAS and create a simple report based on real-time PingOne data.
The CData ODBC Driver offers unmatched performance for interacting with live PingOne data in SAS due to optimized data processing built into the driver. When you issue complex SQL queries from SAS to PingOne, the driver pushes supported SQL operations, like filters and aggregations, directly to PingOne and utilizes the embedded SQL engine to process unsupported operations (often SQL functions and JOIN operations) client-side. With built-in dynamic metadata querying, you can easily visualize and analyze PingOne data in SAS.
Information for connecting to PingOne follows, along with different instructions for configuring a DSN in Windows and Linux environments (the ODBC Driver for PingOne must be installed on the machine hosting the SAS System).
To connect to PingOne, configure these properties:
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:
WorkerAppEnvironmentId='11e96fc7-aa4d-4a60-8196-9acf91424eca'
Now set to the value of the Environment ID field.
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.
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:
Set to OAuth.
Get and Refresh the OAuth Access Token
After setting the following, you are ready to connect:
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 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.
When you configure the DSN, you may also want to set the Max Rows connection property. This will limit the number of rows returned, which is especially helpful for improving performance when designing reports and visualizations.
If you have not already, first specify connection properties in an ODBC DSN (data source name). This is the last step of the driver installation. You can use the Microsoft ODBC Data Source Administrator to create and configure ODBC DSNs.
If you are installing the CData ODBC Driver for PingOne in a Linux environment, the driver installation predefines a system DSN. You can modify the DSN by editing the system data sources file (/etc/odbc.ini) and defining the required connection properties.
[CData PingOne Sys] Driver = CData ODBC Driver for PingOne Description = My Description AuthScheme = OAuth WorkerAppEnvironmentId = eebc33a8-xxxx-4f3a-yyyy-d3e5262fd49e Region = NA OAuthClientId = client_id OAuthClientSecret = client_secret InitiateOAuth = GETANDREFRESH
For specific information on using these configuration files, please refer to the help documentation (installed and found online).
Connect to PingOne in SAS by adding a library based on the CData ODBC Driver for PingOne.
SAS natively supports querying data either using a low-code, point-and-click Query tool or programmatically with PROC SQL and a custom SQL query. When you create a View in SAS, the defining query is executed each time the view is queried. This means that you always query live PingOne data for reports, charts, and analytics.
proc sql; create view [cdata].[administrators].users_view as select id, username from odbclib.[cdata].[administrators].users where EmployeeType = 'Contractor'; quit;
With a local view created, you can report, visualize, or otherwise analyze PingOne data using the powerful SAS features. Print a simple report using PROC PRINT and create a basic graph based on the data using PROC GCHART.
proc print data=[cdata].[administrators].users; title "PingOne [CData].[Administrators].Users Data"; run;π A simple PingOne data report.
proc gchart data=[cdata].[administrators].users; pie id / sumvar=username value=arrow percent=arrow noheading percent=inside plabel=(height=12pt) slice=inside value=none name='[CData].[Administrators].UsersChart'; run;π A simple PingOne data chart.
Download a free trial of the PingOne ODBC Driver to get started:
Download NowLearn more:
π PingOne IconThe PingOne ODBC Driver is a powerful tool that allows you to connect with live data from PingOne, directly from any applications that support ODBC connectivity.
Access PingOne data like you would a database - read, write, and update PingOne 0, etc. through a standard ODBC Driver interface.