AWS EC2 Connector
The following is not supported in Tenable FedRAMP Moderate environments. For more information, see the Tenable FedRAMP Product Offering.
Amazon Elastic Compute Cloud (Amazon EC2) is a core service provided by Amazon Web Services (AWS) that allows users to run virtual machines (called instances) in the cloud. These instances can be used to host applications, run batch jobs, serve websites, or perform virtually any compute-related task—without needing to own or manage physical hardware.
Connector Details
Details | Description |
---|---|
Supported products |
|
Category |
Asset Inventory |
Ingested data |
Assets only |
Ingested Asset Classes |
Devices Resources |
Integration type |
UNI directional (data is transferred from the Connector to Tenable Exposure Management in one direction) |
Supported version and type |
SaaS (latest) |
Prerequisites and User Permissions
Before you begin configuring the connector, make sure to:
-
Create a cross-account role in AWS with the required access permissions:
-
ec2:DescribeSecurityGroups
-
ec2:DescribeInstances
-
-
Generate AWS secret and access keys and grant required permissions:
-
Login with the target account credentials to the AWS Console.
-
Navigate to IAM > Users.
-
Select the user with the appropriate permissions.
-
Navigate to the Security Credentials tab.
-
In the Access Keys section, click Create access key.
A Create access key wizard appears.
-
In the Use case section, select the Third-party service radio button.
-
Click Next.
-
In the Description tag value text box, type a descriptive tag for the key.
-
Click Create access key.
-
Save the Access key and Secret key values for use within Tenable Exposure Management.
-
-
Obtain the ARN and external ID for the cross-account role:
To include data from both your main AWS account and any linked accounts (enabling cross-account access), you must generate an ARN and External ID to configure the connector within Tenable Exposure Management.
Important: If you're creating roles for multiple AWS accounts, you must repeat these generation steps for each individual account.You must also:
Use the same External ID for all roles.
When configuring the connection in Tenable, if you're entering multiple ARNs, separate them with commas, for example, arn:aws:iam::123456789012:role/TenableRole,arn:aws:iam::098765432109:role/TenableRole.
In the AWS Console:
-
Navigate to IAM > Policies > Create Policy > Visual Editor.
-
From the Service drop-down, select the appropriate EC2 service.
-
From the Actions allowed drop-down, select the following permissions:
-
DescribeInstances
-
DescribeSecurityGroups
-
-
Click Next: Review.
-
On the Review policy page, type a Name and Description for the policy.
-
Review the Summary.
-
Click Create Policy.
-
Navigate to IAM > Roles > Create Role > Another AWS account.
-
In the Account ID field, paste the following Tenable account ID:
012615275169 -
Select the Require External ID check box.
-
In the text box, type the value of your external ID.
-
Paste this value into the Connector text box.
-
Ensure the Require MFA check box is deselected.
-
Click Next: Permissions.
-
Attach the policy you created.
-
Continue through the wizard and review the settings.
-
Create the role.
-
Copy the generated ARN for use within Tenable Exposure Management.
Add a Connector
To add a new connector:
-
In the left navigation menu, click Connectors.
The Connectors page appears.
-
In the upper-right corner, click
Add new connector.
The Connector Library appears.
-
In the search box, type the name of the connector.
-
On the tile for the connector, click Connect.
The connector configuration options appear.
Configure the Connector
-
(Optional) In the Connector's Name text box, type a descriptive name for the connector.
-
(Optional) To use a preconfigured on-prem connector to connect to this connector, from the Gateway drop-down, select the on-prem connector you want to use for the connector. Otherwise, select Don't use gateway.
Note: For information about configuring a gateway, see Tenable On-Prem Connector. -
In the Regions text box, type a comma separated list of the cloud regions in which your AWS accounts reside.
-
Do one of the following:
-
For a single AWS account:
-
In the Access Key Integration section, in the Access Key and Secret Key text boxes, paste the access and secret keys generated in AWS.
-
-
For multiple AWS accounts:
-
In the ARN integration section, in the External ID text box, type the external ID for your AWS account.
-
In the ARNs text box, type a list of comma separated ARNs from which you want to pull AWS data.
Important! At least one of the provided ARNs must have access to each selected region to allow successful data collection.
Note! Exposure Management attempts to sync each selected region using all available ARNs. Partial coverage is supported, but at least one ARN must have access to every selected region to ensure complete data ingestion. -
-
-
In the Data pulling configuration section, you can configure dynamic settings specific to the connector.
-
In the Asset Retention text box, type the number of days after which you want assets to be removed from Tenable Exposure Management. If an asset has not been detected or updated within the specified number of days, it is automatically removed from the application, ensuring your asset inventory is current and relevant.
Tip: For more information, see Asset Retention.
-
-
In the Test connectivity section, click the Test Connectivity button to verify that Tenable Exposure Management can connect to your connector instance.
-
A successful connectivity test confirms that the platform can connect to the connector instance. It does not, however, guarantee that the synchronization process will succeed, as additional syncing or processing issues may arise.
-
If the connectivity test fails, an error message with details about the issue appears. Click Show tests for more information about the exact error.
-
-
In the Connector scheduling section, configure the time and day(s) on which you want connector syncs to occur.
Tip: For more information, see Connector Scheduling. -
Click Create. Tenable Exposure Management begins syncing the connector. The sync can take some time to complete.
-
To confirm the sync is complete, do the following:
-
Navigate to the Connectors page and monitor the connector's status. Sync is complete once the connector status is Connected.
-
View the sync logs for the connector to monitor the logs for a successful connection.
-
AWS in Tenable Exposure Management
Locate Connector Assets in Tenable Exposure Management
As the connector discovers assets, Tenable Exposure Management ingests those devices for reporting.
To view assets by connector:
-
In Tenable Exposure Management, navigate to the Assets page.
-
In the Filters section, under 3rd Party Connectors, click the connector name for which you want to view assets.
The asset list updates to show only assets from the selected connector.
-
Click on any asset to view Asset Details.
Data Mapping
Exposure Management integrates with the connector via API to retrieve relevant weakness and asset data, which is then mapped into the Exposure Management system. The following tables outline how fields and their values are mapped from the connector to Exposure Management.
Device Mapping
Tenable Exposure Management UI Field |
AWS EC2 Field |
---|---|
Unique Identifier |
InstanceId |
Asset - External Identifier or Asset - Provider Identifier |
InstanceId |
Asset - Name |
PublicDnsName or InstanceId |
Asset - Operating Systems |
Platform or PlatformDetails |
Asset - IPv4 Adresses Asset - IPv6 Adresses |
PrivateIpAddress PublicIpAddress |
Asset - MAC Addresses |
MacAddress |
Asset - Host Fully Qualified DNS |
PrivateDnsName |
Asset - First Observation Date |
LaunchTime |
Asset - External Tags |
Tags |
Asset Custom Attributes |
AvailabilityZone InstanceType SecurityGroups AmiLaunchIndex KeyName |
Resource Mapping
Tenable Exposure Management UI Field |
AWS EC2 Field |
---|---|
Unique Identifier |
GroupId |
Asset - Name |
GroupName |
Provider Names |
AWS |
Cloud Resource Type |
AWS::EC2::SecurityGroup |
Asset - External Identifier or Asset - Provider Identifier |
GroupId |
Asset - External Tags |
Tags |
Asset Custom Attributes |
VpcId OwnerId |
Status Update Mechanisms
Every day, Tenable Exposure Management syncs with the vendor's platform to receive updates on existing findings and assets and to retrieve new ones (if any were added).
The table below describes how the status update mechanism works in the connector for findings and assets ingested into Tenable Exposure Management.
Update Type in Exposure Management |
Mechanism (When?) |
---|---|
Archiving Assets |
|
Change a Finding status from "Active" to "Fixed" |
|
Support Limitations and Expected Behavior
This section outlines any irregularities, expected behaviors, or limitations related to integration of the connector and Exposure Management. It also highlights details about ingested and non-ingested data to clarify data handling and functionality within this integration.

