Class CfnResolverEndpoint

java.lang.Object
software.amazon.jsii.JsiiObject
All Implemented Interfaces:
IConstruct, IDependable, IInspectable, software.amazon.jsii.JsiiSerializable, software.constructs.IConstruct

@Generated(value="jsii-pacmak/1.84.0 (build 5404dcf)", date="2023-06-19T16:30:40.387Z") @Stability(Stable) public class CfnResolverEndpoint extends CfnResource implements IInspectable
A CloudFormation AWS::Route53Resolver::ResolverEndpoint.

Creates a Resolver endpoint. There are two types of Resolver endpoints, inbound and outbound:

  • An inbound Resolver endpoint forwards DNS queries to the DNS service for a VPC from your network.
  • An outbound Resolver endpoint forwards DNS queries from the DNS service for a VPC to your network.

  • You cannot update ResolverEndpointType and IpAddresses in the same request.
  • When you update a dual-stack IP address, you must update both IP addresses. You can’t update only an IPv4 or IPv6 and keep an existing IP address.

Example:

 // The code below shows an example of how to instantiate this type.
 // The values are placeholders you should change.
 import software.amazon.awscdk.services.route53resolver.*;
 CfnResolverEndpoint cfnResolverEndpoint = CfnResolverEndpoint.Builder.create(this, "MyCfnResolverEndpoint")
         .direction("direction")
         .ipAddresses(List.of(IpAddressRequestProperty.builder()
                 .subnetId("subnetId")
                 // the properties below are optional
                 .ip("ip")
                 .ipv6("ipv6")
                 .build()))
         .securityGroupIds(List.of("securityGroupIds"))
         // the properties below are optional
         .name("name")
         .outpostArn("outpostArn")
         .preferredInstanceType("preferredInstanceType")
         .resolverEndpointType("resolverEndpointType")
         .tags(List.of(CfnTag.builder()
                 .key("key")
                 .value("value")
                 .build()))
         .build();
 
  • Field Details

    • CFN_RESOURCE_TYPE_NAME

      @Stability(Stable) public static final String CFN_RESOURCE_TYPE_NAME
      The CloudFormation resource type name for this resource class.
  • Constructor Details

    • CfnResolverEndpoint

      protected CfnResolverEndpoint(software.amazon.jsii.JsiiObjectRef objRef)
    • CfnResolverEndpoint

      protected CfnResolverEndpoint(software.amazon.jsii.JsiiObject.InitializationMode initializationMode)
    • CfnResolverEndpoint

      @Stability(Stable) public CfnResolverEndpoint(@NotNull Construct scope, @NotNull String id, @NotNull CfnResolverEndpointProps props)
      Create a new AWS::Route53Resolver::ResolverEndpoint.

      Parameters:
      scope -
      • scope in which this resource is defined.
      This parameter is required.
      id -
      • scoped id of the resource.
      This parameter is required.
      props -
      • resource properties.
      This parameter is required.
  • Method Details

    • inspect

      @Stability(Stable) public void inspect(@NotNull TreeInspector inspector)
      Examines the CloudFormation resource and discloses attributes.

      Specified by:
      inspect in interface IInspectable
      Parameters:
      inspector -
      • tree inspector to collect and process attributes.
      This parameter is required.
    • renderProperties

      @Stability(Stable) @NotNull protected Map<String,Object> renderProperties(@NotNull Map<String,Object> props)
      Overrides:
      renderProperties in class CfnResource
      Parameters:
      props - This parameter is required.
    • getAttrArn

      @Stability(Stable) @NotNull public String getAttrArn()
      The Amazon Resource Name (ARN) of the resolver endpoint, such as arn:aws:route53resolver:us-east-1:123456789012:resolver-endpoint/resolver-endpoint-a1bzhi .
    • getAttrDirection

      @Stability(Stable) @NotNull public String getAttrDirection()
      Indicates whether the resolver endpoint allows inbound or outbound DNS queries.
    • getAttrHostVpcId

      @Stability(Stable) @NotNull public String getAttrHostVpcId()
      The ID of the VPC that you want to create the resolver endpoint in.
    • getAttrIpAddressCount

      @Stability(Stable) @NotNull public String getAttrIpAddressCount()
      The number of IP addresses that the resolver endpoint can use for DNS queries.
    • getAttrName

      @Stability(Stable) @NotNull public String getAttrName()
      The name that you assigned to the resolver endpoint when you created the endpoint.
    • getAttrOutpostArn

      @Stability(Stable) @NotNull public String getAttrOutpostArn()
    • getAttrPreferredInstanceType

      @Stability(Stable) @NotNull public String getAttrPreferredInstanceType()
    • getAttrResolverEndpointId

      @Stability(Stable) @NotNull public String getAttrResolverEndpointId()
      The ID of the resolver endpoint.
    • getAttrResolverEndpointType

      @Stability(Stable) @NotNull public String getAttrResolverEndpointType()
      For the endpoint type you can choose either IPv4, IPv6.

      or dual-stack. A dual-stack endpoint means that it will resolve via both IPv4 and IPv6. If you choose either IPv4 or IPv6, this endpoint type is applied to all IP addresses.

    • getCfnProperties

      @Stability(Stable) @NotNull protected Map<String,Object> getCfnProperties()
      Overrides:
      getCfnProperties in class CfnResource
    • getTags

      @Stability(Stable) @NotNull public TagManager getTags()
      Route 53 Resolver doesn't support updating tags through CloudFormation.
    • getDirection

      @Stability(Stable) @NotNull public String getDirection()
      Indicates whether the Resolver endpoint allows inbound or outbound DNS queries:.

      • INBOUND : allows DNS queries to your VPC from your network
      • OUTBOUND : allows DNS queries from your VPC to your network
    • setDirection

      @Stability(Stable) public void setDirection(@NotNull String value)
      Indicates whether the Resolver endpoint allows inbound or outbound DNS queries:.

      • INBOUND : allows DNS queries to your VPC from your network
      • OUTBOUND : allows DNS queries from your VPC to your network
    • getIpAddresses

      @Stability(Stable) @NotNull public Object getIpAddresses()
      The subnets and IP addresses in your VPC that DNS queries originate from (for outbound endpoints) or that you forward DNS queries to (for inbound endpoints).

      The subnet ID uniquely identifies a VPC.

      Even though the minimum is 1, Route 53 requires that you create at least two.

    • setIpAddresses

      @Stability(Stable) public void setIpAddresses(@NotNull IResolvable value)
      The subnets and IP addresses in your VPC that DNS queries originate from (for outbound endpoints) or that you forward DNS queries to (for inbound endpoints).

      The subnet ID uniquely identifies a VPC.

      Even though the minimum is 1, Route 53 requires that you create at least two.

    • setIpAddresses

      @Stability(Stable) public void setIpAddresses(@NotNull List<Object> value)
      The subnets and IP addresses in your VPC that DNS queries originate from (for outbound endpoints) or that you forward DNS queries to (for inbound endpoints).

      The subnet ID uniquely identifies a VPC.

      Even though the minimum is 1, Route 53 requires that you create at least two.

    • getSecurityGroupIds

      @Stability(Stable) @NotNull public List<String> getSecurityGroupIds()
      The ID of one or more security groups that control access to this VPC.

      The security group must include one or more inbound rules (for inbound endpoints) or outbound rules (for outbound endpoints). Inbound and outbound rules must allow TCP and UDP access. For inbound access, open port 53. For outbound access, open the port that you're using for DNS queries on your network.

    • setSecurityGroupIds

      @Stability(Stable) public void setSecurityGroupIds(@NotNull List<String> value)
      The ID of one or more security groups that control access to this VPC.

      The security group must include one or more inbound rules (for inbound endpoints) or outbound rules (for outbound endpoints). Inbound and outbound rules must allow TCP and UDP access. For inbound access, open port 53. For outbound access, open the port that you're using for DNS queries on your network.

    • getName

      @Stability(Stable) @Nullable public String getName()
      A friendly name that lets you easily find a configuration in the Resolver dashboard in the Route 53 console.
    • setName

      @Stability(Stable) public void setName(@Nullable String value)
      A friendly name that lets you easily find a configuration in the Resolver dashboard in the Route 53 console.
    • getOutpostArn

      @Stability(Stable) @Nullable public String getOutpostArn()
      AWS::Route53Resolver::ResolverEndpoint.OutpostArn.
    • setOutpostArn

      @Stability(Stable) public void setOutpostArn(@Nullable String value)
      AWS::Route53Resolver::ResolverEndpoint.OutpostArn.
    • getPreferredInstanceType

      @Stability(Stable) @Nullable public String getPreferredInstanceType()
      AWS::Route53Resolver::ResolverEndpoint.PreferredInstanceType.
    • setPreferredInstanceType

      @Stability(Stable) public void setPreferredInstanceType(@Nullable String value)
      AWS::Route53Resolver::ResolverEndpoint.PreferredInstanceType.
    • getResolverEndpointType

      @Stability(Stable) @Nullable public String getResolverEndpointType()
      The Resolver endpoint IP address type.
    • setResolverEndpointType

      @Stability(Stable) public void setResolverEndpointType(@Nullable String value)
      The Resolver endpoint IP address type.