# Duo Security

## Overview <a href="#overview" id="overview"></a>

Identity Intelligence's platform can analyze authentication events in Duo Security to give insights into how users are accessing your applications and using MFA. In order to provide Insights, you have to set up an integration between Duo Security and Identity Intelligence for analysis. This document will walk you through the process of setting up API access to Duo and will also walk you through the complementary setup inside of the Identity Intelligence console.

{% hint style="info" %}
**Attention Duo Customers!!**\
This documentation should only be utilized if you are configuring an ***additional*** Duo integration, ***after*** you have provisioned your Identity Intelligence tenant via the Duo Admin Panel.\
\
For instructions on how to provision your Identity Intelligence tenant, which includes an autogenerated Duo integration, via the Duo Admin Panel, please refer to the [Duo documentation](https://duo.com/docs/identity-security#provision-your-cisco-identity-intelligence-tenant).&#x20;
{% endhint %}

## Duo Security Integration <a href="#duo-security-integration-1" id="duo-security-integration-1"></a>

### Understanding Identity Intelligence admin API permissions <a href="#add-api-permissions" id="add-api-permissions"></a>

There are different types of API types of permissions sets that can be used with your Identity Intelligence tenant and Duo. &#x20;

* **Read-only admin API** - this is generated using a read-only permission (shown below) and used for data ingestion and analysis only.&#x20;
* **Read/write admin API permissions** - this adds the `Grant write resource` permission in order to take advantage of the defined list of Identity Intelligence's [Remediation Actions](https://docs.oort.io/understanding-your-users/remediation-actions#remediation-actions)
* **Auth API permissions** - one of the Actions available for an individual user is to send a push notification to the user's Duo enrolled mobile device.  The Duo Auth API requires a separate auth key, as outlined below. &#x20;

Remediation actions can only be taken by administrator or help desk roles in Identity Intelligence and are limited to the list in the above article.&#x20;

**Identity Intelligence recommends configuring all of the APIs documented below for full functionality and the best experience.**&#x20;

### Duo Admin API Configuration <a href="#duo-admin-api-configuration" id="duo-admin-api-configuration"></a>

You need to have admin access in Duo Security to add the necessary configurations using the following steps:&#x20;

1. From the Duo admin console, select **Applications**
2. In the top right corner, select **Protect an Application**
3. Search for **Admin API** and select **Protect**
4. Add the necessary API Permissions&#x20;

For **read-only** functionality, the API Permissions required are:

* **Grant Administrators** - Read
* **Grant read information**
* **Grant read resource**
* **Grant read log**

For **read/write capabilities** associated with [Identity Intelligence Remediation Actions](https://app.gitbook.com/o/5tZLGpRcYwxbRurPmO8K/s/qPSBzsjxd7KYg9DNVZ4l/~/changes/741/~/revisions/Xpoo573yjfaCcB37daHm/understanding-your-users/remediation-actions), add the `Grant Write resource` to the list of permissions

* **Grant Administrators** - Read AND Write
* **Grant read information**
* **Grant read log**
* **Grant read resource**
* **Grant write resource**

5. Select **Save Changes**&#x20;

### Duo Auth API Configuration

A Duo Auth API key is required for the Send Push Notification functionality mentioned above.&#x20;

In the Duo Admin panel\
1\. Select **Applications** and then select **Protect Auth API**

<figure><img src="https://582105988-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FqPSBzsjxd7KYg9DNVZ4l%2Fuploads%2FNZyAc5eN9fXI8aiZQnlD%2F2024-01-24_19-20-42.png?alt=media&#x26;token=ea588134-dd11-498a-805f-640f9dd8fade" alt=""><figcaption></figcaption></figure>

2. Copy the Integration key and secret key for use in the Identity Intelligence platform configuration
3. Scroll down and <mark style="color:red;">give the Auth API a name that will indicate to end users that the push is from your company</mark>

<figure><img src="https://582105988-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FqPSBzsjxd7KYg9DNVZ4l%2Fuploads%2FrHFM4K2Q5F1ueXBbQRnT%2F2024-01-24_19-21-55.png?alt=media&#x26;token=464f4fb5-6db2-4fa5-8240-e9b756384da9" alt=""><figcaption></figcaption></figure>

### Identity Intelligence Configuration <a href="#oort-configuration" id="oort-configuration"></a>

Follow the steps below to connect additional Duo integrations, other than the integration that was automatically created via Duo.&#x20;

Navigate to **Integrations -> New Integration -> Duo**

Give the integration a display **name**.

Enter the **API hostname, Integration key, and secret key** into the Identity Intelligence console. &#x20;

<mark style="color:red;">**NOTE**</mark> - the API hostname must not contain a prefix like `https://` - it should only be of the form\
`api-xxxxxxx.duosecurity.com`

![](https://582105988-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FqPSBzsjxd7KYg9DNVZ4l%2Fuploads%2FyLLZfBlDb8udE8Ck8dSI%2FDDuEKPychC1cwBFS1rO_oaK5mxJPTDhKhEe6uvJ6dKm416pcggHac98MmWv2Lx0zIy6G6XOFzGV4J1f6DvlJdfZwiOsW39h4ijV28XyMdIgbXkqWVy4WRTNxSRsyMqmaWtU1P4c2CaYugf1M4BBsqw.png?alt=media\&token=b465f242-55f8-424d-bb66-44743a321b9c)

Slide the button to enable Support Push Verification.

Enter the <mark style="color:green;">**Auth API**</mark>**&#x20;Integration Key** and **Secret Key.**&#x20;

<figure><img src="https://582105988-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FqPSBzsjxd7KYg9DNVZ4l%2Fuploads%2FRVqfiLoFgTh6qgC0HgKA%2F2024-01-24_19-20-02.png?alt=media&#x26;token=a5e61a7e-f2f9-458b-ad72-a3d6f0759c1c" alt=""><figcaption></figcaption></figure>

On the Advanced Settings tab, review the [Managed Integration](https://docs.oort.io/integrations/managed-integrations) info to ensure that you are collecting the relevant data types&#x20;

Click **Save**.&#x20;

### Test Connectivity and Start Collection

On the Integrations page, click the bar for the new Duo integration and select **Test Connectivity** from the menu.

![](https://582105988-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FqPSBzsjxd7KYg9DNVZ4l%2Fuploads%2Fct07AvyCol1SWqUIZFvv%2FQ-OG0IqawzgTYrbgIz8f0FiAyso5v8JtsEnLfKGsaAJgsVHuRhA34Nj39brDulaVaEZU4Qt3thS4NzWMi_MTJ3MakEzHDF1WQ5p7suvLNIWDCi1d-qXz1rPpNWwkeFGfxfcOwNLJeWc6nRLwFmGaEk4.png?alt=media\&token=81f5093a-9420-43c7-ac53-2292899ef0b2)

After testing successfully, click the **Collect Now** button to begin initial data collection immediately.

### Event Streaming

Event streaming can only be configured for Duo integrations for Identity Intelligence that were provisioned from the Duo Admin Panel. Enabling the event streaming is done on Step 2 of the wizard while provisioning, or it can be done after provisioning by going back to Step 2 of the wizard.

If you are creating a *second* Duo integration in Identity Intelligence (in addition to the one autogenerated upon tenant creation), event streaming is not currently supported for additional Duo integrations.&#x20;
