Try AWS Native preview for resources not in the classic version.
aws.ec2.VpcEndpoint
Explore with Pulumi AI
Try AWS Native preview for resources not in the classic version.
Provides a VPC Endpoint resource.
NOTE on VPC Endpoints and VPC Endpoint Associations: The provider provides both standalone VPC Endpoint Associations for Route Tables - (an association between a VPC endpoint and a single
route_table_id
), Security Groups - (an association between a VPC endpoint and a singlesecurity_group_id
), and Subnets - (an association between a VPC endpoint and a singlesubnet_id
) and a VPC Endpoint resource withroute_table_ids
andsubnet_ids
attributes. Do not use the same resource ID in both a VPC Endpoint resource and a VPC Endpoint Association resource. Doing so will cause a conflict of associations and will overwrite the association.
Example Usage
Basic
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const s3 = new aws.ec2.VpcEndpoint("s3", {
vpcId: main.id,
serviceName: "com.amazonaws.us-west-2.s3",
});
import pulumi
import pulumi_aws as aws
s3 = aws.ec2.VpcEndpoint("s3",
vpc_id=main["id"],
service_name="com.amazonaws.us-west-2.s3")
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := ec2.NewVpcEndpoint(ctx, "s3", &ec2.VpcEndpointArgs{
VpcId: pulumi.Any(main.Id),
ServiceName: pulumi.String("com.amazonaws.us-west-2.s3"),
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var s3 = new Aws.Ec2.VpcEndpoint("s3", new()
{
VpcId = main.Id,
ServiceName = "com.amazonaws.us-west-2.s3",
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.ec2.VpcEndpoint;
import com.pulumi.aws.ec2.VpcEndpointArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var s3 = new VpcEndpoint("s3", VpcEndpointArgs.builder()
.vpcId(main.id())
.serviceName("com.amazonaws.us-west-2.s3")
.build());
}
}
resources:
s3:
type: aws:ec2:VpcEndpoint
properties:
vpcId: ${main.id}
serviceName: com.amazonaws.us-west-2.s3
Basic w/ Tags
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const s3 = new aws.ec2.VpcEndpoint("s3", {
vpcId: main.id,
serviceName: "com.amazonaws.us-west-2.s3",
tags: {
Environment: "test",
},
});
import pulumi
import pulumi_aws as aws
s3 = aws.ec2.VpcEndpoint("s3",
vpc_id=main["id"],
service_name="com.amazonaws.us-west-2.s3",
tags={
"Environment": "test",
})
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := ec2.NewVpcEndpoint(ctx, "s3", &ec2.VpcEndpointArgs{
VpcId: pulumi.Any(main.Id),
ServiceName: pulumi.String("com.amazonaws.us-west-2.s3"),
Tags: pulumi.StringMap{
"Environment": pulumi.String("test"),
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var s3 = new Aws.Ec2.VpcEndpoint("s3", new()
{
VpcId = main.Id,
ServiceName = "com.amazonaws.us-west-2.s3",
Tags =
{
{ "Environment", "test" },
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.ec2.VpcEndpoint;
import com.pulumi.aws.ec2.VpcEndpointArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var s3 = new VpcEndpoint("s3", VpcEndpointArgs.builder()
.vpcId(main.id())
.serviceName("com.amazonaws.us-west-2.s3")
.tags(Map.of("Environment", "test"))
.build());
}
}
resources:
s3:
type: aws:ec2:VpcEndpoint
properties:
vpcId: ${main.id}
serviceName: com.amazonaws.us-west-2.s3
tags:
Environment: test
Interface Endpoint Type
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const ec2 = new aws.ec2.VpcEndpoint("ec2", {
vpcId: main.id,
serviceName: "com.amazonaws.us-west-2.ec2",
vpcEndpointType: "Interface",
securityGroupIds: [sg1.id],
privateDnsEnabled: true,
});
import pulumi
import pulumi_aws as aws
ec2 = aws.ec2.VpcEndpoint("ec2",
vpc_id=main["id"],
service_name="com.amazonaws.us-west-2.ec2",
vpc_endpoint_type="Interface",
security_group_ids=[sg1["id"]],
private_dns_enabled=True)
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := ec2.NewVpcEndpoint(ctx, "ec2", &ec2.VpcEndpointArgs{
VpcId: pulumi.Any(main.Id),
ServiceName: pulumi.String("com.amazonaws.us-west-2.ec2"),
VpcEndpointType: pulumi.String("Interface"),
SecurityGroupIds: pulumi.StringArray{
sg1.Id,
},
PrivateDnsEnabled: pulumi.Bool(true),
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var ec2 = new Aws.Ec2.VpcEndpoint("ec2", new()
{
VpcId = main.Id,
ServiceName = "com.amazonaws.us-west-2.ec2",
VpcEndpointType = "Interface",
SecurityGroupIds = new[]
{
sg1.Id,
},
PrivateDnsEnabled = true,
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.ec2.VpcEndpoint;
import com.pulumi.aws.ec2.VpcEndpointArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var ec2 = new VpcEndpoint("ec2", VpcEndpointArgs.builder()
.vpcId(main.id())
.serviceName("com.amazonaws.us-west-2.ec2")
.vpcEndpointType("Interface")
.securityGroupIds(sg1.id())
.privateDnsEnabled(true)
.build());
}
}
resources:
ec2:
type: aws:ec2:VpcEndpoint
properties:
vpcId: ${main.id}
serviceName: com.amazonaws.us-west-2.ec2
vpcEndpointType: Interface
securityGroupIds:
- ${sg1.id}
privateDnsEnabled: true
Interface Endpoint Type with User-Defined IP Address
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const ec2 = new aws.ec2.VpcEndpoint("ec2", {
vpcId: example.id,
serviceName: "com.amazonaws.us-west-2.ec2",
vpcEndpointType: "Interface",
subnetConfigurations: [
{
ipv4: "10.0.1.10",
subnetId: example1.id,
},
{
ipv4: "10.0.2.10",
subnetId: example2.id,
},
],
subnetIds: [
example1.id,
example2.id,
],
});
import pulumi
import pulumi_aws as aws
ec2 = aws.ec2.VpcEndpoint("ec2",
vpc_id=example["id"],
service_name="com.amazonaws.us-west-2.ec2",
vpc_endpoint_type="Interface",
subnet_configurations=[
{
"ipv4": "10.0.1.10",
"subnetId": example1["id"],
},
{
"ipv4": "10.0.2.10",
"subnetId": example2["id"],
},
],
subnet_ids=[
example1["id"],
example2["id"],
])
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := ec2.NewVpcEndpoint(ctx, "ec2", &ec2.VpcEndpointArgs{
VpcId: pulumi.Any(example.Id),
ServiceName: pulumi.String("com.amazonaws.us-west-2.ec2"),
VpcEndpointType: pulumi.String("Interface"),
SubnetConfigurations: ec2.VpcEndpointSubnetConfigurationArray{
&ec2.VpcEndpointSubnetConfigurationArgs{
Ipv4: pulumi.String("10.0.1.10"),
SubnetId: pulumi.Any(example1.Id),
},
&ec2.VpcEndpointSubnetConfigurationArgs{
Ipv4: pulumi.String("10.0.2.10"),
SubnetId: pulumi.Any(example2.Id),
},
},
SubnetIds: pulumi.StringArray{
example1.Id,
example2.Id,
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var ec2 = new Aws.Ec2.VpcEndpoint("ec2", new()
{
VpcId = example.Id,
ServiceName = "com.amazonaws.us-west-2.ec2",
VpcEndpointType = "Interface",
SubnetConfigurations = new[]
{
new Aws.Ec2.Inputs.VpcEndpointSubnetConfigurationArgs
{
Ipv4 = "10.0.1.10",
SubnetId = example1.Id,
},
new Aws.Ec2.Inputs.VpcEndpointSubnetConfigurationArgs
{
Ipv4 = "10.0.2.10",
SubnetId = example2.Id,
},
},
SubnetIds = new[]
{
example1.Id,
example2.Id,
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.ec2.VpcEndpoint;
import com.pulumi.aws.ec2.VpcEndpointArgs;
import com.pulumi.aws.ec2.inputs.VpcEndpointSubnetConfigurationArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var ec2 = new VpcEndpoint("ec2", VpcEndpointArgs.builder()
.vpcId(example.id())
.serviceName("com.amazonaws.us-west-2.ec2")
.vpcEndpointType("Interface")
.subnetConfigurations(
VpcEndpointSubnetConfigurationArgs.builder()
.ipv4("10.0.1.10")
.subnetId(example1.id())
.build(),
VpcEndpointSubnetConfigurationArgs.builder()
.ipv4("10.0.2.10")
.subnetId(example2.id())
.build())
.subnetIds(
example1.id(),
example2.id())
.build());
}
}
resources:
ec2:
type: aws:ec2:VpcEndpoint
properties:
vpcId: ${example.id}
serviceName: com.amazonaws.us-west-2.ec2
vpcEndpointType: Interface
subnetConfigurations:
- ipv4: 10.0.1.10
subnetId: ${example1.id}
- ipv4: 10.0.2.10
subnetId: ${example2.id}
subnetIds:
- ${example1.id}
- ${example2.id}
Gateway Load Balancer Endpoint Type
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const current = aws.getCallerIdentity({});
const example = new aws.ec2.VpcEndpointService("example", {
acceptanceRequired: false,
allowedPrincipals: [current.then(current => current.arn)],
gatewayLoadBalancerArns: [exampleAwsLb.arn],
});
const exampleVpcEndpoint = new aws.ec2.VpcEndpoint("example", {
serviceName: example.serviceName,
subnetIds: [exampleAwsSubnet.id],
vpcEndpointType: example.serviceType,
vpcId: exampleAwsVpc.id,
});
import pulumi
import pulumi_aws as aws
current = aws.get_caller_identity()
example = aws.ec2.VpcEndpointService("example",
acceptance_required=False,
allowed_principals=[current.arn],
gateway_load_balancer_arns=[example_aws_lb["arn"]])
example_vpc_endpoint = aws.ec2.VpcEndpoint("example",
service_name=example.service_name,
subnet_ids=[example_aws_subnet["id"]],
vpc_endpoint_type=example.service_type,
vpc_id=example_aws_vpc["id"])
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws"
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
current, err := aws.GetCallerIdentity(ctx, nil, nil)
if err != nil {
return err
}
example, err := ec2.NewVpcEndpointService(ctx, "example", &ec2.VpcEndpointServiceArgs{
AcceptanceRequired: pulumi.Bool(false),
AllowedPrincipals: pulumi.StringArray{
pulumi.String(current.Arn),
},
GatewayLoadBalancerArns: pulumi.StringArray{
exampleAwsLb.Arn,
},
})
if err != nil {
return err
}
_, err = ec2.NewVpcEndpoint(ctx, "example", &ec2.VpcEndpointArgs{
ServiceName: example.ServiceName,
SubnetIds: pulumi.StringArray{
exampleAwsSubnet.Id,
},
VpcEndpointType: example.ServiceType,
VpcId: pulumi.Any(exampleAwsVpc.Id),
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var current = Aws.GetCallerIdentity.Invoke();
var example = new Aws.Ec2.VpcEndpointService("example", new()
{
AcceptanceRequired = false,
AllowedPrincipals = new[]
{
current.Apply(getCallerIdentityResult => getCallerIdentityResult.Arn),
},
GatewayLoadBalancerArns = new[]
{
exampleAwsLb.Arn,
},
});
var exampleVpcEndpoint = new Aws.Ec2.VpcEndpoint("example", new()
{
ServiceName = example.ServiceName,
SubnetIds = new[]
{
exampleAwsSubnet.Id,
},
VpcEndpointType = example.ServiceType,
VpcId = exampleAwsVpc.Id,
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.AwsFunctions;
import com.pulumi.aws.inputs.GetCallerIdentityArgs;
import com.pulumi.aws.ec2.VpcEndpointService;
import com.pulumi.aws.ec2.VpcEndpointServiceArgs;
import com.pulumi.aws.ec2.VpcEndpoint;
import com.pulumi.aws.ec2.VpcEndpointArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
final var current = AwsFunctions.getCallerIdentity();
var example = new VpcEndpointService("example", VpcEndpointServiceArgs.builder()
.acceptanceRequired(false)
.allowedPrincipals(current.applyValue(getCallerIdentityResult -> getCallerIdentityResult.arn()))
.gatewayLoadBalancerArns(exampleAwsLb.arn())
.build());
var exampleVpcEndpoint = new VpcEndpoint("exampleVpcEndpoint", VpcEndpointArgs.builder()
.serviceName(example.serviceName())
.subnetIds(exampleAwsSubnet.id())
.vpcEndpointType(example.serviceType())
.vpcId(exampleAwsVpc.id())
.build());
}
}
resources:
example:
type: aws:ec2:VpcEndpointService
properties:
acceptanceRequired: false
allowedPrincipals:
- ${current.arn}
gatewayLoadBalancerArns:
- ${exampleAwsLb.arn}
exampleVpcEndpoint:
type: aws:ec2:VpcEndpoint
name: example
properties:
serviceName: ${example.serviceName}
subnetIds:
- ${exampleAwsSubnet.id}
vpcEndpointType: ${example.serviceType}
vpcId: ${exampleAwsVpc.id}
variables:
current:
fn::invoke:
Function: aws:getCallerIdentity
Arguments: {}
Create VpcEndpoint Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new VpcEndpoint(name: string, args: VpcEndpointArgs, opts?: CustomResourceOptions);
@overload
def VpcEndpoint(resource_name: str,
args: VpcEndpointArgs,
opts: Optional[ResourceOptions] = None)
@overload
def VpcEndpoint(resource_name: str,
opts: Optional[ResourceOptions] = None,
service_name: Optional[str] = None,
vpc_id: Optional[str] = None,
security_group_ids: Optional[Sequence[str]] = None,
policy: Optional[str] = None,
private_dns_enabled: Optional[bool] = None,
route_table_ids: Optional[Sequence[str]] = None,
auto_accept: Optional[bool] = None,
ip_address_type: Optional[str] = None,
subnet_configurations: Optional[Sequence[VpcEndpointSubnetConfigurationArgs]] = None,
subnet_ids: Optional[Sequence[str]] = None,
tags: Optional[Mapping[str, str]] = None,
vpc_endpoint_type: Optional[str] = None,
dns_options: Optional[VpcEndpointDnsOptionsArgs] = None)
func NewVpcEndpoint(ctx *Context, name string, args VpcEndpointArgs, opts ...ResourceOption) (*VpcEndpoint, error)
public VpcEndpoint(string name, VpcEndpointArgs args, CustomResourceOptions? opts = null)
public VpcEndpoint(String name, VpcEndpointArgs args)
public VpcEndpoint(String name, VpcEndpointArgs args, CustomResourceOptions options)
type: aws:ec2:VpcEndpoint
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args VpcEndpointArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args VpcEndpointArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args VpcEndpointArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args VpcEndpointArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args VpcEndpointArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var vpcEndpointResource = new Aws.Ec2.VpcEndpoint("vpcEndpointResource", new()
{
ServiceName = "string",
VpcId = "string",
SecurityGroupIds = new[]
{
"string",
},
Policy = "string",
PrivateDnsEnabled = false,
RouteTableIds = new[]
{
"string",
},
AutoAccept = false,
IpAddressType = "string",
SubnetConfigurations = new[]
{
new Aws.Ec2.Inputs.VpcEndpointSubnetConfigurationArgs
{
Ipv4 = "string",
Ipv6 = "string",
SubnetId = "string",
},
},
SubnetIds = new[]
{
"string",
},
Tags =
{
{ "string", "string" },
},
VpcEndpointType = "string",
DnsOptions = new Aws.Ec2.Inputs.VpcEndpointDnsOptionsArgs
{
DnsRecordIpType = "string",
PrivateDnsOnlyForInboundResolverEndpoint = false,
},
});
example, err := ec2.NewVpcEndpoint(ctx, "vpcEndpointResource", &ec2.VpcEndpointArgs{
ServiceName: pulumi.String("string"),
VpcId: pulumi.String("string"),
SecurityGroupIds: pulumi.StringArray{
pulumi.String("string"),
},
Policy: pulumi.String("string"),
PrivateDnsEnabled: pulumi.Bool(false),
RouteTableIds: pulumi.StringArray{
pulumi.String("string"),
},
AutoAccept: pulumi.Bool(false),
IpAddressType: pulumi.String("string"),
SubnetConfigurations: ec2.VpcEndpointSubnetConfigurationArray{
&ec2.VpcEndpointSubnetConfigurationArgs{
Ipv4: pulumi.String("string"),
Ipv6: pulumi.String("string"),
SubnetId: pulumi.String("string"),
},
},
SubnetIds: pulumi.StringArray{
pulumi.String("string"),
},
Tags: pulumi.StringMap{
"string": pulumi.String("string"),
},
VpcEndpointType: pulumi.String("string"),
DnsOptions: &ec2.VpcEndpointDnsOptionsArgs{
DnsRecordIpType: pulumi.String("string"),
PrivateDnsOnlyForInboundResolverEndpoint: pulumi.Bool(false),
},
})
var vpcEndpointResource = new VpcEndpoint("vpcEndpointResource", VpcEndpointArgs.builder()
.serviceName("string")
.vpcId("string")
.securityGroupIds("string")
.policy("string")
.privateDnsEnabled(false)
.routeTableIds("string")
.autoAccept(false)
.ipAddressType("string")
.subnetConfigurations(VpcEndpointSubnetConfigurationArgs.builder()
.ipv4("string")
.ipv6("string")
.subnetId("string")
.build())
.subnetIds("string")
.tags(Map.of("string", "string"))
.vpcEndpointType("string")
.dnsOptions(VpcEndpointDnsOptionsArgs.builder()
.dnsRecordIpType("string")
.privateDnsOnlyForInboundResolverEndpoint(false)
.build())
.build());
vpc_endpoint_resource = aws.ec2.VpcEndpoint("vpcEndpointResource",
service_name="string",
vpc_id="string",
security_group_ids=["string"],
policy="string",
private_dns_enabled=False,
route_table_ids=["string"],
auto_accept=False,
ip_address_type="string",
subnet_configurations=[{
"ipv4": "string",
"ipv6": "string",
"subnetId": "string",
}],
subnet_ids=["string"],
tags={
"string": "string",
},
vpc_endpoint_type="string",
dns_options={
"dnsRecordIpType": "string",
"privateDnsOnlyForInboundResolverEndpoint": False,
})
const vpcEndpointResource = new aws.ec2.VpcEndpoint("vpcEndpointResource", {
serviceName: "string",
vpcId: "string",
securityGroupIds: ["string"],
policy: "string",
privateDnsEnabled: false,
routeTableIds: ["string"],
autoAccept: false,
ipAddressType: "string",
subnetConfigurations: [{
ipv4: "string",
ipv6: "string",
subnetId: "string",
}],
subnetIds: ["string"],
tags: {
string: "string",
},
vpcEndpointType: "string",
dnsOptions: {
dnsRecordIpType: "string",
privateDnsOnlyForInboundResolverEndpoint: false,
},
});
type: aws:ec2:VpcEndpoint
properties:
autoAccept: false
dnsOptions:
dnsRecordIpType: string
privateDnsOnlyForInboundResolverEndpoint: false
ipAddressType: string
policy: string
privateDnsEnabled: false
routeTableIds:
- string
securityGroupIds:
- string
serviceName: string
subnetConfigurations:
- ipv4: string
ipv6: string
subnetId: string
subnetIds:
- string
tags:
string: string
vpcEndpointType: string
vpcId: string
VpcEndpoint Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
The VpcEndpoint resource accepts the following input properties:
- Service
Name string - The service name. For AWS services the service name is usually in the form
com.amazonaws.<region>.<service>
(the SageMaker Notebook service is an exception to this rule, the service name is in the formaws.sagemaker.<region>.notebook
). - Vpc
Id string - The ID of the VPC in which the endpoint will be used.
- Auto
Accept bool - Accept the VPC endpoint (the VPC endpoint and service need to be in the same AWS account).
- Dns
Options VpcEndpoint Dns Options - The DNS options for the endpoint. See dns_options below.
- Ip
Address stringType - The IP address type for the endpoint. Valid values are
ipv4
,dualstack
, andipv6
. - Policy string
- A policy to attach to the endpoint that controls access to the service. This is a JSON formatted string. Defaults to full access. All
Gateway
and someInterface
endpoints support policies - see the relevant AWS documentation for more details. - Private
Dns boolEnabled - Whether or not to associate a private hosted zone with the specified VPC. Applicable for endpoints of type
Interface
. Most users will want this enabled to allow services within the VPC to automatically use the endpoint. Defaults tofalse
. - Route
Table List<string>Ids - One or more route table IDs. Applicable for endpoints of type
Gateway
. - Security
Group List<string>Ids - The ID of one or more security groups to associate with the network interface. Applicable for endpoints of type
Interface
. If no security groups are specified, the VPC's default security group is associated with the endpoint. - Subnet
Configurations List<VpcEndpoint Subnet Configuration> - Subnet configuration for the endpoint, used to select specific IPv4 and/or IPv6 addresses to the endpoint. See subnet_configuration below.
- Subnet
Ids List<string> - The ID of one or more subnets in which to create a network interface for the endpoint. Applicable for endpoints of type
GatewayLoadBalancer
andInterface
. Interface type endpoints cannot function without being assigned to a subnet. - Dictionary<string, string>
- A map of tags to assign to the resource. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level. - Vpc
Endpoint stringType - The VPC endpoint type,
Gateway
,GatewayLoadBalancer
, orInterface
. Defaults toGateway
.
- Service
Name string - The service name. For AWS services the service name is usually in the form
com.amazonaws.<region>.<service>
(the SageMaker Notebook service is an exception to this rule, the service name is in the formaws.sagemaker.<region>.notebook
). - Vpc
Id string - The ID of the VPC in which the endpoint will be used.
- Auto
Accept bool - Accept the VPC endpoint (the VPC endpoint and service need to be in the same AWS account).
- Dns
Options VpcEndpoint Dns Options Args - The DNS options for the endpoint. See dns_options below.
- Ip
Address stringType - The IP address type for the endpoint. Valid values are
ipv4
,dualstack
, andipv6
. - Policy string
- A policy to attach to the endpoint that controls access to the service. This is a JSON formatted string. Defaults to full access. All
Gateway
and someInterface
endpoints support policies - see the relevant AWS documentation for more details. - Private
Dns boolEnabled - Whether or not to associate a private hosted zone with the specified VPC. Applicable for endpoints of type
Interface
. Most users will want this enabled to allow services within the VPC to automatically use the endpoint. Defaults tofalse
. - Route
Table []stringIds - One or more route table IDs. Applicable for endpoints of type
Gateway
. - Security
Group []stringIds - The ID of one or more security groups to associate with the network interface. Applicable for endpoints of type
Interface
. If no security groups are specified, the VPC's default security group is associated with the endpoint. - Subnet
Configurations []VpcEndpoint Subnet Configuration Args - Subnet configuration for the endpoint, used to select specific IPv4 and/or IPv6 addresses to the endpoint. See subnet_configuration below.
- Subnet
Ids []string - The ID of one or more subnets in which to create a network interface for the endpoint. Applicable for endpoints of type
GatewayLoadBalancer
andInterface
. Interface type endpoints cannot function without being assigned to a subnet. - map[string]string
- A map of tags to assign to the resource. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level. - Vpc
Endpoint stringType - The VPC endpoint type,
Gateway
,GatewayLoadBalancer
, orInterface
. Defaults toGateway
.
- service
Name String - The service name. For AWS services the service name is usually in the form
com.amazonaws.<region>.<service>
(the SageMaker Notebook service is an exception to this rule, the service name is in the formaws.sagemaker.<region>.notebook
). - vpc
Id String - The ID of the VPC in which the endpoint will be used.
- auto
Accept Boolean - Accept the VPC endpoint (the VPC endpoint and service need to be in the same AWS account).
- dns
Options VpcEndpoint Dns Options - The DNS options for the endpoint. See dns_options below.
- ip
Address StringType - The IP address type for the endpoint. Valid values are
ipv4
,dualstack
, andipv6
. - policy String
- A policy to attach to the endpoint that controls access to the service. This is a JSON formatted string. Defaults to full access. All
Gateway
and someInterface
endpoints support policies - see the relevant AWS documentation for more details. - private
Dns BooleanEnabled - Whether or not to associate a private hosted zone with the specified VPC. Applicable for endpoints of type
Interface
. Most users will want this enabled to allow services within the VPC to automatically use the endpoint. Defaults tofalse
. - route
Table List<String>Ids - One or more route table IDs. Applicable for endpoints of type
Gateway
. - security
Group List<String>Ids - The ID of one or more security groups to associate with the network interface. Applicable for endpoints of type
Interface
. If no security groups are specified, the VPC's default security group is associated with the endpoint. - subnet
Configurations List<VpcEndpoint Subnet Configuration> - Subnet configuration for the endpoint, used to select specific IPv4 and/or IPv6 addresses to the endpoint. See subnet_configuration below.
- subnet
Ids List<String> - The ID of one or more subnets in which to create a network interface for the endpoint. Applicable for endpoints of type
GatewayLoadBalancer
andInterface
. Interface type endpoints cannot function without being assigned to a subnet. - Map<String,String>
- A map of tags to assign to the resource. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level. - vpc
Endpoint StringType - The VPC endpoint type,
Gateway
,GatewayLoadBalancer
, orInterface
. Defaults toGateway
.
- service
Name string - The service name. For AWS services the service name is usually in the form
com.amazonaws.<region>.<service>
(the SageMaker Notebook service is an exception to this rule, the service name is in the formaws.sagemaker.<region>.notebook
). - vpc
Id string - The ID of the VPC in which the endpoint will be used.
- auto
Accept boolean - Accept the VPC endpoint (the VPC endpoint and service need to be in the same AWS account).
- dns
Options VpcEndpoint Dns Options - The DNS options for the endpoint. See dns_options below.
- ip
Address stringType - The IP address type for the endpoint. Valid values are
ipv4
,dualstack
, andipv6
. - policy string
- A policy to attach to the endpoint that controls access to the service. This is a JSON formatted string. Defaults to full access. All
Gateway
and someInterface
endpoints support policies - see the relevant AWS documentation for more details. - private
Dns booleanEnabled - Whether or not to associate a private hosted zone with the specified VPC. Applicable for endpoints of type
Interface
. Most users will want this enabled to allow services within the VPC to automatically use the endpoint. Defaults tofalse
. - route
Table string[]Ids - One or more route table IDs. Applicable for endpoints of type
Gateway
. - security
Group string[]Ids - The ID of one or more security groups to associate with the network interface. Applicable for endpoints of type
Interface
. If no security groups are specified, the VPC's default security group is associated with the endpoint. - subnet
Configurations VpcEndpoint Subnet Configuration[] - Subnet configuration for the endpoint, used to select specific IPv4 and/or IPv6 addresses to the endpoint. See subnet_configuration below.
- subnet
Ids string[] - The ID of one or more subnets in which to create a network interface for the endpoint. Applicable for endpoints of type
GatewayLoadBalancer
andInterface
. Interface type endpoints cannot function without being assigned to a subnet. - {[key: string]: string}
- A map of tags to assign to the resource. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level. - vpc
Endpoint stringType - The VPC endpoint type,
Gateway
,GatewayLoadBalancer
, orInterface
. Defaults toGateway
.
- service_
name str - The service name. For AWS services the service name is usually in the form
com.amazonaws.<region>.<service>
(the SageMaker Notebook service is an exception to this rule, the service name is in the formaws.sagemaker.<region>.notebook
). - vpc_
id str - The ID of the VPC in which the endpoint will be used.
- auto_
accept bool - Accept the VPC endpoint (the VPC endpoint and service need to be in the same AWS account).
- dns_
options VpcEndpoint Dns Options Args - The DNS options for the endpoint. See dns_options below.
- ip_
address_ strtype - The IP address type for the endpoint. Valid values are
ipv4
,dualstack
, andipv6
. - policy str
- A policy to attach to the endpoint that controls access to the service. This is a JSON formatted string. Defaults to full access. All
Gateway
and someInterface
endpoints support policies - see the relevant AWS documentation for more details. - private_
dns_ boolenabled - Whether or not to associate a private hosted zone with the specified VPC. Applicable for endpoints of type
Interface
. Most users will want this enabled to allow services within the VPC to automatically use the endpoint. Defaults tofalse
. - route_
table_ Sequence[str]ids - One or more route table IDs. Applicable for endpoints of type
Gateway
. - security_
group_ Sequence[str]ids - The ID of one or more security groups to associate with the network interface. Applicable for endpoints of type
Interface
. If no security groups are specified, the VPC's default security group is associated with the endpoint. - subnet_
configurations Sequence[VpcEndpoint Subnet Configuration Args] - Subnet configuration for the endpoint, used to select specific IPv4 and/or IPv6 addresses to the endpoint. See subnet_configuration below.
- subnet_
ids Sequence[str] - The ID of one or more subnets in which to create a network interface for the endpoint. Applicable for endpoints of type
GatewayLoadBalancer
andInterface
. Interface type endpoints cannot function without being assigned to a subnet. - Mapping[str, str]
- A map of tags to assign to the resource. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level. - vpc_
endpoint_ strtype - The VPC endpoint type,
Gateway
,GatewayLoadBalancer
, orInterface
. Defaults toGateway
.
- service
Name String - The service name. For AWS services the service name is usually in the form
com.amazonaws.<region>.<service>
(the SageMaker Notebook service is an exception to this rule, the service name is in the formaws.sagemaker.<region>.notebook
). - vpc
Id String - The ID of the VPC in which the endpoint will be used.
- auto
Accept Boolean - Accept the VPC endpoint (the VPC endpoint and service need to be in the same AWS account).
- dns
Options Property Map - The DNS options for the endpoint. See dns_options below.
- ip
Address StringType - The IP address type for the endpoint. Valid values are
ipv4
,dualstack
, andipv6
. - policy String
- A policy to attach to the endpoint that controls access to the service. This is a JSON formatted string. Defaults to full access. All
Gateway
and someInterface
endpoints support policies - see the relevant AWS documentation for more details. - private
Dns BooleanEnabled - Whether or not to associate a private hosted zone with the specified VPC. Applicable for endpoints of type
Interface
. Most users will want this enabled to allow services within the VPC to automatically use the endpoint. Defaults tofalse
. - route
Table List<String>Ids - One or more route table IDs. Applicable for endpoints of type
Gateway
. - security
Group List<String>Ids - The ID of one or more security groups to associate with the network interface. Applicable for endpoints of type
Interface
. If no security groups are specified, the VPC's default security group is associated with the endpoint. - subnet
Configurations List<Property Map> - Subnet configuration for the endpoint, used to select specific IPv4 and/or IPv6 addresses to the endpoint. See subnet_configuration below.
- subnet
Ids List<String> - The ID of one or more subnets in which to create a network interface for the endpoint. Applicable for endpoints of type
GatewayLoadBalancer
andInterface
. Interface type endpoints cannot function without being assigned to a subnet. - Map<String>
- A map of tags to assign to the resource. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level. - vpc
Endpoint StringType - The VPC endpoint type,
Gateway
,GatewayLoadBalancer
, orInterface
. Defaults toGateway
.
Outputs
All input properties are implicitly available as output properties. Additionally, the VpcEndpoint resource produces the following output properties:
- Arn string
- The Amazon Resource Name (ARN) of the VPC endpoint.
- Cidr
Blocks List<string> - The list of CIDR blocks for the exposed AWS service. Applicable for endpoints of type
Gateway
. - Dns
Entries List<VpcEndpoint Dns Entry> - The DNS entries for the VPC Endpoint. Applicable for endpoints of type
Interface
. DNS blocks are documented below. - Id string
- The provider-assigned unique ID for this managed resource.
- Network
Interface List<string>Ids - One or more network interfaces for the VPC Endpoint. Applicable for endpoints of type
Interface
. - Owner
Id string - The ID of the AWS account that owns the VPC endpoint.
- Prefix
List stringId - The prefix list ID of the exposed AWS service. Applicable for endpoints of type
Gateway
. - Requester
Managed bool - Whether or not the VPC Endpoint is being managed by its service -
true
orfalse
. - State string
- The state of the VPC endpoint.
- Dictionary<string, string>
- A map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.
- Arn string
- The Amazon Resource Name (ARN) of the VPC endpoint.
- Cidr
Blocks []string - The list of CIDR blocks for the exposed AWS service. Applicable for endpoints of type
Gateway
. - Dns
Entries []VpcEndpoint Dns Entry - The DNS entries for the VPC Endpoint. Applicable for endpoints of type
Interface
. DNS blocks are documented below. - Id string
- The provider-assigned unique ID for this managed resource.
- Network
Interface []stringIds - One or more network interfaces for the VPC Endpoint. Applicable for endpoints of type
Interface
. - Owner
Id string - The ID of the AWS account that owns the VPC endpoint.
- Prefix
List stringId - The prefix list ID of the exposed AWS service. Applicable for endpoints of type
Gateway
. - Requester
Managed bool - Whether or not the VPC Endpoint is being managed by its service -
true
orfalse
. - State string
- The state of the VPC endpoint.
- map[string]string
- A map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.
- arn String
- The Amazon Resource Name (ARN) of the VPC endpoint.
- cidr
Blocks List<String> - The list of CIDR blocks for the exposed AWS service. Applicable for endpoints of type
Gateway
. - dns
Entries List<VpcEndpoint Dns Entry> - The DNS entries for the VPC Endpoint. Applicable for endpoints of type
Interface
. DNS blocks are documented below. - id String
- The provider-assigned unique ID for this managed resource.
- network
Interface List<String>Ids - One or more network interfaces for the VPC Endpoint. Applicable for endpoints of type
Interface
. - owner
Id String - The ID of the AWS account that owns the VPC endpoint.
- prefix
List StringId - The prefix list ID of the exposed AWS service. Applicable for endpoints of type
Gateway
. - requester
Managed Boolean - Whether or not the VPC Endpoint is being managed by its service -
true
orfalse
. - state String
- The state of the VPC endpoint.
- Map<String,String>
- A map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.
- arn string
- The Amazon Resource Name (ARN) of the VPC endpoint.
- cidr
Blocks string[] - The list of CIDR blocks for the exposed AWS service. Applicable for endpoints of type
Gateway
. - dns
Entries VpcEndpoint Dns Entry[] - The DNS entries for the VPC Endpoint. Applicable for endpoints of type
Interface
. DNS blocks are documented below. - id string
- The provider-assigned unique ID for this managed resource.
- network
Interface string[]Ids - One or more network interfaces for the VPC Endpoint. Applicable for endpoints of type
Interface
. - owner
Id string - The ID of the AWS account that owns the VPC endpoint.
- prefix
List stringId - The prefix list ID of the exposed AWS service. Applicable for endpoints of type
Gateway
. - requester
Managed boolean - Whether or not the VPC Endpoint is being managed by its service -
true
orfalse
. - state string
- The state of the VPC endpoint.
- {[key: string]: string}
- A map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.
- arn str
- The Amazon Resource Name (ARN) of the VPC endpoint.
- cidr_
blocks Sequence[str] - The list of CIDR blocks for the exposed AWS service. Applicable for endpoints of type
Gateway
. - dns_
entries Sequence[VpcEndpoint Dns Entry] - The DNS entries for the VPC Endpoint. Applicable for endpoints of type
Interface
. DNS blocks are documented below. - id str
- The provider-assigned unique ID for this managed resource.
- network_
interface_ Sequence[str]ids - One or more network interfaces for the VPC Endpoint. Applicable for endpoints of type
Interface
. - owner_
id str - The ID of the AWS account that owns the VPC endpoint.
- prefix_
list_ strid - The prefix list ID of the exposed AWS service. Applicable for endpoints of type
Gateway
. - requester_
managed bool - Whether or not the VPC Endpoint is being managed by its service -
true
orfalse
. - state str
- The state of the VPC endpoint.
- Mapping[str, str]
- A map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.
- arn String
- The Amazon Resource Name (ARN) of the VPC endpoint.
- cidr
Blocks List<String> - The list of CIDR blocks for the exposed AWS service. Applicable for endpoints of type
Gateway
. - dns
Entries List<Property Map> - The DNS entries for the VPC Endpoint. Applicable for endpoints of type
Interface
. DNS blocks are documented below. - id String
- The provider-assigned unique ID for this managed resource.
- network
Interface List<String>Ids - One or more network interfaces for the VPC Endpoint. Applicable for endpoints of type
Interface
. - owner
Id String - The ID of the AWS account that owns the VPC endpoint.
- prefix
List StringId - The prefix list ID of the exposed AWS service. Applicable for endpoints of type
Gateway
. - requester
Managed Boolean - Whether or not the VPC Endpoint is being managed by its service -
true
orfalse
. - state String
- The state of the VPC endpoint.
- Map<String>
- A map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.
Look up Existing VpcEndpoint Resource
Get an existing VpcEndpoint resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: VpcEndpointState, opts?: CustomResourceOptions): VpcEndpoint
@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
arn: Optional[str] = None,
auto_accept: Optional[bool] = None,
cidr_blocks: Optional[Sequence[str]] = None,
dns_entries: Optional[Sequence[VpcEndpointDnsEntryArgs]] = None,
dns_options: Optional[VpcEndpointDnsOptionsArgs] = None,
ip_address_type: Optional[str] = None,
network_interface_ids: Optional[Sequence[str]] = None,
owner_id: Optional[str] = None,
policy: Optional[str] = None,
prefix_list_id: Optional[str] = None,
private_dns_enabled: Optional[bool] = None,
requester_managed: Optional[bool] = None,
route_table_ids: Optional[Sequence[str]] = None,
security_group_ids: Optional[Sequence[str]] = None,
service_name: Optional[str] = None,
state: Optional[str] = None,
subnet_configurations: Optional[Sequence[VpcEndpointSubnetConfigurationArgs]] = None,
subnet_ids: Optional[Sequence[str]] = None,
tags: Optional[Mapping[str, str]] = None,
tags_all: Optional[Mapping[str, str]] = None,
vpc_endpoint_type: Optional[str] = None,
vpc_id: Optional[str] = None) -> VpcEndpoint
func GetVpcEndpoint(ctx *Context, name string, id IDInput, state *VpcEndpointState, opts ...ResourceOption) (*VpcEndpoint, error)
public static VpcEndpoint Get(string name, Input<string> id, VpcEndpointState? state, CustomResourceOptions? opts = null)
public static VpcEndpoint get(String name, Output<String> id, VpcEndpointState state, CustomResourceOptions options)
Resource lookup is not supported in YAML
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Arn string
- The Amazon Resource Name (ARN) of the VPC endpoint.
- Auto
Accept bool - Accept the VPC endpoint (the VPC endpoint and service need to be in the same AWS account).
- Cidr
Blocks List<string> - The list of CIDR blocks for the exposed AWS service. Applicable for endpoints of type
Gateway
. - Dns
Entries List<VpcEndpoint Dns Entry> - The DNS entries for the VPC Endpoint. Applicable for endpoints of type
Interface
. DNS blocks are documented below. - Dns
Options VpcEndpoint Dns Options - The DNS options for the endpoint. See dns_options below.
- Ip
Address stringType - The IP address type for the endpoint. Valid values are
ipv4
,dualstack
, andipv6
. - Network
Interface List<string>Ids - One or more network interfaces for the VPC Endpoint. Applicable for endpoints of type
Interface
. - Owner
Id string - The ID of the AWS account that owns the VPC endpoint.
- Policy string
- A policy to attach to the endpoint that controls access to the service. This is a JSON formatted string. Defaults to full access. All
Gateway
and someInterface
endpoints support policies - see the relevant AWS documentation for more details. - Prefix
List stringId - The prefix list ID of the exposed AWS service. Applicable for endpoints of type
Gateway
. - Private
Dns boolEnabled - Whether or not to associate a private hosted zone with the specified VPC. Applicable for endpoints of type
Interface
. Most users will want this enabled to allow services within the VPC to automatically use the endpoint. Defaults tofalse
. - Requester
Managed bool - Whether or not the VPC Endpoint is being managed by its service -
true
orfalse
. - Route
Table List<string>Ids - One or more route table IDs. Applicable for endpoints of type
Gateway
. - Security
Group List<string>Ids - The ID of one or more security groups to associate with the network interface. Applicable for endpoints of type
Interface
. If no security groups are specified, the VPC's default security group is associated with the endpoint. - Service
Name string - The service name. For AWS services the service name is usually in the form
com.amazonaws.<region>.<service>
(the SageMaker Notebook service is an exception to this rule, the service name is in the formaws.sagemaker.<region>.notebook
). - State string
- The state of the VPC endpoint.
- Subnet
Configurations List<VpcEndpoint Subnet Configuration> - Subnet configuration for the endpoint, used to select specific IPv4 and/or IPv6 addresses to the endpoint. See subnet_configuration below.
- Subnet
Ids List<string> - The ID of one or more subnets in which to create a network interface for the endpoint. Applicable for endpoints of type
GatewayLoadBalancer
andInterface
. Interface type endpoints cannot function without being assigned to a subnet. - Dictionary<string, string>
- A map of tags to assign to the resource. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level. - Dictionary<string, string>
- A map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block. - Vpc
Endpoint stringType - The VPC endpoint type,
Gateway
,GatewayLoadBalancer
, orInterface
. Defaults toGateway
. - Vpc
Id string - The ID of the VPC in which the endpoint will be used.
- Arn string
- The Amazon Resource Name (ARN) of the VPC endpoint.
- Auto
Accept bool - Accept the VPC endpoint (the VPC endpoint and service need to be in the same AWS account).
- Cidr
Blocks []string - The list of CIDR blocks for the exposed AWS service. Applicable for endpoints of type
Gateway
. - Dns
Entries []VpcEndpoint Dns Entry Args - The DNS entries for the VPC Endpoint. Applicable for endpoints of type
Interface
. DNS blocks are documented below. - Dns
Options VpcEndpoint Dns Options Args - The DNS options for the endpoint. See dns_options below.
- Ip
Address stringType - The IP address type for the endpoint. Valid values are
ipv4
,dualstack
, andipv6
. - Network
Interface []stringIds - One or more network interfaces for the VPC Endpoint. Applicable for endpoints of type
Interface
. - Owner
Id string - The ID of the AWS account that owns the VPC endpoint.
- Policy string
- A policy to attach to the endpoint that controls access to the service. This is a JSON formatted string. Defaults to full access. All
Gateway
and someInterface
endpoints support policies - see the relevant AWS documentation for more details. - Prefix
List stringId - The prefix list ID of the exposed AWS service. Applicable for endpoints of type
Gateway
. - Private
Dns boolEnabled - Whether or not to associate a private hosted zone with the specified VPC. Applicable for endpoints of type
Interface
. Most users will want this enabled to allow services within the VPC to automatically use the endpoint. Defaults tofalse
. - Requester
Managed bool - Whether or not the VPC Endpoint is being managed by its service -
true
orfalse
. - Route
Table []stringIds - One or more route table IDs. Applicable for endpoints of type
Gateway
. - Security
Group []stringIds - The ID of one or more security groups to associate with the network interface. Applicable for endpoints of type
Interface
. If no security groups are specified, the VPC's default security group is associated with the endpoint. - Service
Name string - The service name. For AWS services the service name is usually in the form
com.amazonaws.<region>.<service>
(the SageMaker Notebook service is an exception to this rule, the service name is in the formaws.sagemaker.<region>.notebook
). - State string
- The state of the VPC endpoint.
- Subnet
Configurations []VpcEndpoint Subnet Configuration Args - Subnet configuration for the endpoint, used to select specific IPv4 and/or IPv6 addresses to the endpoint. See subnet_configuration below.
- Subnet
Ids []string - The ID of one or more subnets in which to create a network interface for the endpoint. Applicable for endpoints of type
GatewayLoadBalancer
andInterface
. Interface type endpoints cannot function without being assigned to a subnet. - map[string]string
- A map of tags to assign to the resource. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level. - map[string]string
- A map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block. - Vpc
Endpoint stringType - The VPC endpoint type,
Gateway
,GatewayLoadBalancer
, orInterface
. Defaults toGateway
. - Vpc
Id string - The ID of the VPC in which the endpoint will be used.
- arn String
- The Amazon Resource Name (ARN) of the VPC endpoint.
- auto
Accept Boolean - Accept the VPC endpoint (the VPC endpoint and service need to be in the same AWS account).
- cidr
Blocks List<String> - The list of CIDR blocks for the exposed AWS service. Applicable for endpoints of type
Gateway
. - dns
Entries List<VpcEndpoint Dns Entry> - The DNS entries for the VPC Endpoint. Applicable for endpoints of type
Interface
. DNS blocks are documented below. - dns
Options VpcEndpoint Dns Options - The DNS options for the endpoint. See dns_options below.
- ip
Address StringType - The IP address type for the endpoint. Valid values are
ipv4
,dualstack
, andipv6
. - network
Interface List<String>Ids - One or more network interfaces for the VPC Endpoint. Applicable for endpoints of type
Interface
. - owner
Id String - The ID of the AWS account that owns the VPC endpoint.
- policy String
- A policy to attach to the endpoint that controls access to the service. This is a JSON formatted string. Defaults to full access. All
Gateway
and someInterface
endpoints support policies - see the relevant AWS documentation for more details. - prefix
List StringId - The prefix list ID of the exposed AWS service. Applicable for endpoints of type
Gateway
. - private
Dns BooleanEnabled - Whether or not to associate a private hosted zone with the specified VPC. Applicable for endpoints of type
Interface
. Most users will want this enabled to allow services within the VPC to automatically use the endpoint. Defaults tofalse
. - requester
Managed Boolean - Whether or not the VPC Endpoint is being managed by its service -
true
orfalse
. - route
Table List<String>Ids - One or more route table IDs. Applicable for endpoints of type
Gateway
. - security
Group List<String>Ids - The ID of one or more security groups to associate with the network interface. Applicable for endpoints of type
Interface
. If no security groups are specified, the VPC's default security group is associated with the endpoint. - service
Name String - The service name. For AWS services the service name is usually in the form
com.amazonaws.<region>.<service>
(the SageMaker Notebook service is an exception to this rule, the service name is in the formaws.sagemaker.<region>.notebook
). - state String
- The state of the VPC endpoint.
- subnet
Configurations List<VpcEndpoint Subnet Configuration> - Subnet configuration for the endpoint, used to select specific IPv4 and/or IPv6 addresses to the endpoint. See subnet_configuration below.
- subnet
Ids List<String> - The ID of one or more subnets in which to create a network interface for the endpoint. Applicable for endpoints of type
GatewayLoadBalancer
andInterface
. Interface type endpoints cannot function without being assigned to a subnet. - Map<String,String>
- A map of tags to assign to the resource. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level. - Map<String,String>
- A map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block. - vpc
Endpoint StringType - The VPC endpoint type,
Gateway
,GatewayLoadBalancer
, orInterface
. Defaults toGateway
. - vpc
Id String - The ID of the VPC in which the endpoint will be used.
- arn string
- The Amazon Resource Name (ARN) of the VPC endpoint.
- auto
Accept boolean - Accept the VPC endpoint (the VPC endpoint and service need to be in the same AWS account).
- cidr
Blocks string[] - The list of CIDR blocks for the exposed AWS service. Applicable for endpoints of type
Gateway
. - dns
Entries VpcEndpoint Dns Entry[] - The DNS entries for the VPC Endpoint. Applicable for endpoints of type
Interface
. DNS blocks are documented below. - dns
Options VpcEndpoint Dns Options - The DNS options for the endpoint. See dns_options below.
- ip
Address stringType - The IP address type for the endpoint. Valid values are
ipv4
,dualstack
, andipv6
. - network
Interface string[]Ids - One or more network interfaces for the VPC Endpoint. Applicable for endpoints of type
Interface
. - owner
Id string - The ID of the AWS account that owns the VPC endpoint.
- policy string
- A policy to attach to the endpoint that controls access to the service. This is a JSON formatted string. Defaults to full access. All
Gateway
and someInterface
endpoints support policies - see the relevant AWS documentation for more details. - prefix
List stringId - The prefix list ID of the exposed AWS service. Applicable for endpoints of type
Gateway
. - private
Dns booleanEnabled - Whether or not to associate a private hosted zone with the specified VPC. Applicable for endpoints of type
Interface
. Most users will want this enabled to allow services within the VPC to automatically use the endpoint. Defaults tofalse
. - requester
Managed boolean - Whether or not the VPC Endpoint is being managed by its service -
true
orfalse
. - route
Table string[]Ids - One or more route table IDs. Applicable for endpoints of type
Gateway
. - security
Group string[]Ids - The ID of one or more security groups to associate with the network interface. Applicable for endpoints of type
Interface
. If no security groups are specified, the VPC's default security group is associated with the endpoint. - service
Name string - The service name. For AWS services the service name is usually in the form
com.amazonaws.<region>.<service>
(the SageMaker Notebook service is an exception to this rule, the service name is in the formaws.sagemaker.<region>.notebook
). - state string
- The state of the VPC endpoint.
- subnet
Configurations VpcEndpoint Subnet Configuration[] - Subnet configuration for the endpoint, used to select specific IPv4 and/or IPv6 addresses to the endpoint. See subnet_configuration below.
- subnet
Ids string[] - The ID of one or more subnets in which to create a network interface for the endpoint. Applicable for endpoints of type
GatewayLoadBalancer
andInterface
. Interface type endpoints cannot function without being assigned to a subnet. - {[key: string]: string}
- A map of tags to assign to the resource. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level. - {[key: string]: string}
- A map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block. - vpc
Endpoint stringType - The VPC endpoint type,
Gateway
,GatewayLoadBalancer
, orInterface
. Defaults toGateway
. - vpc
Id string - The ID of the VPC in which the endpoint will be used.
- arn str
- The Amazon Resource Name (ARN) of the VPC endpoint.
- auto_
accept bool - Accept the VPC endpoint (the VPC endpoint and service need to be in the same AWS account).
- cidr_
blocks Sequence[str] - The list of CIDR blocks for the exposed AWS service. Applicable for endpoints of type
Gateway
. - dns_
entries Sequence[VpcEndpoint Dns Entry Args] - The DNS entries for the VPC Endpoint. Applicable for endpoints of type
Interface
. DNS blocks are documented below. - dns_
options VpcEndpoint Dns Options Args - The DNS options for the endpoint. See dns_options below.
- ip_
address_ strtype - The IP address type for the endpoint. Valid values are
ipv4
,dualstack
, andipv6
. - network_
interface_ Sequence[str]ids - One or more network interfaces for the VPC Endpoint. Applicable for endpoints of type
Interface
. - owner_
id str - The ID of the AWS account that owns the VPC endpoint.
- policy str
- A policy to attach to the endpoint that controls access to the service. This is a JSON formatted string. Defaults to full access. All
Gateway
and someInterface
endpoints support policies - see the relevant AWS documentation for more details. - prefix_
list_ strid - The prefix list ID of the exposed AWS service. Applicable for endpoints of type
Gateway
. - private_
dns_ boolenabled - Whether or not to associate a private hosted zone with the specified VPC. Applicable for endpoints of type
Interface
. Most users will want this enabled to allow services within the VPC to automatically use the endpoint. Defaults tofalse
. - requester_
managed bool - Whether or not the VPC Endpoint is being managed by its service -
true
orfalse
. - route_
table_ Sequence[str]ids - One or more route table IDs. Applicable for endpoints of type
Gateway
. - security_
group_ Sequence[str]ids - The ID of one or more security groups to associate with the network interface. Applicable for endpoints of type
Interface
. If no security groups are specified, the VPC's default security group is associated with the endpoint. - service_
name str - The service name. For AWS services the service name is usually in the form
com.amazonaws.<region>.<service>
(the SageMaker Notebook service is an exception to this rule, the service name is in the formaws.sagemaker.<region>.notebook
). - state str
- The state of the VPC endpoint.
- subnet_
configurations Sequence[VpcEndpoint Subnet Configuration Args] - Subnet configuration for the endpoint, used to select specific IPv4 and/or IPv6 addresses to the endpoint. See subnet_configuration below.
- subnet_
ids Sequence[str] - The ID of one or more subnets in which to create a network interface for the endpoint. Applicable for endpoints of type
GatewayLoadBalancer
andInterface
. Interface type endpoints cannot function without being assigned to a subnet. - Mapping[str, str]
- A map of tags to assign to the resource. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level. - Mapping[str, str]
- A map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block. - vpc_
endpoint_ strtype - The VPC endpoint type,
Gateway
,GatewayLoadBalancer
, orInterface
. Defaults toGateway
. - vpc_
id str - The ID of the VPC in which the endpoint will be used.
- arn String
- The Amazon Resource Name (ARN) of the VPC endpoint.
- auto
Accept Boolean - Accept the VPC endpoint (the VPC endpoint and service need to be in the same AWS account).
- cidr
Blocks List<String> - The list of CIDR blocks for the exposed AWS service. Applicable for endpoints of type
Gateway
. - dns
Entries List<Property Map> - The DNS entries for the VPC Endpoint. Applicable for endpoints of type
Interface
. DNS blocks are documented below. - dns
Options Property Map - The DNS options for the endpoint. See dns_options below.
- ip
Address StringType - The IP address type for the endpoint. Valid values are
ipv4
,dualstack
, andipv6
. - network
Interface List<String>Ids - One or more network interfaces for the VPC Endpoint. Applicable for endpoints of type
Interface
. - owner
Id String - The ID of the AWS account that owns the VPC endpoint.
- policy String
- A policy to attach to the endpoint that controls access to the service. This is a JSON formatted string. Defaults to full access. All
Gateway
and someInterface
endpoints support policies - see the relevant AWS documentation for more details. - prefix
List StringId - The prefix list ID of the exposed AWS service. Applicable for endpoints of type
Gateway
. - private
Dns BooleanEnabled - Whether or not to associate a private hosted zone with the specified VPC. Applicable for endpoints of type
Interface
. Most users will want this enabled to allow services within the VPC to automatically use the endpoint. Defaults tofalse
. - requester
Managed Boolean - Whether or not the VPC Endpoint is being managed by its service -
true
orfalse
. - route
Table List<String>Ids - One or more route table IDs. Applicable for endpoints of type
Gateway
. - security
Group List<String>Ids - The ID of one or more security groups to associate with the network interface. Applicable for endpoints of type
Interface
. If no security groups are specified, the VPC's default security group is associated with the endpoint. - service
Name String - The service name. For AWS services the service name is usually in the form
com.amazonaws.<region>.<service>
(the SageMaker Notebook service is an exception to this rule, the service name is in the formaws.sagemaker.<region>.notebook
). - state String
- The state of the VPC endpoint.
- subnet
Configurations List<Property Map> - Subnet configuration for the endpoint, used to select specific IPv4 and/or IPv6 addresses to the endpoint. See subnet_configuration below.
- subnet
Ids List<String> - The ID of one or more subnets in which to create a network interface for the endpoint. Applicable for endpoints of type
GatewayLoadBalancer
andInterface
. Interface type endpoints cannot function without being assigned to a subnet. - Map<String>
- A map of tags to assign to the resource. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level. - Map<String>
- A map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block. - vpc
Endpoint StringType - The VPC endpoint type,
Gateway
,GatewayLoadBalancer
, orInterface
. Defaults toGateway
. - vpc
Id String - The ID of the VPC in which the endpoint will be used.
Supporting Types
VpcEndpointDnsEntry, VpcEndpointDnsEntryArgs
- Dns
Name string - The DNS name.
- Hosted
Zone stringId - The ID of the private hosted zone.
- Dns
Name string - The DNS name.
- Hosted
Zone stringId - The ID of the private hosted zone.
- dns
Name String - The DNS name.
- hosted
Zone StringId - The ID of the private hosted zone.
- dns
Name string - The DNS name.
- hosted
Zone stringId - The ID of the private hosted zone.
- dns_
name str - The DNS name.
- hosted_
zone_ strid - The ID of the private hosted zone.
- dns
Name String - The DNS name.
- hosted
Zone StringId - The ID of the private hosted zone.
VpcEndpointDnsOptions, VpcEndpointDnsOptionsArgs
- Dns
Record stringIp Type - The DNS records created for the endpoint. Valid values are
ipv4
,dualstack
,service-defined
, andipv6
. - Private
Dns boolOnly For Inbound Resolver Endpoint - Indicates whether to enable private DNS only for inbound endpoints. This option is available only for services that support both gateway and interface endpoints. It routes traffic that originates from the VPC to the gateway endpoint and traffic that originates from on-premises to the interface endpoint. Default is
false
. Can only be specified if private_dns_enabled istrue
.
- Dns
Record stringIp Type - The DNS records created for the endpoint. Valid values are
ipv4
,dualstack
,service-defined
, andipv6
. - Private
Dns boolOnly For Inbound Resolver Endpoint - Indicates whether to enable private DNS only for inbound endpoints. This option is available only for services that support both gateway and interface endpoints. It routes traffic that originates from the VPC to the gateway endpoint and traffic that originates from on-premises to the interface endpoint. Default is
false
. Can only be specified if private_dns_enabled istrue
.
- dns
Record StringIp Type - The DNS records created for the endpoint. Valid values are
ipv4
,dualstack
,service-defined
, andipv6
. - private
Dns BooleanOnly For Inbound Resolver Endpoint - Indicates whether to enable private DNS only for inbound endpoints. This option is available only for services that support both gateway and interface endpoints. It routes traffic that originates from the VPC to the gateway endpoint and traffic that originates from on-premises to the interface endpoint. Default is
false
. Can only be specified if private_dns_enabled istrue
.
- dns
Record stringIp Type - The DNS records created for the endpoint. Valid values are
ipv4
,dualstack
,service-defined
, andipv6
. - private
Dns booleanOnly For Inbound Resolver Endpoint - Indicates whether to enable private DNS only for inbound endpoints. This option is available only for services that support both gateway and interface endpoints. It routes traffic that originates from the VPC to the gateway endpoint and traffic that originates from on-premises to the interface endpoint. Default is
false
. Can only be specified if private_dns_enabled istrue
.
- dns_
record_ strip_ type - The DNS records created for the endpoint. Valid values are
ipv4
,dualstack
,service-defined
, andipv6
. - private_
dns_ boolonly_ for_ inbound_ resolver_ endpoint - Indicates whether to enable private DNS only for inbound endpoints. This option is available only for services that support both gateway and interface endpoints. It routes traffic that originates from the VPC to the gateway endpoint and traffic that originates from on-premises to the interface endpoint. Default is
false
. Can only be specified if private_dns_enabled istrue
.
- dns
Record StringIp Type - The DNS records created for the endpoint. Valid values are
ipv4
,dualstack
,service-defined
, andipv6
. - private
Dns BooleanOnly For Inbound Resolver Endpoint - Indicates whether to enable private DNS only for inbound endpoints. This option is available only for services that support both gateway and interface endpoints. It routes traffic that originates from the VPC to the gateway endpoint and traffic that originates from on-premises to the interface endpoint. Default is
false
. Can only be specified if private_dns_enabled istrue
.
VpcEndpointSubnetConfiguration, VpcEndpointSubnetConfigurationArgs
- Ipv4 string
- The IPv4 address to assign to the endpoint network interface in the subnet. You must provide an IPv4 address if the VPC endpoint supports IPv4.
- Ipv6 string
- The IPv6 address to assign to the endpoint network interface in the subnet. You must provide an IPv6 address if the VPC endpoint supports IPv6.
- Subnet
Id string
- Ipv4 string
- The IPv4 address to assign to the endpoint network interface in the subnet. You must provide an IPv4 address if the VPC endpoint supports IPv4.
- Ipv6 string
- The IPv6 address to assign to the endpoint network interface in the subnet. You must provide an IPv6 address if the VPC endpoint supports IPv6.
- Subnet
Id string
- ipv4 String
- The IPv4 address to assign to the endpoint network interface in the subnet. You must provide an IPv4 address if the VPC endpoint supports IPv4.
- ipv6 String
- The IPv6 address to assign to the endpoint network interface in the subnet. You must provide an IPv6 address if the VPC endpoint supports IPv6.
- subnet
Id String
- ipv4 string
- The IPv4 address to assign to the endpoint network interface in the subnet. You must provide an IPv4 address if the VPC endpoint supports IPv4.
- ipv6 string
- The IPv6 address to assign to the endpoint network interface in the subnet. You must provide an IPv6 address if the VPC endpoint supports IPv6.
- subnet
Id string
- ipv4 str
- The IPv4 address to assign to the endpoint network interface in the subnet. You must provide an IPv4 address if the VPC endpoint supports IPv4.
- ipv6 str
- The IPv6 address to assign to the endpoint network interface in the subnet. You must provide an IPv6 address if the VPC endpoint supports IPv6.
- subnet_
id str
- ipv4 String
- The IPv4 address to assign to the endpoint network interface in the subnet. You must provide an IPv4 address if the VPC endpoint supports IPv4.
- ipv6 String
- The IPv6 address to assign to the endpoint network interface in the subnet. You must provide an IPv6 address if the VPC endpoint supports IPv6.
- subnet
Id String
Import
Using pulumi import
, import VPC Endpoints using the VPC endpoint id
. For example:
$ pulumi import aws:ec2/vpcEndpoint:VpcEndpoint endpoint1 vpce-3ecf2a57
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- AWS Classic pulumi/pulumi-aws
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
aws
Terraform Provider.
Try AWS Native preview for resources not in the classic version.