The AWS EC2 connector fetches data only for the following asset types:
-
EC2 Instances
-
Security Groups
API Endpoints in Use
API version: 11.3.0
API |
Use in Tenable Exposure Management |
Required Permissions |
---|---|---|
describe_instances | generating Devices | EC2 describeInstances |
describe_security_groups | generating Resources | EC2 describeSecurityGroups |
Data Validation
This section shows how to validate and compare data between Tenable Exposure Management and the AWS EC2 platform.
Asset Data Validation
Objective: Ensure the number of assets in AWS EC2 aligns with the number of devices displayed in Tenable Exposure Management.
In AWS EC2 :
-
Navigate to EC2 > Instances.
-
Ensure that all instance states are selected.
-
Review the total number of EC2 instances.
Note the number of terminated instances. These are archived by default and do not appear Exposure Management.
-
Subtract the terminated instances from the total to get the count of active instances expected in Exposure Management.
In Tenable Exposure Management:
-
Compare the total number of assets between AWS EC2 and Tenable Exposure Management.
Expected outcome: The asset count in Exposure Management may not perfectly match those in AWS EC2, as the connector captures data via periodic snapshots rather than real-time updates. Discrepancies can occur due to instance changes between syncs, short-lived instances, regional filtering, or IAM permission limitations.
Security Groups (Resources) Data Validation
Objective: Ensure the number of assets in AWS EC2 aligns with the number of resources displayed in Tenable Exposure Management.
In AWS EC2:
-
Navigate to EC2 > Network & Security > Security Groups.
-
Review the total number of security groups.
In Tenable Exposure Management:
-
Compare the total number of resources between AWS EC2 and Tenable Exposure Management.
Expected outcome: Resources listed AWS EC2 should match those shown in Exposure Management.
If an asset is not visible in Exposure Management, check the following conditions:
-
The asset status changed to one of the selected statuses defined in the Asset Retention configuration.
-
The asset was archived based on the last observed date (last seen).
-
The asset was archived based its status.
-
The asset was archived because it did not return in the connector's next sync.
Tip: To learn more on how assets and findings change status, see Status Update Mechanisms.