🔁Okta Workflows Webhook Example
8/2023
Overview
Okta Workflows provide a flexible and extensible platform for orchestrating common operations within an Okta environment. Now with the new Oort Webhooks feature, you can combine the power of Oort identity analytics and Okta Workflow automation to accomplish numerous things.
This article provides a basic example of how to use Oort webhook destinations with Okta Workflows.
Assumptions
This article assumes the following:
General familiarity with the Okta Workflows platform
An Okta tenant capable of supporting the Workflows module (not a Developer tenant)
Additional downstream or adjacent platform integrations in Okta Workflows, such as Slack, Microsoft 365, ServiceNOW, etc.
Okta Super Admin role
High-Level Design
This example traces the following design:
Creation of an API Endpoint in Okta Workflow for ingesting Oort notification events
Parsing of the JSON event message, including event type, criticality, and list of users failing
Invoking a
For Each
function for each user listed in the notification, which invokes a Helper flow to evaluate specific logic and perform certain actionsSending a Slack message with the output of the failed check notification
Import Pre-Configured Workflows
Oort has exported the Okta Workflows for this example, which can then be imported into your Workflow console for review and testing.
Configuration Steps
Create a new flow and provide a suitable name for it
Add several List actions to convert the JSON strings to text, for later use in the workflow.
At this point, it's useful to Save this flow and create a 2nd flow of type Helper to execute specific actions for each failing user, referenced in the next step. See the Helper Flow section. This will act as a placeholder.
Additional actions for the primary API flow are added at this point. This includes
Using Compose Test to create a message block with the Lists created in previous actions
Using the output of the Compose action to send a Slack message to a channel (requires a Slack app connector)
Helper Flow
The Demo - Dispatcher Helper flow reference above is constructed of the following:
The on-demand Helper flow that receives the input of the List - For Each action in the primary API flow
Okta Actions to
Read the Okta user ID based on the email provided
Revoke any existing sessions
Suspend the user
Oort Configuration
Using the API Endpoint Invoke URL and Client Token from above, create a Webhooksnotification target in your Oort tenant.
Note:
The auth method should be API Key
The API Key name will be
x-api-client-token
as described in Okta documentationYou can use the Test Connectivity function to trigger event messages to your webhook
When ready, make sure to enable the Webhook notification target in the specific Check or Checks you want to use it with. You can review this list in the Cisco Identity Insightssection.
Tips
Workflow Execution History
Execution history is very helpful for troubleshooting your workflow.
Run Flow with Test Data
You can use the Run button to run the flow with manually input data.
Copy the body of the JSON Parse string from a previously sent test message and use it as the Body input to the Run Test function.
Webhooks in Action
Last updated