AWS Audit Manager is no longer open to new customers. Existing customers can continue to use the service as normal. For more information, see AWS Audit Manager availability change.
AWS API calls supported by AWS Audit Manager
You can use Audit Manager to capture snapshots of your AWS environment as evidence for audits. When you create or edit a custom control, you can specify one or more AWS API calls as a data source mapping for evidence collection. Audit Manager then makes API calls to the relevant AWS services, and collects a snapshot of the configuration details for your AWS resources.
For every resource that's in the scope of an API call, Audit Manager captures a configuration snapshot and converts it into evidence. This results in one piece of evidence per resource, as opposed to one piece of evidence per API call.
For example, if the ec2_DescribeRouteTables API call captures configuration
snapshots from five route tables, then you'll get five pieces of evidence in total for the
single API call. Each piece of evidence is a snapshot of the configuration of an individual
route table.
Topics
Key points
Paginated API calls
Many AWS services collect and store a large amount of data. As a result, when a
list, describe, or get API call attempts to
return your data, there can be a lot of results. If the amount of data is too large to
return in a single response, the results can be broken into more manageable pieces through
the use of pagination. This divides the results into
"pages" of data, making the responses easier to handle.
Some of the Supported API calls for custom control data sources are paginated. This means that they return partial results at first, and require subsequent requests to return the entire result set. For example, the Amazon RDS DescribeDBInstances operation returns up to 100 instances at a time, and subsequent requests are needed to return the next page of results.
As of March 08, 2023, Audit Manager supports paginated API calls as a data source for evidence collection. Previously, if a paginated API call was used as a data source, only a subset of your resources was returned in the API response (up to 100 results). Now, Audit Manager calls the paginated API operation multiple times, and gets each page of results until all resources are returned. For each resource, Audit Manager then captures a configuration snapshot and saves it as evidence. Because your complete set of resources is now captured in the API response, it’s likely that you’ll notice an increase in the amount of evidence that’s collected after March 08, 2023.
Audit Manager handles API call pagination for you automatically. If you create a custom control that uses a paginated API call as a data source, you don’t need to specify any pagination parameters.
Supported API calls for custom control data sources
In your custom controls, you can use any of the following API calls as a data source. Audit Manager can then use these API calls to collect evidence about your AWS usage.
| Supported API call | How Audit Manager uses this API to collect evidence |
|---|---|
| acm_GetAccountConfiguration | Collect a snapshot of the account configuration options associated with your AWS account. |
| acm_ListCertificates | Retrieve a list of certificate ARNs and domain names. |
| autoscaling_DescribeAutoScalingGroups | Collect a snapshot about the Auto Scaling groups in your AWS account. |
| backup_ListBackupPlans | Retrieve a list of all active backup plans in your AWS account. |
| bedrock_GetModelInvocationLoggingConfiguration | Collect a snapshot of the current configuration values for model invocation logging for models in your AWS account. |
| cloudfront_ListDistributions |
Retrieve a list of all distributions in your AWS account. |
| Collect a snapshot of the settings for one or more trails associated with the current Region for your AWS account. | |
| cloudtrail_ListTrails | Retrieve a list of the trails that are in your AWS account. |
| Collect a configuration snapshot of the alarms that are used for your AWS account. | |
| config_DescribeConfigRules | Retrieve details about your AWS Config rules. |
| config_DescribeDeliveryChannels | Collect a configuration snapshot for the delivery channels in your in your AWS account. |
| directconnect_DescribeDirectConnectGateways | Retrieve a list of all your Direct Connect gateways . |
| directconnect_DescribeVirtualGateways | Retrieve a list of the virtual private gateways owned by your AWS account. |
| docdb_DescribeCertificates | Collect a list of certificates for your AWS account. |
| docdb_DescribeDBClusterParameterGroups | Collect a list of DBCLusterParameterGroup descriptions for your
AWS account. |
| docdb_DescribeDBInstances | Collect information about provisioned Amazon DynamoDB instances for your AWS account. |
| Collect information about the alarms in your AWS account. | |
| Collect a snapshot of the settings for one or more trails associated with your AWS account. | |
|
Collect configuration snapshots for the DynamoDB tables in your AWS account. When you use this API as a data source, you don't need to provide the name of
a specific DynamoDB table. Instead, Audit Manager uses the |
|
| dynamodb_ListBackups | Retrieve a list of the DynamoDB backups that are associated with your AWS account. |
| Retrieve a list of all of the table names that are associated with your AWS account and your current endpoint. | |
| ec2_DescribeAddresses | Collect a snapshot of your Elastic IP addresses. |
| ec2_DescribeCustomerGateways | Collect a snapshot of your VPN customer gateways. |
| ec2_DescribeEgressOnlyInternetGateways | Collect a snapshot of your egress-only internet gateways. |
| Collect a snapshot of your flow logs. | |
| Collect a snapshot of your instances. | |
| ec2_DescribeInternetGateways | Collect a snapshot of your internet gateways. |
| ec2_DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociations | Collect a description of the associations between the virtual interface groups and the local gateway route tables in your AWS account. |
| ec2_DescribeLocalGateways | Collect a snapshot of your local gateways. |
| ec2_DescribeLocalGatewayVirtualInterfaces | Collect a snapshot of your local gateway virtual interfaces. |
| ec2_DescribeNatGateways | Collect a snapshot of your NAT gateways. |
| Collect a snapshot of your network ACLs. | |
| Collect a snapshot of your route tables. | |
| Collect a snapshot of your security groups. | |
| ec2_DescribeSecurityGroupRules | Collect a snapshot of one or more of your security group rules. |
| ec2_DescribeTransitGateways | Collect a snapshot of your transit gateways. |
| Collect a snapshot of your VPC endpoints. | |
| Collect a snapshot of your VPCs. | |
| Collect a snapshot of your VPC endpoints. | |
| ec2_DescribeVpcEndpointConnections | Collect a snapshot of the VPC endpoint connections to your VPC endpoint services, including any endpoints that are pending your acceptance. |
| ec2_DescribeVpcEndpointServiceConfigurations | Collect a snapshot of the VPC endpoint service configurations in your AWS account. |
| ec2_DescribeVpcPeeringConnections | Collect a snapshot of your VPN connections. |
| ec2_DescribeVpnConnections | Collect a snapshot of your VPN connections. |
| ec2_DescribeVpnGateways | Collect a snapshot of your virtual private gateways. |
| ec2_GetEbsDefaultKmsKeyId | Collect a snapshot of the default AWS KMS key for EBS encryption for your AWS account in the current Region. |
| ec2_GetEbsEncryptionByDefault | Describe whether EBS encryption by default is enabled for your AWS account in the current Region. |
| ecs_DescribeClusters | Collect a snapshot of your ECS clusters. |
| eks_DescribeAddonVersions | Collect a snapshot of your add-on versions. |
| elasticache_DescribeCacheClusters | Collect a snapshot of your provisioned clusters. |
| elasticache_DescribeServiceUpdates | Collect a snapshot of service updates for Amazon ElastiCache. |
| elasticfilesystem_DescribeAccessPoints | Collect a snapshot of the Amazon EFS access points in your AWS account. |
| Collect a snapshot of your Amazon EFS file systems. | |
| elasticloadbalancingv2_DescribeLoadBalancers |
Collect a snapshot of the load balancers in your AWS account. |
| elasticloadbalancingv2_DescribeSSLPolicies | Collect a snapshot of the policies that you use for SSL negotiation. |
| elasticloadbalancingv2_DescribeTargetGroups | Collect a snapshot of your ELB target groups. |
| elasticmapreduce_ListSecurityConfigurations | Retrieve a list of the security configurations that are visible to your AWS account, along with their creation dates and times, and their names. |
| events_ListConnections | Retrieve a list of the Amazon EventBridge connections in your AWS account. |
| events_ListEventBuses | Retrieve a list of the Amazon EventBridge event buses in your AWS account, including the default event bus, custom event buses, and partner event buses. |
| events_ListEventSources | Retrieve a list of the partner event sources that have been shared with your AWS account. |
| events_ListRules | Retrieve a list of your Amazon EventBridge rules. |
| firehose_ListDeliveryStreams | Retrieve a list of your delivery streams. |
| fsx_DescribeFileSystems | Collect a snapshot of the file systems that are owned by your AWS account. |
| guardduty_ListDetectors |
Retrieve a list of the |
| Generate a credential report for your AWS account. | |
| Collect a snapshot of the password policy for your AWS account. | |