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 →Access Okta Data from MySQL in HeidiSQL
Use CData ODBC Driver and SQL Gateway to connect and query live Okta data from HeidiSQL.
HeidiSQL is an open-source database administration tool that natively supports MariaDB, MySQL, SQL Server, and PostgreSQL. When paired with the CData ODBC Driver for Okta and SQL Gateway, HediSQL's reach extends to include access to live Okta data. This article demonstrates how to connect to on-premise Okta and query Okta data in HeidiSQL.
Connect to Okta Data
If you have not already done so, provide values for the required connection properties in the data source name (DSN). You can use the built-in Microsoft ODBC Data Source Administrator to configure the DSN. This is also the last step of the driver installation. See the "Getting Started" chapter in the help documentation for a guide to using the Microsoft ODBC Data Source Administrator to create and configure a DSN.
To connect to Okta, set the Domain connection string property to your Okta domain.
You will use OAuth to authenticate with Okta, so you need to create a custom OAuth application.
Creating a Custom OAuth Application
From your Okta account:
- Sign in to your Okta developer edition organization with your administrator account.
- In the Admin Console, go to Applications > Applications.
- Click Create App Integration.
- For the Sign-in method, select OIDC - OpenID Connect.
- For Application type, choose Web Application.
- Enter a name for your custom application.
- Set the Grant Type to Authorization Code. If you want the token to be automatically refreshed, also check Refresh Token.
- Set the callback URL:
- For desktop applications and headless machines, use http://localhost:33333 or another port number of your choice. The URI you set here becomes the CallbackURL property.
- For web applications, set the callback URL to a trusted redirect URL. This URL is the web location the user returns to with the token that verifies that your application has been granted access.
- In the Assignments section, either select Limit access to selected groups and add a group, or skip group assignment for now.
- Save the OAuth application.
- The application's Client Id and Client Secret are displayed on the application's General tab. Record these for future use. You will use the Client Id to set the OAuthClientId and the Client Secret to set the OAuthClientSecret.
- Check the Assignments tab to confirm that all users who must access the application are assigned to the application.
- On the Okta API Scopes tab, select the scopes you wish to grant to the OAuth application. These scopes determine the data that the app has permission to read, so a scope for a particular view must be granted for the driver to have permission to query that view. To confirm the scopes required for each view, see the view-specific pages in Data Model < Views in 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.
Configure the SQL Gateway
See the SQL Gateway Overview to set up connectivity to Okta data as a virtual MySQL database. You will configure a MySQL remoting service that listens for MySQL requests from clients. The service can be configured in the SQL Gateway UI.
To connect to the SQL Gateway from HeidiSQL, you will need to run the SQL Gateway on a web-facing machine. After configuring the SQL Gateway, make note of the following information:
- The IP address or domain name of the machine hosting the SQL Gateway
- The data source name (likely CData Okta Sys) of the MySQL service
- The port number of the MySQL service
- The credentials of a SQL Gateway user with access to the service
Configure Remote Access
If your ODBC Driver and the remoting service are installed on-premise (and not accessible from HeidiSQL), you can use the reverse SSH tunneling feature to enable remote access. For detailed instructions, read our Knowledge Base article: SQL Gateway SSH Tunneling Capabilities.
Connect to Okta in HeidiSQL
Once you have a MySQL Service configured for the CData ODBC Driver for Okta, you are ready to connect to the data in HeidiSQL. Start by creating a new connection Session in HeidiSQL, then choose the MySQL library type.
Configure the data set using the values for the MySQL service for Okta you configured in SQL Gateway (be sure to use the DSN for the database name). Validate your connection and click Open.
Query Okta from HeidiSQL
- In the database listing on the left, find your connection to Okta configured earlier.
- In the database listing on the left, expand the appropriate connection and to view individual tables or data objects present within Okta.
- Write custom SQL queries targeting these tables, treating the data source like any SQL Server database, or visually explore each tabular data set by selecting the relevant tables
With the CData ODBC Driver for Okta and SQL Gateway, you are able to easily query data from Okta data in HeidiSQL. If you have any questions, such as needing to access your on-premises data from HeidiSQL, let our Support Team know.