Hi Everyone,
In this document, we will talk about how to onboard the Okta application and use it for user lifecycle activities in the application.
I have my own SailPoint IIQ and Okta instances to explain it to you. You can use your instances for your practice.
SailPoint IIQ Instance:
Okta Instance:
Okta Admin Console:
Okta: Okta is a cloud-based identity and access management (IAM) platform that can be used to securely access business apps and resources. It can be used for a variety of purposes, including:
Authentication and authorization
Single sign-on (SSO)
User identity management
Multi-factor authentication (MFA)
Identity governance and compliance
API and application backend security
Now, I am going to explain the onboard Okta application and use it for provisioning activities for the user.
Let’s configure the Okta application first in SailPoint.
In the configuration section, we need two main details: One is Authentiation Type and second one is API Token. So, how do I get those details?
I tell you: Log in to Okta and go to admin console and get those two details:
Security → API → Tokens, and click on Create token
Now, you have the token. Next, get the URL from the URL search box.
Now, let’s do the test connection.
If you go to the Schema section, we have three objects by default: account, group, and application. I am not changing anything, going with the default one. You can just preview before aggregating the data to see if SailPoint is pulling data or not.
In the provisioning policies section, we are getting Create and Disable account forms by default. If you want, you can update them. I am just going with the default ones for now.
In the Correlation section, I am using one account correlation config. It is pretty straight forward, as we already did for other applications like Delimited, JDBC, etc. I hope you have done it before.
Here, I am not going to write any rules for now. If you want, you can write rules according to your customization while pulling or reading the data from Okta.
Now, let’s run the account and group aggregation for the Okta application.
Now, let’s check the accounts and groups.
So far, it is clear that we have a total 12 group objects from Okta, which include applications and groups. And we have 12 accounts as well.
Raise Access Request:
It will ask us to provide details about the user because we have not done so to get the user details dynamically in the provisioning policy form. You can write simple code to rerun the values dynamically for the user in the form.
After approval is done, the access request is now completed.
Now, let’s check in the Okta application.
User account got created with the group. Now try to login with user.
By doing so, we can conclude that the user successfully created and logged in as well.
If you see Access Request status is Provisioning and verifying in SailPoint.
We can make it complete by running the account aggregation of Okta and Perform Identity Request Maintenance tasks.
Disable Okta Account through SailPoint
It will ask us to provide details to Suspend or Deprovision because we have not configured status (have not provided any value. So, you can provide according to your requirements) in the provisioning policy form.
Since I have not configured any approvals, it is not going for the approvals. It directly disables the account.
Now, check the user in the Okta application.
Now, the user is deactivated in the application.
Enable the Account:
To enable account updates during the enable operation (updateAccountWithEnableOperation), add the following entry to the application XML using the application Debug page:
trueNow, enable the account.
Check the user in Okta and see if the user is activated or not.
Now, the user is activated. The Okta admin has to reset the password and provide it to the user. Later, the user will be able to login to the Okta application.
Update the User Details:
I am setting up the target mapping for one of the attributes called email in the Okta application.
Now, update the email attribute and run Refresh Identity Cube by enabling (Synchronize attributes) for the user (For updating the email, change the samaccount name and do aggregation and refresh, it is vary from one customer to one customer).
Current email is: [email protected]
Now, refresh task is completed. Let’s check the user in Okta, if it is updated or not.
Current email is: [email protected]
Likewise, you can update any value in the application as well.
Besides these things, Okta supports lots of features. Please go through the documentation once. We can also do SSO by Okta for which we have to setup some configuration. I will explain in another document.
Note: This is an integration that requires additional licensing or subscriptions to use. For more information, contact your customer success manager.
For more information: Supported Features