Actions, resources, and condition keys for AWS CloudTrail - Service Authorization Reference

Actions, resources, and condition keys for AWS CloudTrail

AWS CloudTrail (service prefix: cloudtrail) provides the following service-specific resources, actions, and condition context keys for use in IAM permission policies.

References:

Actions defined by AWS CloudTrail

You can specify the following actions in the Action element of an IAM policy statement. Use policies to grant permissions to perform an operation in AWS. When you use an action in a policy, you usually allow or deny access to the API operation or CLI command with the same name. However, in some cases, a single action controls access to more than one operation. Alternatively, some operations require several different actions.

The Resource types column of the Actions table indicates whether each action supports resource-level permissions. If there is no value for this column, you must specify all resources ("*") to which the policy applies in the Resource element of your policy statement. If the column includes a resource type, then you can specify an ARN of that type in a statement with that action. If the action has one or more required resources, the caller must have permission to use the action with those resources. Required resources are indicated in the table with an asterisk (*). If you limit resource access with the Resource element in an IAM policy, you must include an ARN or pattern for each required resource type. Some actions support multiple resource types. If the resource type is optional (not indicated as required), then you can choose to use one of the optional resource types.

The Condition keys column of the Actions table includes keys that you can specify in a policy statement's Condition element. For more information on the condition keys that are associated with resources for the service, see the Condition keys column of the Resource types table.

Note

Resource condition keys are listed in the Resource types table. You can find a link to the resource type that applies to an action in the Resource types (*required) column of the Actions table. The resource type in the Resource types table includes the Condition keys column, which are the resource condition keys that apply to an action in the Actions table.

For details about the columns in the following table, see Actions table.

Actions Description Access level Resource types (*required) Condition keys Dependent actions
AddTags Grants permission to add one or more tags to a trail, event data store, or channel, up to a limit of 50 Tagging

channel

eventdatastore

trail

aws:RequestTag/${TagKey}

aws:TagKeys

CancelQuery Grants permission to cancel a running query Write

eventdatastore*

CreateChannel Grants permission to create a channel Write

channel*

cloudtrail:AddTags

eventdatastore*

aws:RequestTag/${TagKey}

aws:TagKeys

CreateEventDataStore Grants permission to create an event data store Write

eventdatastore*

cloudtrail:AddTags

iam:CreateServiceLinkedRole

iam:GetRole

kms:Decrypt

kms:GenerateDataKey

organizations:ListAWSServiceAccessForOrganization

aws:RequestTag/${TagKey}

aws:TagKeys

CreateServiceLinkedChannel [permission only] Grants permission to create a service-linked channel that specifies the settings for delivery of log data to an AWS service Write

channel*

CreateTrail Grants permission to create a trail that specifies the settings for delivery of log data to an Amazon S3 bucket Write

trail*

cloudtrail:AddTags

iam:CreateServiceLinkedRole

iam:GetRole

organizations:ListAWSServiceAccessForOrganization

aws:RequestTag/${TagKey}

aws:TagKeys

DeleteChannel Grants permission to delete a channel Write

channel*

DeleteEventDataStore Grants permission to delete an event data store Write

eventdatastore*

DeleteResourcePolicy Grants permission to delete a resource policy from the provided resource Write

channel*

DeleteServiceLinkedChannel [permission only] Grants permission to delete a service-linked channel Write

channel*

DeleteTrail Grants permission to delete a trail Write

trail*

DeregisterOrganizationDelegatedAdmin Grants permission to deregister an AWS Organizations member account as a delegated administrator Write

organizations:DeregisterDelegatedAdministrator

organizations:ListAWSServiceAccessForOrganization

DescribeQuery Grants permission to list details for the query Read

eventdatastore*

DescribeTrails Grants permission to list settings for the trails associated with the current region for your account Read
DisableFederation Grants permission to disable federation of event data store data by using the AWS Glue Data Catalog Write

eventdatastore*

glue:DeleteDatabase

glue:DeleteTable

glue:PassConnection

lakeformation:DeregisterResource

lakeformation:RegisterResource

EnableFederation Grants permission to enable federation of event data store data by using the AWS Glue Data Catalog Write

eventdatastore*

glue:CreateDatabase

glue:CreateTable

iam:GetRole

iam:PassRole

lakeformation:DeregisterResource

lakeformation:RegisterResource

GenerateQuery Grants permission to generate a query for a specified event data store using the CloudTrail Lake query generator Write

eventdatastore*

GenerateQueryResultsSummary [permission only] Grants permission to generate a results summary for specified queries using the CloudTrail natural language generator Read

eventdatastore*

cloudtrail:GetQueryResults

kms:Decrypt

kms:GenerateDataKey

GetChannel Grants permission to return information about a specific channel Read

channel*

GetEventDataStore Grants permission to list settings for the event data store Read

eventdatastore*

GetEventDataStoreData Grants permission to get data from an event data store by using the AWS Glue Data Catalog Read

eventdatastore*

kms:Decrypt

kms:GenerateDataKey

GetEventSelectors Grants permission to list settings for event selectors configured for a trail Read

trail*

GetImport Grants permission to return information about a specific import Read
GetInsightSelectors Grants permission to list CloudTrail Insights selectors that are configured for a trail or event data store Read

