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

Actions, resources, and condition keys for AWS Direct Connect

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

References:

Actions defined by AWS Direct Connect

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 Actions table.

Actions Description Access level Resource types (*required) Condition keys Dependent actions
AcceptDirectConnectGatewayAssociationProposal Grants permission to accept a proposal request to attach a virtual private gateway to a Direct Connect gateway Write

dx-gateway*

AllocateConnectionOnInterconnect Grants permission to create a hosted connection on an interconnect Write

dxcon*

AllocateHostedConnection Grants permission to create a new hosted connection between a AWS Direct Connect partner's network and a specific AWS Direct Connect location Write

dxcon

dxlag

aws:RequestTag/${TagKey}

aws:TagKeys

AllocatePrivateVirtualInterface Grants permission to provision a private virtual interface to be owned by a different customer Write

dxcon

dxlag

aws:RequestTag/${TagKey}

aws:TagKeys

AllocatePublicVirtualInterface Grants permission to provision a public virtual interface to be owned by a different customer Write

dxcon

dxlag

aws:RequestTag/${TagKey}

aws:TagKeys

AllocateTransitVirtualInterface Grants permission to provision a transit virtual interface to be owned by a different customer Write

dxcon

dxlag

aws:RequestTag/${TagKey}

aws:TagKeys

AssociateConnectionWithLag Grants permission to associate a connection with a LAG Write

dxcon*

dxlag*

AssociateHostedConnection Grants permission to associate a hosted connection and its virtual interfaces with a link aggregation group (LAG) or interconnect Write

dxcon*

dxcon

dxlag

AssociateMacSecKey Grants permission to associate a MAC Security (MACsec) Connection Key Name (CKN)/ Connectivity Association Key (CAK) pair with an AWS Direct Connect dedicated connection Write

dxcon

dxlag

AssociateVirtualInterface Grants permission to associate a virtual interface with a specified link aggregation group (LAG) or connection Write

dxvif*

dxcon

dxlag

ConfirmConnection Grants permission to confirm the creation of a hosted connection on an interconnect Write

dxcon*

ConfirmCustomerAgreement Grants permission to confirm the the terms of agreement when creating the connection or link aggregation group (LAG) Write
ConfirmPrivateVirtualInterface Grants permission to accept ownership of a private virtual interface created by another customer Write

dxvif*

ConfirmPublicVirtualInterface Grants permission to accept ownership of a public virtual interface created by another customer Write

dxvif*

ConfirmTransitVirtualInterface Grants permission to accept ownership of a transit virtual interface created by another customer Write

dxvif*

CreateBGPPeer Grants permission to create a BGP peer on the specified virtual interface Write

dxvif*

CreateConnection Grants permission to create a new connection between the customer network and a specific AWS Direct Connect location Write

dxlag

aws:RequestTag/${TagKey}

aws:TagKeys

CreateDirectConnectGateway Grants permission to create a Direct Connect gateway, which is an intermediate object that enables you to connect a set of virtual interfaces and virtual private gateways Write
CreateDirectConnectGatewayAssociation Grants permission to create an association between a Direct Connect gateway and a virtual private gateway Write

dx-gateway*

CreateDirectConnectGatewayAssociationProposal Grants permission to create a proposal to associate the specified virtual private gateway with the specified Direct Connect gateway Write

dx-gateway*

CreateInterconnect Grants permission to create a new interconnect between a AWS Direct Connect partner's network and a specific AWS Direct Connect location Write

dxlag

aws:RequestTag/${TagKey}

aws:TagKeys

CreateLag Grants permission to create a link aggregation group (LAG) with the specified number of bundled physical connections between the customer network and a specific AWS Direct Connect location Write

dxcon

aws:RequestTag/${TagKey}

aws:TagKeys

CreatePrivateVirtualInterface Grants permission to create a new private virtual interface Write

dxcon

dxlag

aws:RequestTag/${TagKey}

aws:TagKeys

CreatePublicVirtualInterface Grants permission to create a new public virtual interface Write

dxcon

dxlag

aws:RequestTag/${TagKey}

aws:TagKeys

CreateTransitVirtualInterface Grants permission to create a new transit virtual interface Write

dxcon

dxlag

aws:RequestTag/${TagKey}

aws:TagKeys

DeleteBGPPeer Grants permission to delete the specified BGP peer on the specified virtual interface with the specified customer address and ASN Write

dxvif*

DeleteConnection Grants permission to delete the connection Write

dxcon*

DeleteDirectConnectGateway Grants permission to delete the specified Direct Connect gateway Write

dx-gateway*

DeleteDirectConnectGatewayAssociation Grants permission to delete the association between the specified Direct Connect gateway and virtual private gateway Write

dx-gateway*

DeleteDirectConnectGatewayAssociationProposal Grants permission to delete the association proposal request between the specified Direct Connect gateway and virtual private gateway Write
DeleteInterconnect Grants permission to delete the specified interconnect Write

dxcon*

DeleteLag Grants permission to delete the specified link aggregation group (LAG) Write

dxlag*

