# Tenable

![Tenable_logo.svg](https://assets.relyanceuat.xyz/images/docs/14091359104013/14090857081613.svg)
Tenable is a cybersecurity company with a full range of modern computing products. They help organizations gain visibility across multiple exposure vectors and provide a continuous exposure platform to reduce and mitigate risk.

In order to integrate Tenable with Relyance AI you will need an **Access Key** and **Secret Key**.

#### In Tenable:

1. Login to your Tenable account.
2. Click the hamburger menu in the top left-hand corner and select **Settings**.
3. Click the **My Account** card.
4. In the left-hand navigation menu, select **API KEYS**.
5. In the bottom right hand corner click the **Generate** button.
6. Copy the **Access Key** and **Secret Key** to be used in Relyance.

![Tenable-3.png](https://assets.relyanceuat.xyz/images/docs/14091359104013/14091273594509.png)

#### In the Relyance AI application:

1. Login to your Relyance account.
2. Navigate to the **Settings** Menu in the bottom left-hand side.
3. Select **Integrations**.
4. Click on the **Vendor Integration** tab.
5. Find the **Tenable** integration card and click it to open its connections.
6. Under **Authentication Method**, choose **Custom**.
8. Paste the **Access Key** and **Secret Key** into their respective fields.

![Tenable-1.png](https://assets.relyanceuat.xyz/images/docs/14091359104013/14090993323021.png)

The **Authentication** step asks for:

- **Access Key**: required; held as a secret.
- **Secret Key**: required; held as a secret.

9. Click **Authenticate**.
10. At this point, you should see the following result on the **Vendor** Integrations page:

![Tenable-2.png](https://assets.relyanceuat.xyz/images/docs/14091359104013/14090964987277.png)

11. Congratulations, you are now connected to **Tenable**.

<!-- terraform-examples:begin (generated from the integration catalog; do not hand-edit) -->

## Manage this integration with Terraform

Connections for this integration can be managed as code with the [Relyance Terraform provider](https://registry.terraform.io/providers/Relyance/relyance/latest). Non-secret fields go in `auth.params`; secret fields go in `auth.secrets_wo`, which is write-only — never stored in Terraform state. Rotate secrets by bumping `auth.secrets_wo_version`.

```hcl
resource "relyance_integration_connection" "tenable" {
  vendor = "tenable"
  name   = "<your connection name>"

  auth = {
    method = "access-keys"
    params = {
      data_storage_location = "us"
    }
    # Secret fields are write-only: sent to Relyance, never stored in state.
    secrets_wo = {
      access_key = var.tenable_access_key
      secret_key = var.tenable_secret_key
    }
    secrets_wo_version = 1
  }

  scans = { "property-inspection" = { enabled = true } }
}
```

<!-- terraform-examples:end -->
