Copyright | (c) 2013-2023 Brendan Hay |
---|---|
License | Mozilla Public License, v. 2.0. |
Maintainer | Brendan Hay |
Stability | auto-generated |
Portability | non-portable (GHC extensions) |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
Creates a VPC endpoint for a specified service. An endpoint enables you to create a private connection between your VPC and the service. The service may be provided by Amazon Web Services, an Amazon Web Services Marketplace Partner, or another Amazon Web Services account. For more information, see the Amazon Web Services PrivateLink Guide.
Synopsis
- data CreateVpcEndpoint = CreateVpcEndpoint' {
- clientToken :: Maybe Text
- dnsOptions :: Maybe DnsOptionsSpecification
- dryRun :: Maybe Bool
- ipAddressType :: Maybe IpAddressType
- policyDocument :: Maybe Text
- privateDnsEnabled :: Maybe Bool
- routeTableIds :: Maybe [Text]
- securityGroupIds :: Maybe [Text]
- subnetIds :: Maybe [Text]
- tagSpecifications :: Maybe [TagSpecification]
- vpcEndpointType :: Maybe VpcEndpointType
- vpcId :: Text
- serviceName :: Text
- newCreateVpcEndpoint :: Text -> Text -> CreateVpcEndpoint
- createVpcEndpoint_clientToken :: Lens' CreateVpcEndpoint (Maybe Text)
- createVpcEndpoint_dnsOptions :: Lens' CreateVpcEndpoint (Maybe DnsOptionsSpecification)
- createVpcEndpoint_dryRun :: Lens' CreateVpcEndpoint (Maybe Bool)
- createVpcEndpoint_ipAddressType :: Lens' CreateVpcEndpoint (Maybe IpAddressType)
- createVpcEndpoint_policyDocument :: Lens' CreateVpcEndpoint (Maybe Text)
- createVpcEndpoint_privateDnsEnabled :: Lens' CreateVpcEndpoint (Maybe Bool)
- createVpcEndpoint_routeTableIds :: Lens' CreateVpcEndpoint (Maybe [Text])
- createVpcEndpoint_securityGroupIds :: Lens' CreateVpcEndpoint (Maybe [Text])
- createVpcEndpoint_subnetIds :: Lens' CreateVpcEndpoint (Maybe [Text])
- createVpcEndpoint_tagSpecifications :: Lens' CreateVpcEndpoint (Maybe [TagSpecification])
- createVpcEndpoint_vpcEndpointType :: Lens' CreateVpcEndpoint (Maybe VpcEndpointType)
- createVpcEndpoint_vpcId :: Lens' CreateVpcEndpoint Text
- createVpcEndpoint_serviceName :: Lens' CreateVpcEndpoint Text
- data CreateVpcEndpointResponse = CreateVpcEndpointResponse' {}
- newCreateVpcEndpointResponse :: Int -> CreateVpcEndpointResponse
- createVpcEndpointResponse_clientToken :: Lens' CreateVpcEndpointResponse (Maybe Text)
- createVpcEndpointResponse_vpcEndpoint :: Lens' CreateVpcEndpointResponse (Maybe VpcEndpoint)
- createVpcEndpointResponse_httpStatus :: Lens' CreateVpcEndpointResponse Int
Creating a Request
data CreateVpcEndpoint Source #
Contains the parameters for CreateVpcEndpoint.
See: newCreateVpcEndpoint
smart constructor.
CreateVpcEndpoint' | |
|
Instances
Create a value of CreateVpcEndpoint
with all optional fields omitted.
Use generic-lens or optics to modify other optional fields.
The following record fields are available, with the corresponding lenses provided for backwards compatibility:
CreateVpcEndpoint
, createVpcEndpoint_clientToken
- Unique, case-sensitive identifier that you provide to ensure the
idempotency of the request. For more information, see
How to ensure idempotency.
CreateVpcEndpoint
, createVpcEndpoint_dnsOptions
- The DNS options for the endpoint.
$sel:dryRun:CreateVpcEndpoint'
, createVpcEndpoint_dryRun
- 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
.
CreateVpcEndpoint
, createVpcEndpoint_ipAddressType
- The IP address type for the endpoint.
CreateVpcEndpoint
, createVpcEndpoint_policyDocument
- (Interface and gateway endpoints) A policy to attach to the endpoint
that controls access to the service. The policy must be in valid JSON
format. If this parameter is not specified, we attach a default policy
that allows full access to the service.
CreateVpcEndpoint
, createVpcEndpoint_privateDnsEnabled
- (Interface endpoint) Indicates whether to associate a private hosted
zone with the specified VPC. The private hosted zone contains a record
set for the default public DNS name for the service for the Region (for
example, kinesis.us-east-1.amazonaws.com
), which resolves to the
private IP addresses of the endpoint network interfaces in the VPC. This
enables you to make requests to the default public DNS name for the
service instead of the public DNS names that are automatically generated
by the VPC endpoint service.
To use a private hosted zone, you must set the following VPC attributes
to true
: enableDnsHostnames
and enableDnsSupport
. Use
ModifyVpcAttribute to set the VPC attributes.
Default: true
CreateVpcEndpoint
, createVpcEndpoint_routeTableIds
- (Gateway endpoint) One or more route table IDs.
CreateVpcEndpoint
, createVpcEndpoint_securityGroupIds
- (Interface endpoint) The ID of one or more security groups to associate
with the endpoint network interface.
CreateVpcEndpoint
, createVpcEndpoint_subnetIds
- (Interface and Gateway Load Balancer endpoints) The ID of one or more
subnets in which to create an endpoint network interface. For a Gateway
Load Balancer endpoint, you can specify one subnet only.
CreateVpcEndpoint
, createVpcEndpoint_tagSpecifications
- The tags to associate with the endpoint.
CreateVpcEndpoint
, createVpcEndpoint_vpcEndpointType
- The type of endpoint.
Default: Gateway
CreateVpcEndpoint
, createVpcEndpoint_vpcId
- The ID of the VPC in which the endpoint will be used.
CreateVpcEndpoint
, createVpcEndpoint_serviceName
- The service name. To get a list of available services, use the
DescribeVpcEndpointServices request, or get the name from the service
provider.
Request Lenses
createVpcEndpoint_clientToken :: Lens' CreateVpcEndpoint (Maybe Text) Source #
Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.
createVpcEndpoint_dnsOptions :: Lens' CreateVpcEndpoint (Maybe DnsOptionsSpecification) Source #
The DNS options for the endpoint.
createVpcEndpoint_dryRun :: Lens' CreateVpcEndpoint (Maybe Bool) Source #
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
.
createVpcEndpoint_ipAddressType :: Lens' CreateVpcEndpoint (Maybe IpAddressType) Source #
The IP address type for the endpoint.
createVpcEndpoint_policyDocument :: Lens' CreateVpcEndpoint (Maybe Text) Source #
(Interface and gateway endpoints) A policy to attach to the endpoint that controls access to the service. The policy must be in valid JSON format. If this parameter is not specified, we attach a default policy that allows full access to the service.
createVpcEndpoint_privateDnsEnabled :: Lens' CreateVpcEndpoint (Maybe Bool) Source #
(Interface endpoint) Indicates whether to associate a private hosted
zone with the specified VPC. The private hosted zone contains a record
set for the default public DNS name for the service for the Region (for
example, kinesis.us-east-1.amazonaws.com
), which resolves to the
private IP addresses of the endpoint network interfaces in the VPC. This
enables you to make requests to the default public DNS name for the
service instead of the public DNS names that are automatically generated
by the VPC endpoint service.
To use a private hosted zone, you must set the following VPC attributes
to true
: enableDnsHostnames
and enableDnsSupport
. Use
ModifyVpcAttribute to set the VPC attributes.
Default: true
createVpcEndpoint_routeTableIds :: Lens' CreateVpcEndpoint (Maybe [Text]) Source #
(Gateway endpoint) One or more route table IDs.
createVpcEndpoint_securityGroupIds :: Lens' CreateVpcEndpoint (Maybe [Text]) Source #
(Interface endpoint) The ID of one or more security groups to associate with the endpoint network interface.
createVpcEndpoint_subnetIds :: Lens' CreateVpcEndpoint (Maybe [Text]) Source #
(Interface and Gateway Load Balancer endpoints) The ID of one or more subnets in which to create an endpoint network interface. For a Gateway Load Balancer endpoint, you can specify one subnet only.
createVpcEndpoint_tagSpecifications :: Lens' CreateVpcEndpoint (Maybe [TagSpecification]) Source #
The tags to associate with the endpoint.
createVpcEndpoint_vpcEndpointType :: Lens' CreateVpcEndpoint (Maybe VpcEndpointType) Source #
The type of endpoint.
Default: Gateway
createVpcEndpoint_vpcId :: Lens' CreateVpcEndpoint Text Source #
The ID of the VPC in which the endpoint will be used.
createVpcEndpoint_serviceName :: Lens' CreateVpcEndpoint Text Source #
The service name. To get a list of available services, use the DescribeVpcEndpointServices request, or get the name from the service provider.
Destructuring the Response
data CreateVpcEndpointResponse Source #
Contains the output of CreateVpcEndpoint.
See: newCreateVpcEndpointResponse
smart constructor.
CreateVpcEndpointResponse' | |
|
Instances
newCreateVpcEndpointResponse Source #
Create a value of CreateVpcEndpointResponse
with all optional fields omitted.
Use generic-lens or optics to modify other optional fields.
The following record fields are available, with the corresponding lenses provided for backwards compatibility:
CreateVpcEndpoint
, createVpcEndpointResponse_clientToken
- Unique, case-sensitive identifier that you provide to ensure the
idempotency of the request.
CreateVpcEndpointResponse
, createVpcEndpointResponse_vpcEndpoint
- Information about the endpoint.
$sel:httpStatus:CreateVpcEndpointResponse'
, createVpcEndpointResponse_httpStatus
- The response's http status code.
Response Lenses
createVpcEndpointResponse_clientToken :: Lens' CreateVpcEndpointResponse (Maybe Text) Source #
Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.
createVpcEndpointResponse_vpcEndpoint :: Lens' CreateVpcEndpointResponse (Maybe VpcEndpoint) Source #
Information about the endpoint.
createVpcEndpointResponse_httpStatus :: Lens' CreateVpcEndpointResponse Int Source #
The response's http status code.