Actions, resources, and condition keys for Amazon EventBridge Schemas - AWS Identity and Access Management

Actions, resources, and condition keys for Amazon EventBridge Schemas

Tip

This page is moving to a new location on November 16, 2020. Please update your bookmark to use the new page at https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazoneventbridgeschemas.html.

Amazon EventBridge Schemas (service prefix: schemas) provides the following service-specific resources, actions, and condition context keys for use in IAM permission policies.

References:

Actions defined by Amazon EventBridge Schemas

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 indicates whether each action supports resource-level permissions. If there is no value for this column, you must specify all resources ("*") 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. Required resources are indicated in the table with an asterisk (*). If you specify a resource-level permission ARN in a statement using this action, then it must be of this type. Some actions support multiple resource types. If the resource type is optional (not indicated as required), then you can choose to use one but not the other.

For details about the columns in the following table, see The actions table.

Actions Description Access level Resource types (*required) Condition keys Dependent actions
CreateDiscoverer Creates an event schema discoverer. Once created, your events will be automatically map into corresponding schema documents Write

discoverer*

CreateRegistry Create a new schema registry in your account. Write

registry*

CreateSchema Create a new schema in your account. Write

schema*

DeleteDiscoverer Deletes discoverer in your account. Write

discoverer*

DeleteRegistry Deletes an existing registry in your account. Write

registry*

DeleteResourcePolicy Delete the resource-based policy attached to a given registry. Write

registry*

DeleteSchema Deletes an existing schema in your account. Write

schema*

DeleteSchemaVersion Deletes a specific version of schema in your account. Write

schema*

DescribeCodeBinding Retrieves metadata for generated code for specific schema in your account. Read

schema*

DescribeDiscoverer Retrieves discoverer metadata in your account. Read

discoverer*

DescribeRegistry Describes an existing registry metadata in your account. Read

registry*

DescribeSchema Retrieves an existing schema in your account. Read

schema*

GetCodeBindingSource Retrieves metadata for generated code for specific schema in your account. Read

schema*

GetDiscoveredSchema Retrieves schema for the provided list of sample events. Read
GetResourcePolicy Retrieves the resource-based policy attached to a given registry. Read

registry*

ListDiscoverers Lists all the discoverers in your account. List

discoverer*

ListRegistries List all discoverers in your account. List

registry*

ListSchemaVersions List all versions of a schema. List

schema*

ListSchemas List all schemas. List

schema*

ListTagsForResource This action lists tags for a resource. List

discoverer*

registry*

schema*

PutCodeBinding Generates code for specific schema in your account. Write

schema*

PutResourcePolicy Attach resource-based policy to the specific registry. Write

registry*

SearchSchemas Searches schemas based on specified keywords in your account. List

schema*

StartDiscoverer Starts the specified discoverer. Once started the discoverer will automatically register schemas for published events to configured source in your account Write

discoverer*

StopDiscoverer Starts the specified discoverer. Once started the discoverer will automatically register schemas for published events to configured source in your account Write

discoverer*

TagResource This action tags an resource. Tagging

discoverer*

registry*

schema*

aws:TagKeys

aws:RequestTag/${TagKey}

UntagResource This action removes a tag from on a resource. Tagging

discoverer*

registry*

schema*

aws:TagKeys

UpdateDiscoverer Updates an existing discoverer in your account. Write

discoverer*

UpdateRegistry Updates an existing registry metadata in your account. Write

registry*

UpdateSchema Updates an existing schema in your account. Write

schema*

Resource types defined by Amazon EventBridge Schemas

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 table. For details about the columns in the following table, see The resource types table.

Resource types ARN Condition keys
discoverer arn:${Partition}:schemas:${Region}:${Account}:discoverer/${DiscovererId}

aws:ResourceTag/${TagKey}

registry arn:${Partition}:schemas:${Region}:${Account}:registry/${RegistryName}

aws:ResourceTag/${TagKey}

schema arn:${Partition}:schemas:${Region}:${Account}:schema/${RegistryName}/${SchemaName}

aws:ResourceTag/${TagKey}

Condition keys for Amazon EventBridge Schemas

Amazon EventBridge Schemas 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 The 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 actions based on the allowed set of values for each of the tags String
aws:ResourceTag/${TagKey} Filters actions based on tag-value associated with the resource String
aws:TagKeys Filters actions based on the presence of mandatory tags in the request String