Search External Okta Objects in Salesforce Connect
CData Connect AI, enables you to access Okta data from cloud-based applications like the Salesforce console and mobile applications like the Salesforce Mobile App. In this article, you will use CData Connect AI and Salesforce Connect to access external Okta objects alongside standard Salesforce objects.
Connect to Okta from Salesforce
To work with live Okta data in Salesforce Connect, we need to connect to Okta from Connect AI, provide user access to the connection, and create a Workspace for the Okta data.
Connect to Okta from Connect AI
CData Connect AI uses a straightforward, point-and-click interface to connect to data sources.
- Log into Connect AI, click Sources, and then click Add Connection
- Select "Okta" from the Add Connection panel
-
Enter the necessary authentication properties to connect to Okta.
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.
- Click Save & Test
-
Navigate to the Permissions tab in the Add Okta Connection page and update the User-based permissions.
Add a Personal Access Token
When connecting to Connect AI through the REST API, the OData API, or the Virtual SQL Server, a Personal Access Token (PAT) is used to authenticate the connection to Connect AI. It is best practice to create a separate PAT for each service to maintain granularity of access.
- Click on the Gear icon () at the top right of the Connect AI app to open the settings page.
- On the Settings page, go to the Access Tokens section and click Create PAT.
-
Give the PAT a name and click Create.
- The personal access token is only visible at creation, so be sure to copy it and store it securely for future use.
Configure Okta Endpoints for Salesforce Connect
After connecting to Okta, create a workspace for your desired table(s).
-
Navigate to the Workspaces page and click Add to create a new Workspace (or select an existing workspace).
- Click Add to add new assets to the Workspace.
-
Select the Okta connection (e.g. Okta1) and click Next.
-
Select the table(s) you wish to work with and click Confirm.
- Make note of the OData Service URL for your workspace, e.g. https://cloud.cdata.com/api/odata/{workspace_name}
With the connection, PAT, and Workspace configured, you are ready to connect to Okta data from Salesforce Connect.
Connect to Okta Data as an External Data Sources
Follow the steps below to connect to the feed produced by Connect AI.
- Log into Salesforce and click Setup -> Integrations -> External Data Sources.
- Click Now External Data Sources.
- Enter values for the following properties:
- External Data Sources: Enter a label to be used in list views and reports.
- Name: Enter a unique identifier.
- Type: Select the option "Salesforce Connect: OData 4.0".
- URL: Enter the URL to the OData endpoint of Connect AI: https://cloud.cdata.com/api/odata/{workspace_name}
- Select JSON in the Format menu.
- In the Authentication section, set the following properties:
- Identity Type: If all members of your organization will use the same credentials to access Connect AI, select "Named Principal". If the members of your organization will connect with their own credentials, select "Per User".
- Authentication Protocol: Select Password Authentication to use basic authentication.
- Certificate: Enter or browse to the certificate to be used to encrypt and authenticate communications from Salesforce to your server.
- Username: Enter a CData Connect AI username (e.g. [email protected]).
- Password: Enter the user's PAT.
Synchronize Okta Objects
After you have created the external data source, follow the steps below to create Okta external objects that reflect any changes in the data source. You will synchronize the definitions for the Okta external objects with the definitions for Okta tables.
- Click the link for the external data source you created.
- Click Validate and Scan.
- Select the Okta tables you want to work with as external objects.
Access Okta Data as Salesforce Objects
After adding Okta data as an external data source and syncing Okta tables as external objects, you can use the external Okta objects just as you would standard Salesforce objects.
-
Create a new tab with a filter list view:
-
Create reports of external objects:
Simplified Access to Okta Data from Cloud Applications
At this point, you have a direct, cloud-to-cloud connection to live Okta data from Salesforce. For more information on gaining simplified access to data from more than 100 SaaS, Big Data, and NoSQL sources in cloud applications like Salesforce, refer to our Connect AI page.