# Okta Integration

Integrating with Okta can give Rezonate complete visibility into assets, privileges, and activities. You can integrate with Okta by providing Rezonate with read-only access via an API Key or OAuth service. This document explains how to implement the OAuth method, which is considered more secure and cost-effective.

&#x20;

**There are 3 different, supported ways to integrate Rezonate with Okta, all explained in this document:**

1. By Generating an API Key
2. Through the Okta Marketplace
3. By Generating Custom SSH Key

## &#x20; <a href="#h_01hkzn87199yp18gz5pdpz595e" id="h_01hkzn87199yp18gz5pdpz595e"></a>

## API Key Integration <a href="#h_01hcwm6h423b0f5yx317k8x9yt" id="h_01hcwm6h423b0f5yx317k8x9yt"></a>

### Method <a href="#h_01hcwm6h428fyaxz2h1zd9679q" id="h_01hcwm6h428fyaxz2h1zd9679q"></a>

For this method, a read-only administrative API key is needed. this can be generated from the admin console. after creating the key, save and insert the Okta domain & the API Key.

<figure><img src="https://2355086414-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIkSba0W4HlnmPJ93gVOS%2Fuploads%2Fzd1tpk539XnHTT6c89Pi%2Fimage.png?alt=media&#x26;token=93a11f9c-8aae-4882-929f-21f42da6a543" alt=""><figcaption></figcaption></figure>

## Okta Store Integration <a href="#h_01hkzn342k7c3dzvys1zsh46fv" id="h_01hkzn342k7c3dzvys1zsh46fv"></a>

1. Sign in to your Okta Admin Panel, and select **API Service Integrations.**
2. In the integrations list, select Rezonate Security.
3. After reviewing the permissions click "Install & Authorize"<br>

<br>

<figure><img src="https://2355086414-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIkSba0W4HlnmPJ93gVOS%2Fuploads%2FkEu0A8jGbhlxDBroA54t%2Fimage.png?alt=media&#x26;token=6def1c9e-74d0-401b-993e-d08a6ae0337c" alt=""><figcaption></figcaption></figure>

1. Take note of the application Client-id & Client-secret.
2. Login to the Rezonate Console, and click the settings button in the top menu<br>
3. On the side menu, select Cloud Integrations<br>
4. Click the "New Integration" Button<br>
5. Select Okta Integration from the new drawer that opened<br>
6. Fill out the form, entering your okta domain and then clicking "I have store integration", and fill in the client-id and secret key you collected in step number 2.<br>

<figure><img src="https://2355086414-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIkSba0W4HlnmPJ93gVOS%2Fuploads%2FoSiKedUtA1U6nVUi8u7i%2Fimage.png?alt=media&#x26;token=3f98ecba-263d-4d96-88d3-f19a027702eb" alt="" width="563"><figcaption></figcaption></figure>

## OAuth Method <a href="#h_01hcwm6h41yhr14nsxea659050" id="h_01hcwm6h41yhr14nsxea659050"></a>

### Prerequisites <a href="#h_01hcwm6h41eqa38mamr8ngff2z" id="h_01hcwm6h41eqa38mamr8ngff2z"></a>

Before you begin, generate a temporary API key to use when creating the limited read-only OAuth application to assign its scopes. You can delete this API key after the process.

### Method <a href="#h_01hcwm6h41x10yk0ebjjw8cr4d" id="h_01hcwm6h41x10yk0ebjjw8cr4d"></a>

You perform OAuth integration through raw HTTP requests. Rezonate has developed a script to automatically create the application, and make the process easier and faster.

1. Install Python 3.6+
2. Install the [cryptography](https://pypi.org/project/cryptography/) and [pyjwkest](https://pypi.org/project/pyjwkest/) Python libraries using the following pip commands:

   ```
   pip install cryptography
   ```

   ```
   pip install pyjwkest
   ```
3. Run the **okta\_integration\_script.py** (attached below)script with the tenant ID and the temporary API token:

   <pre><code><strong>python okta_integration_script.py --tenant-id TENANT_ID --api-token XXX_API_TOKEN
   </strong></code></pre>

The TENANT\_ID is your Okta Identifier, which is the subdomain in the Okta domain. For example, in the case of rezonate.okta.com, the tenant\_id is rezonate.

After executing the script (which will take approximately 1-2 minutes), save the output (the tenant\_id, application\_id, and private key).

![okta\_integration.png](https://rezonate.zendesk.com/hc/article_attachments/7969439960349)

## Response & Remediation actions prerequisites

Rezonate allows an automatic, on-demand, and scheduled execution of response & remediation actions in Okta.

<figure><img src="https://2355086414-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIkSba0W4HlnmPJ93gVOS%2Fuploads%2Fi9vdcxZ0TKY6po4vPtT4%2Fimage.png?alt=media&#x26;token=91306260-d13a-4f2b-adfe-30e1dca18a39" alt=""><figcaption><p>Available response actions in Okta</p></figcaption></figure>

To enable this capability, you will need to provide Rezonate with the following permissions:

```
'okta.users.manage',
'okta.groups.manage'
```

{% file src="<https://2355086414-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIkSba0W4HlnmPJ93gVOS%2Fuploads%2Fxpl0rxaxQFldBYmb5ZMu%2Fokta_integration_script.py?alt=media&token=155cae32-cdd5-4e61-b0a5-438c790fcf5b>" %}

<br>