eventdatastore

trail

GetQueryResults Grants permission to fetch results of a complete query Read

eventdatastore*

kms:Decrypt

kms:GenerateDataKey

GetResourcePolicy Grants permission to get the resource policy attached to the provided resource Read

channel*

GetServiceLinkedChannel [permission only] Grants permission to list settings for the service-linked channel Read

channel*

GetTrail Grants permission to list settings for the trail Read

trail*

GetTrailStatus Grants permission to retrieve a JSON-formatted list of information about the specified trail Read

trail*

ListChannels Grants permission to list the channels in the current account, and their source names List
ListEventDataStores Grants permission to list event data stores associated with the current region for your account List
ListImportFailures Grants permission to return a list of failures for the specified import Read
ListImports Grants permission to return information on all imports, or a select set of imports by ImportStatus or Destination List
ListPublicKeys Grants permission to list the public keys whose private keys were used to sign trail digest files within a specified time range Read
ListQueries Grants permission to list queries associated with an event data store List

eventdatastore*

ListServiceLinkedChannels [permission only] Grants permission to list service-linked channels associated with the current region for a specified account List
ListTags Grants permission to list the tags for trails, event data stores, or channels in the current region Read

channel

eventdatastore

trail

ListTrails Grants permission to list trails associated with the current region for your account List
LookupEvents Grants permission to look up and retrieve metric data for API activity events captured by CloudTrail that create, update, or delete resources in your account Read
PutEventSelectors Grants permission to create and update event selectors for a trail Write

trail*

PutInsightSelectors Grants permission to create and update CloudTrail Insights selectors for a trail or event data store Write

eventdatastore

trail

PutResourcePolicy Grants permission to attach a resource policy to the provided resource Write

channel*

RegisterOrganizationDelegatedAdmin Grants permission to register an AWS Organizations member account as a delegated administrator Write

iam:CreateServiceLinkedRole

iam:GetRole

organizations:ListAWSServiceAccessForOrganization

organizations:RegisterDelegatedAdministrator

RemoveTags Grants permission to remove tags from a trail, event data store, or channel Tagging

channel

eventdatastore

trail

aws:TagKeys

RestoreEventDataStore Grants permission to restore an event data store Write

eventdatastore*

StartEventDataStoreIngestion Grants permission to start ingestion on an event data store Write

eventdatastore*

StartImport Grants permission to start an import of logged trail events from a source S3 bucket to a destination event data store Write
StartLogging Grants permission to start the recording of AWS API calls and log file delivery for a trail Write

trail*

StartQuery Grants permission to start a new query on a specified event data store Write

eventdatastore*

kms:Decrypt

kms:GenerateDataKey

StopEventDataStoreIngestion Grants permission to stop ingestion on an event data store Write

eventdatastore*

StopImport Grants permission to stop a specified import Write
StopLogging Grants permission to stop the recording of AWS API calls and log file delivery for a trail Write

trail*

UpdateChannel Grants permission to update a channel Write

channel*

UpdateEventDataStore Grants permission to update an event data store Write

eventdatastore*

iam:CreateServiceLinkedRole

iam:GetRole

kms:Decrypt

kms:GenerateDataKey

organizations:ListAWSServiceAccessForOrganization

UpdateServiceLinkedChannel [permission only] Grants permission to update the service-linked channel settings for delivery of log data to an AWS service Write

channel*

UpdateTrail Grants permission to update the settings that specify delivery of log files Write

trail*

iam:CreateServiceLinkedRole

iam:GetRole

organizations:ListAWSServiceAccessForOrganization

Resource types defined by AWS CloudTrail

The following resource types are defined by this service and can be used in the Resource element of IAM permission policy statements. Each action in the Actions table identifies the resource types that can be specified with that action. A resource type can also define which condition keys you can include in a policy. These keys are displayed in the last column of the Resource types table. For details about the columns in the following table, see Resource types table.

Note

For policies that control access to CloudTrail actions, the Resource element is always set to "*". For information about using resource ARNs in an IAM policy, see How AWS CloudTrail works with IAM in the AWS CloudTrail User Guide.

Resource types ARN Condition keys
trail arn:${Partition}:cloudtrail:${Region}:${Account}:trail/${TrailName}

aws:ResourceTag/${TagKey}

eventdatastore arn:${Partition}:cloudtrail:${Region}:${Account}:eventdatastore/${EventDataStoreId}

aws:ResourceTag/${TagKey}

channel arn:${Partition}:cloudtrail:${Region}:${Account}:channel/${ChannelId}

aws:ResourceTag/${TagKey}

Condition keys for AWS CloudTrail

AWS CloudTrail defines the following condition keys that can be used in the Condition element of an IAM policy. You can use these keys to further refine the conditions under which the policy statement applies. For details about the columns in the following table, see Condition keys table.

To view the global condition keys that are available to all services, see Available global condition keys.

Condition keys Description Type
aws:RequestTag/${TagKey} Filters access by the tag key-value pairs in the request String
aws:ResourceTag/${TagKey} Filters access by the tags attached to the resource String
aws:TagKeys Filters access by the tag keys in a request ArrayOfString