Consume Okta OData Feeds in SAP Lumira
You can use the CData API Server to create data visualizations based on Okta data in SAP Lumira. The API Server enables connectivity to live data: dashboards and reports can be refreshed on demand. This article shows how to create a chart that is always up to date.
Set Up the API Server
If you have not already done so, download the CData API Server. Once you have installed the API Server, follow the steps below to begin producing secure Okta OData services:
Connect to Okta
To work with Okta data from SAP Lumira, we start by creating and configuring a Okta connection. Follow the steps below to configure the API Server to connect to Okta data:
- First, navigate to the Connections page.
-
Click Add Connection and then search for and select the Okta connection.
-
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.
- After configuring the connection, click Save & Test to confirm a successful connection.
Configure API Server Users
Next, create a user to access your Okta data through the API Server. You can add and configure users on the Users page. Follow the steps below to configure and create a user:
- On the Users page, click Add User to open the Add User dialog.
-
Next, set the Role, Username, and Privileges properties and then click Add User.
-
An Authtoken is then generated for the user. You can find the Authtoken and other information for each user on the Users page:
Creating API Endpoints for Okta
Having created a user, you are ready to create API endpoints for the Okta tables:
-
First, navigate to the API page and then click
Add Table
.
-
Select the connection you wish to access and click Next.
-
With the connection selected, create endpoints by selecting each table and then clicking Confirm.
Gather the OData Url
Having configured a connection to Okta data, created a user, and added resources to the API Server, you now have an easily accessible REST API based on the OData protocol for those resources. From the API page in API Server, you can view and copy the API Endpoints for the API:
Connect to Okta from SAP Lumira
Follow the steps below to retrieve Okta data into SAP Lumira. You can execute an SQL query or use the UI.
- In SAP Lumira, click File -> New -> Query with SQL. The Add New Dataset dialog is displayed.
- Expand the Generic section and click the Generic OData 2.0 Connector option.
-
In the Service Root URI box, enter the OData endpoint of the API Server. This URL will resemble the following:
https://your-server:8080/api.rsc
-
In the User Name and Password boxes, enter the username and authtoken of an API user. These credentials will be used in HTTP Basic authentication.
Select entities in the tree or enter an SQL query. This article imports Okta Users entities.
-
When you click Connect, SAP Lumira will generate the corresponding OData request and load the results into memory. You can then use any of the data processing tools available in SAP Lumira, such as filters, aggregates, and summary functions.
Create Data Visualizations
After you have imported the data, you can create data visualizations in the Visualize room. Follow the steps below to create a basic chart.
In the Measures and Dimensions pane, drag measures and dimensions onto the x-axis and y-axis fields in the Visualization Tools pane. SAP Lumira automatically detects dimensions and measures from the metadata service of the API Server.
By default, the SUM function is applied to all measures. Click the gear icon next to a measure to change the default summary.
- In the Visualization Tools pane, select the chart type.
- In the Chart Canvas pane, apply filters, sort by measures, add rankings, and update the chart with the current Okta data.