Class CfnVPCEndpoint
Specifies a VPC endpoint.
Inherited Members
Namespace: Amazon.CDK.AWS.EC2
Assembly: Amazon.CDK.Lib.dll
Syntax (csharp)
public class CfnVPCEndpoint : CfnResource, IInspectable, ITaggableV2
Syntax (vb)
Public Class CfnVPCEndpoint
Inherits CfnResource
Implements IInspectable, ITaggableV2
Remarks
A VPC endpoint provides a private connection between your VPC and an endpoint service. You can use an endpoint service provided by AWS , an AWS Marketplace Partner, or another AWS accounts in your organization. For more information, see the AWS PrivateLink User Guide .
An endpoint of type Interface
establishes connections between the subnets in your VPC and an AWS service , your own service, or a service hosted by another AWS account . With an interface VPC endpoint, you specify the subnets in which to create the endpoint and the security groups to associate with the endpoint network interfaces.
An endpoint of type gateway
serves as a target for a route in your route table for traffic destined for Amazon S3 or DynamoDB . You can specify an endpoint policy for the endpoint, which controls access to the service from your VPC. You can also specify the VPC route tables that use the endpoint. For more information about connectivity to Amazon S3 , see Why can't I connect to an S3 bucket using a gateway VPC endpoint?
An endpoint of type GatewayLoadBalancer
provides private connectivity between your VPC and virtual appliances from a service provider.
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpoint.html
CloudformationResource: AWS::EC2::VPCEndpoint
ExampleMetadata: fixture=_generated
Examples
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
using Amazon.CDK.AWS.EC2;
var policyDocument;
var cfnVPCEndpoint = new CfnVPCEndpoint(this, "MyCfnVPCEndpoint", new CfnVPCEndpointProps {
VpcId = "vpcId",
// the properties below are optional
DnsOptions = new DnsOptionsSpecificationProperty {
DnsRecordIpType = "dnsRecordIpType",
PrivateDnsOnlyForInboundResolverEndpoint = "privateDnsOnlyForInboundResolverEndpoint"
},
IpAddressType = "ipAddressType",
PolicyDocument = policyDocument,
PrivateDnsEnabled = false,
ResourceConfigurationArn = "resourceConfigurationArn",
RouteTableIds = new [] { "routeTableIds" },
SecurityGroupIds = new [] { "securityGroupIds" },
ServiceName = "serviceName",
ServiceNetworkArn = "serviceNetworkArn",
SubnetIds = new [] { "subnetIds" },
Tags = new [] { new CfnTag {
Key = "key",
Value = "value"
} },
VpcEndpointType = "vpcEndpointType"
});
Synopsis
Constructors
CfnVPCEndpoint(ByRefValue) | Used by jsii to construct an instance of this class from a Javascript-owned object reference |
CfnVPCEndpoint(DeputyBase.DeputyProps) | Used by jsii to construct an instance of this class from DeputyProps |
CfnVPCEndpoint(Construct, String, ICfnVPCEndpointProps) |
Properties
AttrCreationTimestamp | The date and time the VPC endpoint was created. |
AttrDnsEntries | (Interface endpoints) The DNS entries for the endpoint. |
AttrId | The ID of the VPC endpoint. |
AttrNetworkInterfaceIds | (Interface endpoints) The network interface IDs. |
CdkTagManager | Tag Manager which manages the tags for this resource. |
CFN_RESOURCE_TYPE_NAME | The CloudFormation resource type name for this resource class. |
CfnProperties | |
DnsOptions | Describes the DNS options for an endpoint. |
IpAddressType | The supported IP address types. |
PolicyDocument | An endpoint policy, which controls access to the service from the VPC. |
PrivateDnsEnabled | Indicate whether to associate a private hosted zone with the specified VPC. |
ResourceConfigurationArn | The Amazon Resource Name (ARN) of the resource configuration. |
RouteTableIds | The IDs of the route tables. |
SecurityGroupIds | The IDs of the security groups to associate with the endpoint network interfaces. |
ServiceName | The name of the endpoint service. |
ServiceNetworkArn | The Amazon Resource Name (ARN) of the service network. |
SubnetIds | The IDs of the subnets in which to create endpoint network interfaces. |
Tags | The tags to associate with the endpoint. |
VpcEndpointType | The type of endpoint. |
VpcId | The ID of the VPC. |
Methods
Inspect(TreeInspector) | Examines the CloudFormation resource and discloses attributes. |
RenderProperties(IDictionary<String, Object>) |
Constructors
CfnVPCEndpoint(ByRefValue)
Used by jsii to construct an instance of this class from a Javascript-owned object reference
protected CfnVPCEndpoint(ByRefValue reference)
Parameters
- reference Amazon.JSII.Runtime.Deputy.ByRefValue
The Javascript-owned object reference
CfnVPCEndpoint(DeputyBase.DeputyProps)
Used by jsii to construct an instance of this class from DeputyProps
protected CfnVPCEndpoint(DeputyBase.DeputyProps props)
Parameters
- props Amazon.JSII.Runtime.Deputy.DeputyBase.DeputyProps
The deputy props
CfnVPCEndpoint(Construct, String, ICfnVPCEndpointProps)
public CfnVPCEndpoint(Construct scope, string id, ICfnVPCEndpointProps props)
Parameters
- scope Constructs.Construct
Scope in which this resource is defined.
- id System.String
Construct identifier for this resource (unique in its scope).
- props ICfnVPCEndpointProps
Resource properties.
Properties
AttrCreationTimestamp
The date and time the VPC endpoint was created.
public virtual string AttrCreationTimestamp { get; }
Property Value
System.String
Remarks
For example: Fri Sep 28 23:34:36 UTC 2018.
CloudformationAttribute: CreationTimestamp
AttrDnsEntries
(Interface endpoints) The DNS entries for the endpoint.
public virtual string[] AttrDnsEntries { get; }
Property Value
System.String[]
Remarks
Each entry is a combination of the hosted zone ID and the DNS name. The entries are ordered as follows: regional public DNS, zonal public DNS, private DNS, and wildcard DNS. This order is not enforced for AWS Marketplace services.
The following is an example. In the first entry, the hosted zone ID is Z1HUB23UULQXV and the DNS name is vpce-01abc23456de78f9g-12abccd3.ec2.us-east-1.vpce.amazonaws.com.
["Z1HUB23UULQXV:vpce-01abc23456de78f9g-12abccd3.ec2.us-east-1.vpce.amazonaws.com", "Z1HUB23UULQXV:vpce-01abc23456de78f9g-12abccd3-us-east-1a.ec2.us-east-1.vpce.amazonaws.com", "Z1C12344VYDITB0:ec2.us-east-1.amazonaws.com"]
If you update the PrivateDnsEnabled
or SubnetIds
properties, the DNS entries in the list will change.
CloudformationAttribute: DnsEntries
AttrId
The ID of the VPC endpoint.
public virtual string AttrId { get; }
Property Value
System.String
Remarks
CloudformationAttribute: Id
AttrNetworkInterfaceIds
(Interface endpoints) The network interface IDs.
public virtual string[] AttrNetworkInterfaceIds { get; }
Property Value
System.String[]
Remarks
If you update the PrivateDnsEnabled
or SubnetIds
properties, the items in this list might change.
CloudformationAttribute: NetworkInterfaceIds
CdkTagManager
Tag Manager which manages the tags for this resource.
public virtual TagManager CdkTagManager { get; }
Property Value
CFN_RESOURCE_TYPE_NAME
The CloudFormation resource type name for this resource class.
public static string CFN_RESOURCE_TYPE_NAME { get; }
Property Value
System.String
CfnProperties
protected override IDictionary<string, object> CfnProperties { get; }
Property Value
System.Collections.Generic.IDictionary<System.String, System.Object>
Overrides
DnsOptions
Describes the DNS options for an endpoint.
public virtual object DnsOptions { get; set; }
Property Value
System.Object
IpAddressType
The supported IP address types.
public virtual string IpAddressType { get; set; }
Property Value
System.String
PolicyDocument
An endpoint policy, which controls access to the service from the VPC.
public virtual object PolicyDocument { get; set; }
Property Value
System.Object
PrivateDnsEnabled
Indicate whether to associate a private hosted zone with the specified VPC.
public virtual object PrivateDnsEnabled { get; set; }
Property Value
System.Object
ResourceConfigurationArn
The Amazon Resource Name (ARN) of the resource configuration.
public virtual string ResourceConfigurationArn { get; set; }
Property Value
System.String
RouteTableIds
The IDs of the route tables.
public virtual string[] RouteTableIds { get; set; }
Property Value
System.String[]
SecurityGroupIds
The IDs of the security groups to associate with the endpoint network interfaces.
public virtual string[] SecurityGroupIds { get; set; }
Property Value
System.String[]
ServiceName
The name of the endpoint service.
public virtual string ServiceName { get; set; }
Property Value
System.String
ServiceNetworkArn
The Amazon Resource Name (ARN) of the service network.
public virtual string ServiceNetworkArn { get; set; }
Property Value
System.String
SubnetIds
The IDs of the subnets in which to create endpoint network interfaces.
public virtual string[] SubnetIds { get; set; }
Property Value
System.String[]
Tags
The tags to associate with the endpoint.
public virtual ICfnTag[] Tags { get; set; }
Property Value
ICfnTag[]
VpcEndpointType
The type of endpoint.
public virtual string VpcEndpointType { get; set; }
Property Value
System.String
VpcId
The ID of the VPC.
public virtual string VpcId { get; set; }
Property Value
System.String
Methods
Inspect(TreeInspector)
Examines the CloudFormation resource and discloses attributes.
public virtual void Inspect(TreeInspector inspector)
Parameters
- inspector TreeInspector
tree inspector to collect and process attributes.
RenderProperties(IDictionary<String, Object>)
protected override IDictionary<string, object> RenderProperties(IDictionary<string, object> props)
Parameters
- props System.Collections.Generic.IDictionary<System.String, System.Object>
Returns
System.Collections.Generic.IDictionary<System.String, System.Object>