From 740d2418d9da9c6bac0f7dcc6bf1987fd7ced101 Mon Sep 17 00:00:00 2001
From: awstools
Rule changes are propagated to affected instances as quickly as possible. However, a small delay might occur.
*For information about VPC security group quotas, see Amazon VPC quotas.
+ *If you want to reference a security group across VPCs attached to a transit gateway using the + * security group + * referencing feature, note that you can only reference security groups + * for ingress rules. You cannot reference a security group for egress rules.
+ *Describes the VPCs on the other side of a VPC peering connection that are referencing the security groups you've specified in this request.
+ *Describes the VPCs on the other side of a VPC peering connection or the VPCs attached to a transit gateway that are referencing the security groups you've specified in this request.
* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript @@ -63,6 +63,7 @@ export interface DescribeSecurityGroupReferencesCommandOutput * // GroupId: "STRING_VALUE", * // ReferencingVpcId: "STRING_VALUE", * // VpcPeeringConnectionId: "STRING_VALUE", + * // TransitGatewayId: "STRING_VALUE", * // }, * // ], * // }; diff --git a/clients/client-ec2/src/commands/DescribeStaleSecurityGroupsCommand.ts b/clients/client-ec2/src/commands/DescribeStaleSecurityGroupsCommand.ts index f8bfd2a56396..4b879fbf2bfc 100644 --- a/clients/client-ec2/src/commands/DescribeStaleSecurityGroupsCommand.ts +++ b/clients/client-ec2/src/commands/DescribeStaleSecurityGroupsCommand.ts @@ -38,9 +38,8 @@ export interface DescribeStaleSecurityGroupsCommandOutput extends DescribeStaleS /** * @public *Describes the stale security group rules for security groups in a specified VPC. - * Rules are stale when they reference a deleted security group in the same VPC or in a peer VPC, - * or if they reference a security group in a peer VPC for which the VPC peering connection has - * been deleted.
+ * Rules are stale when they reference a deleted security group in the same VPC, peered VPC, or in separate VPCs attached to a transit gateway (with security group referencing support enabled). Rules can also be stale if they reference a security group in a peer VPC for which the VPC peering connection has + * been deleted or if they reference a security group in a VPC that has been detached from a transit gateway. * @example * Use a bare-bones client and the command you need to make an API call. * ```javascript diff --git a/clients/client-ec2/src/commands/DescribeSubnetsCommand.ts b/clients/client-ec2/src/commands/DescribeSubnetsCommand.ts index 323a25a0feda..fcc109948eef 100644 --- a/clients/client-ec2/src/commands/DescribeSubnetsCommand.ts +++ b/clients/client-ec2/src/commands/DescribeSubnetsCommand.ts @@ -15,7 +15,8 @@ import { } from "@smithy/types"; import { EC2ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../EC2Client"; -import { DescribeSubnetsRequest, DescribeSubnetsResult } from "../models/models_4"; +import { DescribeSubnetsRequest } from "../models/models_4"; +import { DescribeSubnetsResult } from "../models/models_5"; import { de_DescribeSubnetsCommand, se_DescribeSubnetsCommand } from "../protocols/Aws_ec2"; /** diff --git a/clients/client-ec2/src/commands/DescribeTransitGatewayVpcAttachmentsCommand.ts b/clients/client-ec2/src/commands/DescribeTransitGatewayVpcAttachmentsCommand.ts index 98a749575809..ab8b95d3736f 100644 --- a/clients/client-ec2/src/commands/DescribeTransitGatewayVpcAttachmentsCommand.ts +++ b/clients/client-ec2/src/commands/DescribeTransitGatewayVpcAttachmentsCommand.ts @@ -85,6 +85,7 @@ export interface DescribeTransitGatewayVpcAttachmentsCommandOutput * // CreationTime: new Date("TIMESTAMP"), * // Options: { // TransitGatewayVpcAttachmentOptions * // DnsSupport: "enable" || "disable", + * // SecurityGroupReferencingSupport: "enable" || "disable", * // Ipv6Support: "enable" || "disable", * // ApplianceModeSupport: "enable" || "disable", * // }, diff --git a/clients/client-ec2/src/commands/DescribeTransitGatewaysCommand.ts b/clients/client-ec2/src/commands/DescribeTransitGatewaysCommand.ts index a1a721d20790..f8bb629c9e48 100644 --- a/clients/client-ec2/src/commands/DescribeTransitGatewaysCommand.ts +++ b/clients/client-ec2/src/commands/DescribeTransitGatewaysCommand.ts @@ -84,6 +84,7 @@ export interface DescribeTransitGatewaysCommandOutput extends DescribeTransitGat * // PropagationDefaultRouteTableId: "STRING_VALUE", * // VpnEcmpSupport: "enable" || "disable", * // DnsSupport: "enable" || "disable", + * // SecurityGroupReferencingSupport: "enable" || "disable", * // MulticastSupport: "enable" || "disable", * // }, * // Tags: [ // TagList diff --git a/clients/client-ec2/src/commands/GetIpamPoolCidrsCommand.ts b/clients/client-ec2/src/commands/GetIpamPoolCidrsCommand.ts index cf6349353735..d1bb1eefdfb3 100644 --- a/clients/client-ec2/src/commands/GetIpamPoolCidrsCommand.ts +++ b/clients/client-ec2/src/commands/GetIpamPoolCidrsCommand.ts @@ -15,7 +15,8 @@ import { } from "@smithy/types"; import { EC2ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../EC2Client"; -import { GetIpamPoolCidrsRequest, GetIpamPoolCidrsResult } from "../models/models_5"; +import { GetIpamPoolCidrsRequest } from "../models/models_5"; +import { GetIpamPoolCidrsResult } from "../models/models_6"; import { de_GetIpamPoolCidrsCommand, se_GetIpamPoolCidrsCommand } from "../protocols/Aws_ec2"; /** diff --git a/clients/client-ec2/src/commands/ModifyTransitGatewayCommand.ts b/clients/client-ec2/src/commands/ModifyTransitGatewayCommand.ts index 9b77ddf039b5..f2dcab3b9b59 100644 --- a/clients/client-ec2/src/commands/ModifyTransitGatewayCommand.ts +++ b/clients/client-ec2/src/commands/ModifyTransitGatewayCommand.ts @@ -56,6 +56,7 @@ export interface ModifyTransitGatewayCommandOutput extends ModifyTransitGatewayR * ], * VpnEcmpSupport: "enable" || "disable", * DnsSupport: "enable" || "disable", + * SecurityGroupReferencingSupport: "enable" || "disable", * AutoAcceptSharedAttachments: "enable" || "disable", * DefaultRouteTableAssociation: "enable" || "disable", * AssociationDefaultRouteTableId: "STRING_VALUE", @@ -87,6 +88,7 @@ export interface ModifyTransitGatewayCommandOutput extends ModifyTransitGatewayR * // PropagationDefaultRouteTableId: "STRING_VALUE", * // VpnEcmpSupport: "enable" || "disable", * // DnsSupport: "enable" || "disable", + * // SecurityGroupReferencingSupport: "enable" || "disable", * // MulticastSupport: "enable" || "disable", * // }, * // Tags: [ // TagList diff --git a/clients/client-ec2/src/commands/ModifyTransitGatewayVpcAttachmentCommand.ts b/clients/client-ec2/src/commands/ModifyTransitGatewayVpcAttachmentCommand.ts index 9a0da1dc38eb..89dbce233b4b 100644 --- a/clients/client-ec2/src/commands/ModifyTransitGatewayVpcAttachmentCommand.ts +++ b/clients/client-ec2/src/commands/ModifyTransitGatewayVpcAttachmentCommand.ts @@ -59,6 +59,7 @@ export interface ModifyTransitGatewayVpcAttachmentCommandOutput * ], * Options: { // ModifyTransitGatewayVpcAttachmentRequestOptions * DnsSupport: "enable" || "disable", + * SecurityGroupReferencingSupport: "enable" || "disable", * Ipv6Support: "enable" || "disable", * ApplianceModeSupport: "enable" || "disable", * }, @@ -79,6 +80,7 @@ export interface ModifyTransitGatewayVpcAttachmentCommandOutput * // CreationTime: new Date("TIMESTAMP"), * // Options: { // TransitGatewayVpcAttachmentOptions * // DnsSupport: "enable" || "disable", + * // SecurityGroupReferencingSupport: "enable" || "disable", * // Ipv6Support: "enable" || "disable", * // ApplianceModeSupport: "enable" || "disable", * // }, diff --git a/clients/client-ec2/src/commands/RegisterTransitGatewayMulticastGroupSourcesCommand.ts b/clients/client-ec2/src/commands/RegisterTransitGatewayMulticastGroupSourcesCommand.ts index 1fe98a3be3c4..32fc1ca8e43a 100644 --- a/clients/client-ec2/src/commands/RegisterTransitGatewayMulticastGroupSourcesCommand.ts +++ b/clients/client-ec2/src/commands/RegisterTransitGatewayMulticastGroupSourcesCommand.ts @@ -15,10 +15,8 @@ import { } from "@smithy/types"; import { EC2ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../EC2Client"; -import { - RegisterTransitGatewayMulticastGroupSourcesRequest, - RegisterTransitGatewayMulticastGroupSourcesResult, -} from "../models/models_6"; +import { RegisterTransitGatewayMulticastGroupSourcesRequest } from "../models/models_6"; +import { RegisterTransitGatewayMulticastGroupSourcesResult } from "../models/models_7"; import { de_RegisterTransitGatewayMulticastGroupSourcesCommand, se_RegisterTransitGatewayMulticastGroupSourcesCommand, diff --git a/clients/client-ec2/src/commands/RejectTransitGatewayVpcAttachmentCommand.ts b/clients/client-ec2/src/commands/RejectTransitGatewayVpcAttachmentCommand.ts index 72c7e39d7aa2..1ce0e9384d42 100644 --- a/clients/client-ec2/src/commands/RejectTransitGatewayVpcAttachmentCommand.ts +++ b/clients/client-ec2/src/commands/RejectTransitGatewayVpcAttachmentCommand.ts @@ -71,6 +71,7 @@ export interface RejectTransitGatewayVpcAttachmentCommandOutput * // CreationTime: new Date("TIMESTAMP"), * // Options: { // TransitGatewayVpcAttachmentOptions * // DnsSupport: "enable" || "disable", + * // SecurityGroupReferencingSupport: "enable" || "disable", * // Ipv6Support: "enable" || "disable", * // ApplianceModeSupport: "enable" || "disable", * // }, diff --git a/clients/client-ec2/src/models/models_0.ts b/clients/client-ec2/src/models/models_0.ts index 57ab2d2c9cc5..6a56f08bbff2 100644 --- a/clients/client-ec2/src/models/models_0.ts +++ b/clients/client-ec2/src/models/models_0.ts @@ -830,6 +830,21 @@ export const Ipv6SupportValue = { */ export type Ipv6SupportValue = (typeof Ipv6SupportValue)[keyof typeof Ipv6SupportValue]; +/** + * @public + * @enum + */ +export const SecurityGroupReferencingSupportValue = { + disable: "disable", + enable: "enable", +} as const; + +/** + * @public + */ +export type SecurityGroupReferencingSupportValue = + (typeof SecurityGroupReferencingSupportValue)[keyof typeof SecurityGroupReferencingSupportValue]; + /** * @public *Describes the VPC attachment options.
@@ -841,6 +856,12 @@ export interface TransitGatewayVpcAttachmentOptions { */ DnsSupport?: DnsSupportValue; + /** + * @public + *For important information about this feature, see Create a transit gateway attachment to a VPC in the Amazon Web Services Transit Gateway Guide.
+ */ + SecurityGroupReferencingSupport?: SecurityGroupReferencingSupportValue; + /** * @public *Indicates whether IPv6 support is disabled.
@@ -6549,7 +6570,7 @@ export interface ReferencedSecurityGroup { /** * @public - *The ID of the VPC peering connection.
+ *The ID of the VPC peering connection (if applicable).
*/ VpcPeeringConnectionId?: string; } @@ -9643,39 +9664,6 @@ export interface CreateCapacityReservationFleetResult { Tags?: Tag[]; } -/** - * @public - */ -export interface CreateCarrierGatewayRequest { - /** - * @public - *The ID of the VPC to associate with the carrier gateway.
- */ - VpcId: string | undefined; - - /** - * @public - *The tags to associate with the carrier gateway.
- */ - TagSpecifications?: TagSpecification[]; - - /** - * @public - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Unique, case-sensitive identifier that you provide to ensure the idempotency of the - * request. For more information, see How to ensure - * idempotency.
- */ - ClientToken?: string; -} - /** * @internal */ diff --git a/clients/client-ec2/src/models/models_1.ts b/clients/client-ec2/src/models/models_1.ts index 1684c86706e0..8ec9c6891487 100644 --- a/clients/client-ec2/src/models/models_1.ts +++ b/clients/client-ec2/src/models/models_1.ts @@ -30,6 +30,39 @@ import { WeekDay, } from "./models_0"; +/** + * @public + */ +export interface CreateCarrierGatewayRequest { + /** + * @public + *The ID of the VPC to associate with the carrier gateway.
+ */ + VpcId: string | undefined; + + /** + * @public + *The tags to associate with the carrier gateway.
+ */ + TagSpecifications?: TagSpecification[]; + + /** + * @public + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Unique, case-sensitive identifier that you provide to ensure the idempotency of the + * request. For more information, see How to ensure + * idempotency.
+ */ + ClientToken?: string; +} + /** * @public * @enum @@ -10925,24 +10958,6 @@ export const NetworkInterfaceType = { */ export type NetworkInterfaceType = (typeof NetworkInterfaceType)[keyof typeof NetworkInterfaceType]; -/** - * @public - *Describes an IPv6 address associated with a network interface.
- */ -export interface NetworkInterfaceIpv6Address { - /** - * @public - *The IPv6 address.
- */ - Ipv6Address?: string; - - /** - * @public - *Determines if an IPv6 address associated with a network interface is the primary IPv6 address. When you enable an IPv6 GUA address to be a primary IPv6, the first IPv6 GUA will be made the primary IPv6 address until the instance is terminated or the network interface is detached. For more information, see ModifyNetworkInterfaceAttribute.
- */ - IsPrimaryIpv6?: boolean; -} - /** * @internal */ diff --git a/clients/client-ec2/src/models/models_2.ts b/clients/client-ec2/src/models/models_2.ts index 2c43fdabf178..dee940c530e0 100644 --- a/clients/client-ec2/src/models/models_2.ts +++ b/clients/client-ec2/src/models/models_2.ts @@ -12,6 +12,7 @@ import { Ipv6SupportValue, ReservedInstancesListing, RouteTableAssociationState, + SecurityGroupReferencingSupportValue, Tag, TagSpecification, TransitGatewayAttachmentResourceType, @@ -51,7 +52,6 @@ import { ManagedPrefixList, NetworkInterfaceAssociation, NetworkInterfaceAttachment, - NetworkInterfaceIpv6Address, NetworkInterfaceType, Subnet, Tenancy, @@ -59,6 +59,24 @@ import { Vpc, } from "./models_1"; +/** + * @public + *Describes an IPv6 address associated with a network interface.
+ */ +export interface NetworkInterfaceIpv6Address { + /** + * @public + *The IPv6 address.
+ */ + Ipv6Address?: string; + + /** + * @public + *Determines if an IPv6 address associated with a network interface is the primary IPv6 address. When you enable an IPv6 GUA address to be a primary IPv6, the first IPv6 GUA will be made the primary IPv6 address until the instance is terminated or the network interface is detached. For more information, see ModifyNetworkInterfaceAttribute.
+ */ + IsPrimaryIpv6?: boolean; +} + /** * @public *Describes the IPv6 prefix.
@@ -3038,6 +3056,13 @@ export interface TransitGatewayRequestOptions { */ DnsSupport?: DnsSupportValue; + /** + * @public + *Enables you to reference a security group across VPCs attached to a transit gateway (TGW). Use this option to simplify security group management and control of instance-to-instance traffic across VPCs that are connected by transit gateway. You can also use this option to migrate from VPC peering (which was the only option that supported security group referencing) to transit gateways (which now also support security group referencing). This option is disabled by default and there are no additional costs to use this feature.
+ *For important information about this feature, see Create a transit gateway in the Amazon Web Services Transit Gateway Guide.
+ */ + SecurityGroupReferencingSupport?: SecurityGroupReferencingSupportValue; + /** * @public *Indicates whether multicast is enabled on the transit gateway
@@ -3142,6 +3167,13 @@ export interface TransitGatewayOptions { */ DnsSupport?: DnsSupportValue; + /** + * @public + *Enables you to reference a security group across VPCs attached to a transit gateway (TGW). Use this option to simplify security group management and control of instance-to-instance traffic across VPCs that are connected by transit gateway. You can also use this option to migrate from VPC peering (which was the only option that supported security group referencing) to transit gateways (which now also support security group referencing). This option is disabled by default and there are no additional costs to use this feature.
+ *For important information about this feature, see Create a transit gateway in the Amazon Web Services Transit Gateway Guide.
+ */ + SecurityGroupReferencingSupport?: SecurityGroupReferencingSupportValue; + /** * @public *Indicates whether multicast is enabled on the transit gateway
@@ -4483,6 +4515,16 @@ export interface CreateTransitGatewayVpcAttachmentRequestOptions { */ DnsSupport?: DnsSupportValue; + /** + * @public + *Enables you to reference a security group across VPCs attached to a transit gateway (TGW). Use this option to simplify security group management and control of instance-to-instance traffic across VPCs that are connected by transit gateway. You can also use this option to migrate from VPC peering (which was the only option that supported security group referencing) to transit gateways (which now also support security group referencing). This option is disabled by default and there are no additional costs to use this feature.
+ *If you don't enable or disable SecurityGroupReferencingSupport in the request, the + * attachment will inherit the security group referencing support setting on the transit + * gateway.
+ *For important information about this feature, see Create a transit gateway attachment to a VPC in the Amazon Web Services Transit Gateway Guide.
+ */ + SecurityGroupReferencingSupport?: SecurityGroupReferencingSupportValue; + /** * @public *Enable or disable IPv6 support. The default is disable
.
Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ID of the NAT gateway.
- */ - NatGatewayId: string | undefined; -} - /** * @internal */ diff --git a/clients/client-ec2/src/models/models_3.ts b/clients/client-ec2/src/models/models_3.ts index be786ae79b1d..61fb7d01743d 100644 --- a/clients/client-ec2/src/models/models_3.ts +++ b/clients/client-ec2/src/models/models_3.ts @@ -86,6 +86,25 @@ import { VerifiedAccessGroup, } from "./models_2"; +/** + * @public + */ +export interface DeleteNatGatewayRequest { + /** + * @public + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The ID of the NAT gateway.
+ */ + NatGatewayId: string | undefined; +} + /** * @public */ @@ -9320,44 +9339,6 @@ export interface DescribeImportImageTasksResult { NextToken?: string; } -/** - * @public - */ -export interface DescribeImportSnapshotTasksRequest { - /** - * @public - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The filters.
- */ - Filters?: Filter[]; - - /** - * @public - *A list of import snapshot task IDs.
- */ - ImportTaskIds?: string[]; - - /** - * @public - *The maximum number of results to return in a single call. To retrieve the remaining results, make another call
- * with the returned NextToken
value.
A token that indicates the next page of results.
- */ - NextToken?: string; -} - /** * @internal */ diff --git a/clients/client-ec2/src/models/models_4.ts b/clients/client-ec2/src/models/models_4.ts index 564a16f447d8..994284ab9fa2 100644 --- a/clients/client-ec2/src/models/models_4.ts +++ b/clients/client-ec2/src/models/models_4.ts @@ -65,7 +65,6 @@ import { PrivateIpAddressSpecification, SpotInstanceType, StateReason, - Subnet, TargetCapacityUnitType, Tenancy, } from "./models_1"; @@ -98,6 +97,44 @@ import { VirtualizationType, } from "./models_3"; +/** + * @public + */ +export interface DescribeImportSnapshotTasksRequest { + /** + * @public + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The filters.
+ */ + Filters?: Filter[]; + + /** + * @public + *A list of import snapshot task IDs.
+ */ + ImportTaskIds?: string[]; + + /** + * @public + *The maximum number of results to return in a single call. To retrieve the remaining results, make another call
+ * with the returned NextToken
value.
A token that indicates the next page of results.
+ */ + NextToken?: string; +} + /** * @public *Details about the import snapshot task.
@@ -9722,9 +9759,15 @@ export interface SecurityGroupReference { /** * @public - *The ID of the VPC peering connection.
+ *The ID of the VPC peering connection (if applicable). For more information about security group referencing for peering connections, see Update your security groups to reference peer security groups in the VPC Peering Guide.
*/ VpcPeeringConnectionId?: string; + + /** + * @public + *The ID of the transit gateway (if applicable). For more information about security group referencing for transit gateways, see Create a transit gateway attachment to a VPC in the Amazon Web Services Transit Gateway Guide.
+ */ + TransitGatewayId?: string; } /** @@ -12884,23 +12927,6 @@ export interface DescribeSubnetsRequest { MaxResults?: number; } -/** - * @public - */ -export interface DescribeSubnetsResult { - /** - * @public - *Information about one or more subnets.
- */ - Subnets?: Subnet[]; - - /** - * @public - *The token to include in another request to get the next page of items. This value is null
when there are no more items to return.
Information about one or more subnets.
+ */ + Subnets?: Subnet[]; + + /** + * @public + *The token to include in another request to get the next page of items. This value is null
when there are no more items to return.
Information about the CIDRs provisioned to an IPAM pool.
- */ - IpamPoolCidrs?: IpamPoolCidr[]; - - /** - * @public - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Information about the CIDRs provisioned to an IPAM pool.
+ */ + IpamPoolCidrs?: IpamPoolCidr[]; + + /** + * @public + *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Enables you to reference a security group across VPCs attached to a transit gateway (TGW). Use this option to simplify security group management and control of instance-to-instance traffic across VPCs that are connected by transit gateway. You can also use this option to migrate from VPC peering (which was the only option that supported security group referencing) to transit gateways (which now also support security group referencing). This option is disabled by default and there are no additional costs to use this feature.
+ *For important information about this feature, see Create a transit gateway in the Amazon Web Services Transit Gateway Guide.
+ */ + SecurityGroupReferencingSupport?: SecurityGroupReferencingSupportValue; + /** * @public *Enable or disable automatic acceptance of attachment requests.
@@ -6652,6 +6677,13 @@ export interface ModifyTransitGatewayVpcAttachmentRequestOptions { */ DnsSupport?: DnsSupportValue; + /** + * @public + *Enables you to reference a security group across VPCs attached to a transit gateway (TGW). Use this option to simplify security group management and control of instance-to-instance traffic across VPCs that are connected by transit gateway. You can also use this option to migrate from VPC peering (which was the only option that supported security group referencing) to transit gateways (which now also support security group referencing). This option is disabled by default and there are no additional costs to use this feature.
+ *For important information about this feature, see Create a transit gateway attachment to a VPC in the Amazon Web Services Transit Gateway Guide.
+ */ + SecurityGroupReferencingSupport?: SecurityGroupReferencingSupportValue; + /** * @public *Enable or disable IPv6 support. The default is enable
.
Information about the transit gateway multicast group sources.
- */ - RegisteredMulticastGroupSources?: TransitGatewayMulticastRegisteredGroupSources; -} - /** * @internal */ diff --git a/clients/client-ec2/src/models/models_7.ts b/clients/client-ec2/src/models/models_7.ts index 776d131db2bd..34e3d76abf9f 100644 --- a/clients/client-ec2/src/models/models_7.ts +++ b/clients/client-ec2/src/models/models_7.ts @@ -58,7 +58,23 @@ import { SpotInstanceRequestFilterSensitiveLog, SpotPlacement, } from "./models_4"; -import { CapacityReservationSpecification, InstanceMonitoring, Status } from "./models_6"; +import { + CapacityReservationSpecification, + InstanceMonitoring, + Status, + TransitGatewayMulticastRegisteredGroupSources, +} from "./models_6"; + +/** + * @public + */ +export interface RegisterTransitGatewayMulticastGroupSourcesResult { + /** + * @public + *Information about the transit gateway multicast group sources.
+ */ + RegisteredMulticastGroupSources?: TransitGatewayMulticastRegisteredGroupSources; +} /** * @public diff --git a/clients/client-ec2/src/protocols/Aws_ec2.ts b/clients/client-ec2/src/protocols/Aws_ec2.ts index 2c0cac17f1ff..1b81cb351575 100644 --- a/clients/client-ec2/src/protocols/Aws_ec2.ts +++ b/clients/client-ec2/src/protocols/Aws_ec2.ts @@ -2261,7 +2261,6 @@ import { CreateCapacityReservationFleetResult, CreateCapacityReservationRequest, CreateCapacityReservationResult, - CreateCarrierGatewayRequest, DeviceOptions, EnaSrdSpecification, EnaSrdUdpSpecification, @@ -2369,6 +2368,7 @@ import { ConnectionTrackingSpecification, ConnectionTrackingSpecificationRequest, CpuManufacturer, + CreateCarrierGatewayRequest, CreateCarrierGatewayResult, CreateClientVpnEndpointRequest, CreateClientVpnEndpointResult, @@ -2553,7 +2553,6 @@ import { NetworkInterfaceAttachment, NetworkInterfaceCount, NetworkInterfaceCountRequest, - NetworkInterfaceIpv6Address, NewDhcpConfiguration, OnDemandOptionsRequest, PathFilter, @@ -2731,7 +2730,6 @@ import { DeleteLocalGatewayRouteTableVpcAssociationResult, DeleteManagedPrefixListRequest, DeleteManagedPrefixListResult, - DeleteNatGatewayRequest, DnsEntry, DnsOptions, DnsOptionsSpecification, @@ -2742,6 +2740,7 @@ import { Ipv6PrefixSpecification, LastError, NetworkInterface, + NetworkInterfaceIpv6Address, NetworkInterfacePermission, NetworkInterfacePermissionState, NetworkInterfacePrivateIpAddress, @@ -2843,6 +2842,7 @@ import { ClientVpnRoute, ConnectionLogResponseOptions, ConversionTask, + DeleteNatGatewayRequest, DeleteNatGatewayResult, DeleteNetworkAclEntryRequest, DeleteNetworkAclRequest, @@ -3030,7 +3030,6 @@ import { DescribeImagesResult, DescribeImportImageTasksRequest, DescribeImportImageTasksResult, - DescribeImportSnapshotTasksRequest, DestinationOptionsResponse, DirectoryServiceAuthentication, DiskImageDescription, @@ -3097,6 +3096,7 @@ import { ConnectionTrackingSpecificationResponse, CpuOptions, CreateVolumePermission, + DescribeImportSnapshotTasksRequest, DescribeImportSnapshotTasksResult, DescribeInstanceAttributeRequest, DescribeInstanceConnectEndpointsRequest, @@ -3230,7 +3230,6 @@ import { DescribeStoreImageTasksRequest, DescribeStoreImageTasksResult, DescribeSubnetsRequest, - DescribeSubnetsResult, DiskInfo, EbsInfo, EbsInstanceBlockDevice, @@ -3354,6 +3353,7 @@ import { CoipAddressUsage, DataQuery, DataResponse, + DescribeSubnetsResult, DescribeTagsRequest, DescribeTagsResult, DescribeTrafficMirrorFiltersRequest, @@ -3587,7 +3587,6 @@ import { GetIpamPoolAllocationsRequest, GetIpamPoolAllocationsResult, GetIpamPoolCidrsRequest, - GetIpamPoolCidrsResult, InstanceEventWindowDisassociationRequest, InstanceFamilyCreditSpecification, InstanceTypeInfoFromInstanceRequirements, @@ -3637,6 +3636,7 @@ import { DiskImageDetail, DnsServersOptionsModifyStructure, EbsInstanceBlockDeviceSpecification, + GetIpamPoolCidrsResult, GetIpamResourceCidrsRequest, GetIpamResourceCidrsResult, GetLaunchTemplateDataRequest, @@ -3882,7 +3882,6 @@ import { RegisterTransitGatewayMulticastGroupMembersRequest, RegisterTransitGatewayMulticastGroupMembersResult, RegisterTransitGatewayMulticastGroupSourcesRequest, - RegisterTransitGatewayMulticastGroupSourcesResult, RemoveIpamOperatingRegion, RemovePrefixListEntry, ReservationValue, @@ -3931,6 +3930,7 @@ import { LaunchTemplateSpecification, LicenseConfigurationRequest, PrivateDnsNameOptionsRequest, + RegisterTransitGatewayMulticastGroupSourcesResult, RejectTransitGatewayMulticastDomainAssociationsRequest, RejectTransitGatewayMulticastDomainAssociationsResult, RejectTransitGatewayPeeringAttachmentRequest, @@ -44191,6 +44191,9 @@ const se_CreateTransitGatewayVpcAttachmentRequestOptions = ( if (input.DnsSupport != null) { entries["DnsSupport"] = input.DnsSupport; } + if (input.SecurityGroupReferencingSupport != null) { + entries["SecurityGroupReferencingSupport"] = input.SecurityGroupReferencingSupport; + } if (input.Ipv6Support != null) { entries["Ipv6Support"] = input.Ipv6Support; } @@ -59848,6 +59851,9 @@ const se_ModifyTransitGatewayOptions = (input: ModifyTransitGatewayOptions, cont if (input.DnsSupport != null) { entries["DnsSupport"] = input.DnsSupport; } + if (input.SecurityGroupReferencingSupport != null) { + entries["SecurityGroupReferencingSupport"] = input.SecurityGroupReferencingSupport; + } if (input.AutoAcceptSharedAttachments != null) { entries["AutoAcceptSharedAttachments"] = input.AutoAcceptSharedAttachments; } @@ -59974,6 +59980,9 @@ const se_ModifyTransitGatewayVpcAttachmentRequestOptions = ( if (input.DnsSupport != null) { entries["DnsSupport"] = input.DnsSupport; } + if (input.SecurityGroupReferencingSupport != null) { + entries["SecurityGroupReferencingSupport"] = input.SecurityGroupReferencingSupport; + } if (input.Ipv6Support != null) { entries["Ipv6Support"] = input.Ipv6Support; } @@ -66497,6 +66506,9 @@ const se_TransitGatewayRequestOptions = (input: TransitGatewayRequestOptions, co if (input.DnsSupport != null) { entries["DnsSupport"] = input.DnsSupport; } + if (input.SecurityGroupReferencingSupport != null) { + entries["SecurityGroupReferencingSupport"] = input.SecurityGroupReferencingSupport; + } if (input.MulticastSupport != null) { entries["MulticastSupport"] = input.MulticastSupport; } @@ -91021,6 +91033,9 @@ const de_SecurityGroupReference = (output: any, context: __SerdeContext): Securi if (output["vpcPeeringConnectionId"] !== undefined) { contents.VpcPeeringConnectionId = __expectString(output["vpcPeeringConnectionId"]); } + if (output["transitGatewayId"] !== undefined) { + contents.TransitGatewayId = __expectString(output["transitGatewayId"]); + } return contents; }; @@ -93965,6 +93980,9 @@ const de_TransitGatewayOptions = (output: any, context: __SerdeContext): Transit if (output["dnsSupport"] !== undefined) { contents.DnsSupport = __expectString(output["dnsSupport"]); } + if (output["securityGroupReferencingSupport"] !== undefined) { + contents.SecurityGroupReferencingSupport = __expectString(output["securityGroupReferencingSupport"]); + } if (output["multicastSupport"] !== undefined) { contents.MulticastSupport = __expectString(output["multicastSupport"]); } @@ -94623,6 +94641,9 @@ const de_TransitGatewayVpcAttachmentOptions = ( if (output["dnsSupport"] !== undefined) { contents.DnsSupport = __expectString(output["dnsSupport"]); } + if (output["securityGroupReferencingSupport"] !== undefined) { + contents.SecurityGroupReferencingSupport = __expectString(output["securityGroupReferencingSupport"]); + } if (output["ipv6Support"] !== undefined) { contents.Ipv6Support = __expectString(output["ipv6Support"]); } diff --git a/codegen/sdk-codegen/aws-models/ec2.json b/codegen/sdk-codegen/aws-models/ec2.json index 1ae6172b7a7f..dce4364b7bcf 100644 --- a/codegen/sdk-codegen/aws-models/ec2.json +++ b/codegen/sdk-codegen/aws-models/ec2.json @@ -8226,7 +8226,7 @@ "target": "com.amazonaws.ec2#AuthorizeSecurityGroupEgressResult" }, "traits": { - "smithy.api#documentation": "Adds the specified outbound (egress) rules to a security group for use with a VPC.
\nAn outbound rule permits instances to send traffic to the specified IPv4 or IPv6 CIDR\n address ranges, or to the instances that are associated with the specified source\n security groups. When specifying an outbound rule for your security group in a VPC, the\n IpPermissions
must include a destination for the traffic.
You specify a protocol for each rule (for example, TCP). \n For the TCP and UDP protocols, you must also specify the destination port or port range. \n For the ICMP protocol, you must also specify the ICMP type and code. \n You can use -1 for the type or code to mean all types or all codes.
\nRule changes are propagated to affected instances as quickly as possible. However, a small delay might occur.
\nFor information about VPC security group quotas, see Amazon VPC quotas.
", + "smithy.api#documentation": "Adds the specified outbound (egress) rules to a security group for use with a VPC.
\nAn outbound rule permits instances to send traffic to the specified IPv4 or IPv6 CIDR\n address ranges, or to the instances that are associated with the specified source\n security groups. When specifying an outbound rule for your security group in a VPC, the\n IpPermissions
must include a destination for the traffic.
You specify a protocol for each rule (for example, TCP). \n For the TCP and UDP protocols, you must also specify the destination port or port range. \n For the ICMP protocol, you must also specify the ICMP type and code. \n You can use -1 for the type or code to mean all types or all codes.
\nRule changes are propagated to affected instances as quickly as possible. However, a small delay might occur.
\nFor information about VPC security group quotas, see Amazon VPC quotas.
\nIf you want to reference a security group across VPCs attached to a transit gateway using the\n security group\n referencing feature, note that you can only reference security groups\n for ingress rules. You cannot reference a security group for egress rules.
\nEnable or disable DNS support. The default is enable
.
Enables you to reference a security group across VPCs attached to a transit gateway (TGW). Use this option to simplify security group management and control of instance-to-instance traffic across VPCs that are connected by transit gateway. You can also use this option to migrate from VPC peering (which was the only option that supported security group referencing) to transit gateways (which now also support security group referencing). This option is disabled by default and there are no additional costs to use this feature.
\nIf you don't enable or disable SecurityGroupReferencingSupport in the request, the\n attachment will inherit the security group referencing support setting on the transit\n gateway.
\nFor important information about this feature, see Create a transit gateway attachment to a VPC in the Amazon Web Services Transit Gateway Guide.
" + } + }, "Ipv6Support": { "target": "com.amazonaws.ec2#Ipv6SupportValue", "traits": { @@ -36113,7 +36119,7 @@ "target": "com.amazonaws.ec2#DescribeSecurityGroupReferencesResult" }, "traits": { - "smithy.api#documentation": "Describes the VPCs on the other side of a VPC peering connection that are referencing the security groups you've specified in this request.
", + "smithy.api#documentation": "Describes the VPCs on the other side of a VPC peering connection or the VPCs attached to a transit gateway that are referencing the security groups you've specified in this request.
", "smithy.api#examples": [ { "title": "To describe security group references", @@ -37574,7 +37580,7 @@ "target": "com.amazonaws.ec2#DescribeStaleSecurityGroupsResult" }, "traits": { - "smithy.api#documentation": "Describes the stale security group rules for security groups in a specified VPC. \n Rules are stale when they reference a deleted security group in the same VPC or in a peer VPC, \n or if they reference a security group in a peer VPC for which the VPC peering connection has \n been deleted.
", + "smithy.api#documentation": "Describes the stale security group rules for security groups in a specified VPC. \n Rules are stale when they reference a deleted security group in the same VPC, peered VPC, or in separate VPCs attached to a transit gateway (with security group referencing support enabled). Rules can also be stale if they reference a security group in a peer VPC for which the VPC peering connection has \n been deleted or if they reference a security group in a VPC that has been detached from a transit gateway.
", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", @@ -75738,6 +75744,12 @@ "smithy.api#documentation": "Enable or disable DNS support.
" } }, + "SecurityGroupReferencingSupport": { + "target": "com.amazonaws.ec2#SecurityGroupReferencingSupportValue", + "traits": { + "smithy.api#documentation": "Enables you to reference a security group across VPCs attached to a transit gateway (TGW). Use this option to simplify security group management and control of instance-to-instance traffic across VPCs that are connected by transit gateway. You can also use this option to migrate from VPC peering (which was the only option that supported security group referencing) to transit gateways (which now also support security group referencing). This option is disabled by default and there are no additional costs to use this feature.
\nFor important information about this feature, see Create a transit gateway in the Amazon Web Services Transit Gateway Guide.
" + } + }, "AutoAcceptSharedAttachments": { "target": "com.amazonaws.ec2#AutoAcceptSharedAttachmentsValue", "traits": { @@ -75960,6 +75972,12 @@ "smithy.api#documentation": "Enable or disable DNS support. The default is enable
.
Enables you to reference a security group across VPCs attached to a transit gateway (TGW). Use this option to simplify security group management and control of instance-to-instance traffic across VPCs that are connected by transit gateway. You can also use this option to migrate from VPC peering (which was the only option that supported security group referencing) to transit gateways (which now also support security group referencing). This option is disabled by default and there are no additional costs to use this feature.
\nFor important information about this feature, see Create a transit gateway attachment to a VPC in the Amazon Web Services Transit Gateway Guide.
" + } + }, "Ipv6Support": { "target": "com.amazonaws.ec2#Ipv6SupportValue", "traits": { @@ -83997,7 +84015,7 @@ "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "VpcPeeringConnectionId", - "smithy.api#documentation": "The ID of the VPC peering connection.
", + "smithy.api#documentation": "The ID of the VPC peering connection (if applicable).
", "smithy.api#xmlName": "vpcPeeringConnectionId" } } @@ -91787,9 +91805,17 @@ "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "VpcPeeringConnectionId", - "smithy.api#documentation": "The ID of the VPC peering connection.
", + "smithy.api#documentation": "The ID of the VPC peering connection (if applicable). For more information about security group referencing for peering connections, see Update your security groups to reference peer security groups in the VPC Peering Guide.
", "smithy.api#xmlName": "vpcPeeringConnectionId" } + }, + "TransitGatewayId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "TransitGatewayId", + "smithy.api#documentation": "The ID of the transit gateway (if applicable). For more information about security group referencing for transit gateways, see Create a transit gateway attachment to a VPC in the Amazon Web Services Transit Gateway Guide.
", + "smithy.api#xmlName": "transitGatewayId" + } } }, "traits": { @@ -91805,6 +91831,23 @@ } } }, + "com.amazonaws.ec2#SecurityGroupReferencingSupportValue": { + "type": "enum", + "members": { + "enable": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "enable" + } + }, + "disable": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "disable" + } + } + } + }, "com.amazonaws.ec2#SecurityGroupRule": { "type": "structure", "members": { @@ -98938,6 +98981,14 @@ "smithy.api#xmlName": "dnsSupport" } }, + "SecurityGroupReferencingSupport": { + "target": "com.amazonaws.ec2#SecurityGroupReferencingSupportValue", + "traits": { + "aws.protocols#ec2QueryName": "SecurityGroupReferencingSupport", + "smithy.api#documentation": "Enables you to reference a security group across VPCs attached to a transit gateway (TGW). Use this option to simplify security group management and control of instance-to-instance traffic across VPCs that are connected by transit gateway. You can also use this option to migrate from VPC peering (which was the only option that supported security group referencing) to transit gateways (which now also support security group referencing). This option is disabled by default and there are no additional costs to use this feature.
\nFor important information about this feature, see Create a transit gateway in the Amazon Web Services Transit Gateway Guide.
", + "smithy.api#xmlName": "securityGroupReferencingSupport" + } + }, "MulticastSupport": { "target": "com.amazonaws.ec2#MulticastSupportValue", "traits": { @@ -99582,6 +99633,12 @@ "smithy.api#documentation": "Enable or disable DNS support. Enabled by default.
" } }, + "SecurityGroupReferencingSupport": { + "target": "com.amazonaws.ec2#SecurityGroupReferencingSupportValue", + "traits": { + "smithy.api#documentation": "Enables you to reference a security group across VPCs attached to a transit gateway (TGW). Use this option to simplify security group management and control of instance-to-instance traffic across VPCs that are connected by transit gateway. You can also use this option to migrate from VPC peering (which was the only option that supported security group referencing) to transit gateways (which now also support security group referencing). This option is disabled by default and there are no additional costs to use this feature.
\nFor important information about this feature, see Create a transit gateway in the Amazon Web Services Transit Gateway Guide.
" + } + }, "MulticastSupport": { "target": "com.amazonaws.ec2#MulticastSupportValue", "traits": { @@ -100360,6 +100417,14 @@ "smithy.api#xmlName": "dnsSupport" } }, + "SecurityGroupReferencingSupport": { + "target": "com.amazonaws.ec2#SecurityGroupReferencingSupportValue", + "traits": { + "aws.protocols#ec2QueryName": "SecurityGroupReferencingSupport", + "smithy.api#documentation": "For important information about this feature, see Create a transit gateway attachment to a VPC in the Amazon Web Services Transit Gateway Guide.
", + "smithy.api#xmlName": "securityGroupReferencingSupport" + } + }, "Ipv6Support": { "target": "com.amazonaws.ec2#Ipv6SupportValue", "traits": {