Class CfnResolverEndpoint

java.lang.Object
software.amazon.jsii.JsiiObject
software.constructs.Construct
software.amazon.awscdk.CfnElement
software.amazon.awscdk.CfnRefElement
software.amazon.awscdk.CfnResource
software.amazon.awscdk.services.route53resolver.CfnResolverEndpoint
All Implemented Interfaces:
IInspectable, IEnvironmentAware, IResolverEndpointRef, ITaggable, software.amazon.jsii.JsiiSerializable, software.constructs.IConstruct, software.constructs.IDependable

@Generated(value="jsii-pacmak/1.121.0 (build d7af9b9)", date="2025-12-18T18:20:16.975Z") @Stability(Stable) public class CfnResolverEndpoint extends CfnResource implements IInspectable, IResolverEndpointRef, ITaggable
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")
         .protocols(List.of("protocols"))
         .resolverEndpointType("resolverEndpointType")
         .rniEnhancedMetricsEnabled(false)
         .tags(List.of(CfnTag.builder()
                 .key("key")
                 .value("value")
                 .build()))
         .targetNameServerMetricsEnabled(false)
         .build();
 

See Also:
  • 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 software.constructs.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 - Construct identifier for this resource (unique in its scope). This parameter is required.
      props - Resource properties. This parameter is required.
  • Method Details

    • arnForResolverEndpoint

      @Stability(Stable) @NotNull public static String arnForResolverEndpoint(@NotNull IResolverEndpointRef resource)
      Parameters:
      resource - This parameter is required.
    • isCfnResolverEndpoint

      @Stability(Stable) @NotNull public static Boolean isCfnResolverEndpoint(@NotNull Object x)
      Checks whether the given object is a CfnResolverEndpoint.

      Parameters:
      x - This parameter is required.
    • 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()
    • getCfnProperties

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

      @Stability(Stable) @NotNull public ResolverEndpointReference getResolverEndpointRef()
      A reference to a ResolverEndpoint resource.
      Specified by:
      getResolverEndpointRef in interface IResolverEndpointRef
    • getTags

      @Stability(Stable) @NotNull public TagManager getTags()
      Tag Manager which manages the tags for this resource.
      Specified by:
      getTags in interface ITaggable
    • getDirection

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

      @Stability(Stable) public void setDirection(@NotNull String value)
      Indicates whether the Resolver endpoint allows inbound or outbound DNS queries:.
    • 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).

      Returns union: either IResolvable or Listinvalid input: '<'either IResolvable or CfnResolverEndpoint.IpAddressRequestProperty>

    • 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).
    • 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).
    • getSecurityGroupIds

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

      @Stability(Stable) public void setSecurityGroupIds(@NotNull List<String> value)
      The ID of one or more security groups that control access to this VPC.
    • 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()
      The ARN (Amazon Resource Name) for the Outpost.
    • setOutpostArn

      @Stability(Stable) public void setOutpostArn(@Nullable String value)
      The ARN (Amazon Resource Name) for the Outpost.
    • getPreferredInstanceType

      @Stability(Stable) @Nullable public String getPreferredInstanceType()
      The Amazon EC2 instance type.
    • setPreferredInstanceType

      @Stability(Stable) public void setPreferredInstanceType(@Nullable String value)
      The Amazon EC2 instance type.
    • getProtocols

      @Stability(Stable) @Nullable public List<String> getProtocols()
      Protocols used for the endpoint.

      DoH-FIPS is applicable for a default inbound endpoints only.

    • setProtocols

      @Stability(Stable) public void setProtocols(@Nullable List<String> value)
      Protocols used for the endpoint.

      DoH-FIPS is applicable for a default inbound endpoints only.

    • 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.
    • getRniEnhancedMetricsEnabled

      @Stability(Stable) @Nullable public Object getRniEnhancedMetricsEnabled()
      Specifies whether RNI enhanced metrics are enabled for the Resolver Endpoints.

      Returns union: either Boolean or IResolvable

    • setRniEnhancedMetricsEnabled

      @Stability(Stable) public void setRniEnhancedMetricsEnabled(@Nullable Boolean value)
      Specifies whether RNI enhanced metrics are enabled for the Resolver Endpoints.
    • setRniEnhancedMetricsEnabled

      @Stability(Stable) public void setRniEnhancedMetricsEnabled(@Nullable IResolvable value)
      Specifies whether RNI enhanced metrics are enabled for the Resolver Endpoints.
    • getTagsRaw

      @Stability(Stable) @Nullable public List<CfnTag> getTagsRaw()
      Route 53 Resolver doesn't support updating tags through CloudFormation.
    • setTagsRaw

      @Stability(Stable) public void setTagsRaw(@Nullable List<CfnTag> value)
      Route 53 Resolver doesn't support updating tags through CloudFormation.
    • getTargetNameServerMetricsEnabled

      @Stability(Stable) @Nullable public Object getTargetNameServerMetricsEnabled()
      Specifies whether target name server metrics are enabled for the Outbound Resolver Endpoint.

      Returns union: either Boolean or IResolvable

    • setTargetNameServerMetricsEnabled

      @Stability(Stable) public void setTargetNameServerMetricsEnabled(@Nullable Boolean value)
      Specifies whether target name server metrics are enabled for the Outbound Resolver Endpoint.
    • setTargetNameServerMetricsEnabled

      @Stability(Stable) public void setTargetNameServerMetricsEnabled(@Nullable IResolvable value)
      Specifies whether target name server metrics are enabled for the Outbound Resolver Endpoint.