DeleteVirtualInterface Grants permission to delete a virtual interface Write

dxvif*

DescribeConnectionLoa Grants permission to describe the LOA-CFA for a Connection Read

dxcon*

DescribeConnections Grants permission to describe all connections in this region Read

dxcon

DescribeConnectionsOnInterconnect Grants permission to describe a list of connections that have been provisioned on the given interconnect Read

dxcon*

DescribeCustomerMetadata Grants permission to view a list of customer agreements, along with their signed status and whether the customer is an NNIPartner, NNIPartnerV2, or a nonPartner Read
DescribeDirectConnectGatewayAssociationProposals Grants permission to describe one or more association proposals for connection between a virtual private gateway and a Direct Connect gateway Read

dx-gateway

DescribeDirectConnectGatewayAssociations Grants permission to describe the associations between your Direct Connect gateways and virtual private gateways Read

dx-gateway

DescribeDirectConnectGatewayAttachments Grants permission to describe the attachments between your Direct Connect gateways and virtual interfaces Read

dx-gateway

DescribeDirectConnectGateways Grants permission to describe all your Direct Connect gateways or only the specified Direct Connect gateway Read

dx-gateway

DescribeHostedConnections Grants permission to describe the hosted connections that have been provisioned on the specified interconnect or link aggregation group (LAG) Read

dxcon

dxlag

DescribeInterconnectLoa Grants permission to describe the LOA-CFA for an Interconnect Read

dxcon*

DescribeInterconnects Grants permission to describe a list of interconnects owned by the AWS account Read

dxcon

DescribeLags Grants permission to describe all your link aggregation groups (LAG) or the specified LAG Read

dxlag

DescribeLoa Grants permission to describe the LOA-CFA for a connection, interconnect, or link aggregation group (LAG) Read

dxcon

dxlag

DescribeLocations Grants permission to describe the list of AWS Direct Connect locations in the current AWS region Read
DescribeRouterConfiguration Grants permission to describe Details about the router for a virtual interface Read

dxvif*

DescribeTags Grants permission to describe the tags associated with the specified AWS Direct Connect resources Read

dxcon

dxlag

dxvif

DescribeVirtualGateways Grants permission to describe a list of virtual private gateways owned by the AWS account Read
DescribeVirtualInterfaces Grants permission to describe all virtual interfaces for an AWS account Read

dxcon

dxlag

dxvif

DisassociateConnectionFromLag Grants permission to disassociate a connection from a link aggregation group (LAG) Write

dxcon*

dxlag*

DisassociateMacSecKey Grants permission to remove the association between a MAC Security (MACsec) security key and an AWS Direct Connect dedicated connection Write

dxcon

dxlag

ListVirtualInterfaceTestHistory Grants permission to list the virtual interface failover test history List

dxvif*

StartBgpFailoverTest Grants permission to start the virtual interface failover test that verifies your configuration meets your resiliency requirements by placing the BGP peering session in the DOWN state. You can then send traffic to verify that there are no outages Write

dxvif*

StopBgpFailoverTest Grants permission to stop the virtual interface failover test Write

dxvif*

TagResource Grants permission to add the specified tags to the specified AWS Direct Connect resource. Each resource can have a maximum of 50 tags Tagging

dxcon

dxlag

dxvif

aws:RequestTag/${TagKey}

aws:TagKeys

UntagResource Grants permission to remove one or more tags from the specified AWS Direct Connect resource Tagging

dxcon

dxlag

dxvif

aws:TagKeys

UpdateConnection Grants permission to update the AWS Direct Connect dedicated connection configuration. You can update the following parameters for a connection: The connection name or The connection's MAC Security (MACsec) encryption mode Write

dxcon*

UpdateDirectConnectGateway Grants permission to update the name of a Direct Connect gateway Write

dx-gateway*

UpdateDirectConnectGatewayAssociation Grants permission to update the specified attributes of the Direct Connect gateway association Write
UpdateLag Grants permission to update the attributes of the specified link aggregation group (LAG) Write

dxlag*

UpdateVirtualInterfaceAttributes Grants permission to update the specified attributes of the specified virtual private interface Write

dxvif*

Resource types defined by AWS Direct Connect

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 Resource types table.

Resource types ARN Condition keys
dxcon arn:${Partition}:directconnect:${Region}:${Account}:dxcon/${ConnectionId}

aws:ResourceTag/${TagKey}

dxlag arn:${Partition}:directconnect:${Region}:${Account}:dxlag/${LagId}

aws:ResourceTag/${TagKey}

dxvif arn:${Partition}:directconnect:${Region}:${Account}:dxvif/${VirtualInterfaceId}

aws:ResourceTag/${TagKey}

dx-gateway arn:${Partition}:directconnect::${Account}:dx-gateway/${DirectConnectGatewayId}

Condition keys for AWS Direct Connect

AWS Direct Connect 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 actions based on the presence of tag key-value pairs in the request String
aws:ResourceTag/${TagKey} Filters access by actions based on tag key-value pairs attached to the resource String
aws:TagKeys Filters access by actions based on the presence of tag keys in the request String