AWS services evolve continuously. New resource types are introduced, existing services gain additional capabilities, and infrastructure teams adopt services that were not part of their original architecture.
This creates a challenge for teams using AWS Config. Your configuration recorder may have been working correctly for months, but that does not necessarily mean it records every resource type AWS Config supports today.
For example, imagine your organization starts using a new Amazon Bedrock resource. AWS Config adds support for recording that resource type, but your recorder is configured with a manually maintained list of resource types. The new resource might never enter your configuration history unless someone updates the recording configuration.
In this article, we will look at how to track newly supported AWS resource types, inspect your existing recording strategy, and build a simple Python check to identify resources that your recorder might be missing.
Why Tracking New Resource Types Matters
AWS Config records supported AWS resource changes as configuration items (CIs). These items provide information about resource configuration and changes over time.
When AWS Config adds support for a new resource type, organizations should check whether their existing recording configuration includes it.
Consider an organization that uses the following services:
Amazon EC2 for compute resources.
Amazon S3 for object storage.
Amazon Bedrock for AI workloads.
Amazon SageMaker for machine learning.
AWS Organizations for account governance.
If the organization configured AWS Config several months ago, its recorder might include only the resource types that were supported or selected at that time.
As AWS Config expands its resource coverage, the organization needs to verify whether its recording strategy captures the additions.
This matters for several reasons:
Security teams need configuration history to investigate unexpected infrastructure changes.
Compliance teams need evidence that relevant resources are being monitored.
Operations teams need visibility into resource configuration changes.
Cloud governance teams need consistent coverage across AWS accounts and Regions.
A resource that is not recorded cannot provide the same configuration history as a resource that AWS Config actively tracks.
Understand the AWS Config Recording Strategies
Before tracking new resource types, understand how your configuration recorder is configured.
AWS Config provides three recording strategies.
Record all supported resource types
The ALL_SUPPORTED_RESOURCE_TYPES strategy records all supported resource types, excluding the global IAM resource types by default.
The important advantage is that AWS Config automatically starts recording a newly supported resource type when it becomes available for recording in the configured Region.
This reduces the need to update your configuration every time AWS expands its supported resource list.
Record specific resource types
The INCLUSION_BY_RESOURCE_TYPES strategy records only the resource types explicitly listed in your recording configuration.
For example, your configuration might contain:
{
"allSupported": false,
"resourceTypes": [
"AWS::EC2::Instance",
"AWS::S3::Bucket",
"AWS::RDS::DBInstance"
]
}
If AWS Config adds support for another resource type, it will not automatically become part of this manually maintained list.
Your team must review the new resource type and update the configuration when required.
Record all resource types with exclusions
The EXCLUSION_BY_RESOURCE_TYPES strategy records all supported resource types except those explicitly excluded.
This is useful when your organization wants broad coverage but needs to avoid recording selected resource types.
For example, you might want to record most supported resources while excluding a resource type that generates unnecessary configuration activity.
The following table summarizes the difference.
Recording strategy | How it works | Automatically includes newly supported types |
|---|
ALL_SUPPORTED_RESOURCE_TYPES | Records all supported types | Yes |
INCLUSION_BY_RESOURCE_TYPES | Records only selected types | No |
EXCLUSION_BY_RESOURCE_TYPES | Records all supported types except exclusions | Yes |
The choice depends on your governance requirements, recording costs, and the level of control your organization needs.
Monitor AWS Config Resource Type Updates
AWS maintains a supported resource types reference page for AWS Config. It is updated monthly and provides the current list of supported resource types.
This should be one of the regular references for your cloud governance team.
However, checking the documentation manually every month is not always practical. A better approach is to establish a small review process.
Follow AWS What's New announcements
AWS regularly publishes announcements when AWS Config adds support for additional resource types.
For example, during 2026, AWS announced support for new resource types across services such as Amazon Bedrock, Amazon EC2, Amazon SageMaker, AWS Organizations, and Amazon S3 Vectors.
These announcements help teams identify which resource types have recently become available.
Review the supported resource types list
The supported resource types reference provides a broader view than individual announcements.
When reviewing it, pay attention to:
Newly listed resource types.
Services that are relevant to your architecture.
Resource types available in your deployed Regions.
Resource types supported by AWS Config rules.
Limitations affecting advanced queries or proactive evaluation.
Do not assume that every resource type listed in the documentation is available in every AWS Region.
Maintain an internal resource inventory
For larger AWS environments, maintain an internal list of resource types that your organization expects AWS Config to record.
For example:
AWS::EC2::Instance
AWS::S3::Bucket
AWS::RDS::DBInstance
AWS::Bedrock::KnowledgeBase
AWS::SageMaker::Endpoint
AWS::Organizations::Policy
You can compare this list with your recording configuration and investigate any missing entries.
This is particularly useful when different teams manage different AWS services.
Check Your Existing Configuration Recorder
The AWS CLI makes it possible to inspect the configuration recorder without opening the AWS Management Console.
Start by listing the configuration recorders:
aws configservice describe-configuration-recorders \
--region ap-south-1
The response includes the recorder configuration and its recording group.
Next, check whether the recorder is running:
aws configservice describe-configuration-recorder-status \
--region ap-south-1
A recorder that is configured correctly but not running will not provide the expected recording coverage.
You should also inspect the recording strategy and resource types.
For a recorder using an inclusion strategy, review the resourceTypes list carefully. For an all-supported or exclusion strategy, inspect the corresponding recording configuration and exclusions.
Remember that the configuration recorder is regional. Repeat these checks for every Region where your organization expects AWS Config coverage.
Build a Python Script to Identify Missing Resource Types
Let's create a small Python script using Boto3.
The purpose is straightforward: compare a list of resource types that your organization expects to record against the current recorder configuration.
This example focuses on the inclusion strategy because it is the strategy where manually maintained resource lists can easily become outdated.
First, install Boto3:
pip install boto3
Create a Python file named check_config_resource_types.py.
import boto3
REGION = "ap-south-1"
EXPECTED_RESOURCE_TYPES = {
"AWS::EC2::Instance",
"AWS::S3::Bucket",
"AWS::RDS::DBInstance",
"AWS::Bedrock::KnowledgeBase",
"AWS::SageMaker::Endpoint",
"AWS::Organizations::Policy"
}
client = boto3.client("config", region_name=REGION)
response = client.describe_configuration_recorders()
if not response["ConfigurationRecorders"]:
print("No AWS Config recorder found.")
raise SystemExit(1)
for recorder in response["ConfigurationRecorders"]:
name = recorder["name"]
group = recorder.get("recordingGroup", {})
strategy = group.get("recordingStrategy", {})
strategy_type = strategy.get("useOnly")
if strategy_type is None:
strategy_type = (
"ALL_SUPPORTED_RESOURCE_TYPES"
if group.get("allSupported", False)
else "INCLUSION_BY_RESOURCE_TYPES"
)
print(f"\nRecorder: {name}")
print(f"Strategy: {strategy_type}")
if strategy_type == "INCLUSION_BY_RESOURCE_TYPES":
configured_types = set(group.get("resourceTypes", []))
missing_types = (
EXPECTED_RESOURCE_TYPES - configured_types
)
if missing_types:
print("Resource types missing from recorder:")
for resource_type in sorted(missing_types):
print(f" - {resource_type}")
else:
print("All expected resource types are configured.")
elif strategy_type == "ALL_SUPPORTED_RESOURCE_TYPES":
print(
"All supported resource types are selected, "
"subject to exclusions and regional availability."
)
elif strategy_type == "EXCLUSION_BY_RESOURCE_TYPES":
exclusions = group.get(
"exclusionByResourceTypes", {}
).get("resourceTypes", [])
excluded_types = set(exclusions)
missing_types = EXPECTED_RESOURCE_TYPES & excluded_types
if missing_types:
print("Expected resource types explicitly excluded:")
for resource_type in sorted(missing_types):
print(f" - {resource_type}")
else:
print("No expected resource types are excluded.")
The script performs the following checks:
Connects to AWS Config in the selected Region.
Retrieves the existing configuration recorders.
Reads the recording strategy.
Compares expected resource types with the inclusion list.
Identifies expected resource types that are explicitly excluded.
Reports the result for each recorder.
The example uses a manually maintained expected-resource list. It does not automatically discover every newly supported AWS Config resource type. You can update this list as part of your monthly review process.
It also does not prove that a resource type is available in the selected Region or that a particular resource instance exists. Those checks should be part of a broader coverage assessment.
Understand Regional Availability and Global Resources
One common mistake is assuming that AWS Config supports every resource type in every Region.
AWS maintains a separate resource coverage by Region reference. Check it before adding a resource type to a regional recording configuration.
Global resources also need special attention.
For example, IAM users, groups, roles, and customer-managed policies have specific recording limitations depending on the Region and when AWS Config became available there.
Some global resource types are recorded only in their designated home Region.
Aurora global clusters are a special case: AWS Config can record AWS::RDS::GlobalCluster in all supported Regions where the customer-managed configuration recorder is enabled.
Therefore, a resource type missing from one Region does not automatically mean that your recorder is misconfigured. It might be a regional or global-resource limitation.
Common Mistakes to Avoid
Assuming all new resource types are automatically recorded
This is true for the all-supported and exclusion strategies, subject to the relevant resource and Region limitations. It is not true for an inclusion strategy.
Checking only the AWS Config console
A recorder can exist but be stopped. Always verify its status in addition to its configuration.
Ignoring excluded resource types
An exclusion strategy provides broad coverage, but an explicitly excluded resource type will not be recorded by that recorder.
Treating recording support as complete compliance coverage
Recording a resource does not automatically make it compliant. You still need suitable AWS Config rules, evaluations, and remediation processes.
Ignoring recording activity and cost
Adding more resource types can increase the number of configuration items and rule evaluations. Review the impact before changing recording coverage across a large organization.
Best Practices for Tracking New Resource Types
A practical approach is to make resource-type tracking part of your regular cloud governance process.
Review the AWS Config supported resource types page monthly.
Subscribe to AWS announcements relevant to your infrastructure.
Maintain an internal list of resource types that must be monitored.
Prefer all-supported recording when broad coverage is appropriate for your organization.
Use exclusions deliberately and document why each resource type is excluded.
Validate recorder status across all required Regions.
Check global-resource recording limitations.
Review AWS Config rules separately from recording coverage.
Monitor recording costs and configuration activity after expanding coverage.
Test recording changes in a non-production account before rolling them out widely.
For organizations using AWS Organizations, centralizing visibility through AWS Config aggregators can make it easier to review configuration data across multiple accounts and Regions. However, an aggregator does not replace the need to configure recording in the source accounts and Regions.
Summary
AWS Config support for resource types continues to expand, so a recording configuration that was sufficient when it was created might not meet your current monitoring requirements. The most important step is understanding your recording strategy. All-supported and exclusion-based strategies can automatically include newly supported resource types, while inclusion-based recording requires manual maintenance. Combine monthly documentation reviews, AWS announcements, recorder-status checks, regional availability checks, and automated validation to maintain reliable AWS Config coverage. This helps security, compliance, and operations teams maintain better visibility as their AWS environments evolve.
Arun PottiPosted Nov 14, 2026, 8:37 PM
Great Article.