AWS Route 53 Resolver Rule
This page shows how to write Terraform and CloudFormation for Route 53 Resolver Rule and write them securely.
aws_route53_resolver_rule (Terraform)
The Rule in Route 53 Resolver can be configured in Terraform with the resource name aws_route53_resolver_rule
. The following sections describe 5 examples of how to use the resource and its parameters.
Example Usage from GitHub
resource "aws_route53_resolver_rule" "eu_west1_cloudtuples_fwd" {
domain_name = "west1.cloudtuples.com"
name = "west1-cloudtuples"
rule_type = "FORWARD"
resolver_endpoint_id = aws_route53_resolver_endpoint.outbound_endpoint.id
resource "aws_route53_resolver_rule" "sys" {
name = "my-global-resolver"
domain_name = "."
rule_type = "SYSTEM"
}
resource "aws_route53_resolver_rule" "hub_local" {
count = var.is_hub ? 1 : 0
domain_name = var.internal_domain
name = "resolve-self"
rule_type = "SYSTEM"
}
resource "aws_route53_resolver_rule" "domain_forwarders" {
for_each = local.forward_domains
domain_name = each.value.name
name = each.value.rule_name
rule_type = each.value.rule_type
resolver_endpoint_id = aws_route53_resolver_endpoint.default.id
resource "aws_route53_resolver_rule" "forward_internal" {
count = var.is_hub ? 1 : 0
domain_name = var.internal_domain
name = "forward-inbound"
rule_type = "FORWARD"
resolver_endpoint_id = aws_route53_resolver_endpoint.internal[0].id
Parameters
-
arn
optional computed - string -
domain_name
required - string -
id
optional computed - string -
name
optional - string -
owner_id
optional computed - string -
resolver_endpoint_id
optional - string -
rule_type
required - string -
share_status
optional computed - string -
tags
optional - map from string to string -
target_ip
set block -
timeouts
single block
Explanation in Terraform Registry
Provides a Route53 Resolver rule.
AWS::Route53Resolver::ResolverRule (CloudFormation)
The ResolverRule in Route53Resolver can be configured in CloudFormation with the resource name AWS::Route53Resolver::ResolverRule
. The following sections describe 10 examples of how to use the resource and its parameters.
Example Usage from GitHub
Type: "AWS::Route53Resolver::ResolverRule"
Properties:
Name: stang-r53-resolver-rule-to-swa
DomainName: swacorp.com
ResolverEndpointId: !Ref rOutboundResolverEndpoint
RuleType: FORWARD
Type: AWS::Route53Resolver::ResolverRule
Properties:
DomainName: idcsingapore.internal
Name: Outbound Rule
ResolverEndpointId: !Ref OutboundEndpoint
RuleType: FORWARD
Type: AWS::Route53Resolver::ResolverRule
Properties:
DomainName: aws-seoul.internal
Name: forwardrule
ResolverEndpointId: !Ref Outbound
RuleType: FORWARD
Type: AWS::Route53Resolver::ResolverRule
Properties:
DomainName: idcneta.internal
Name: Outbound Rule
ResolverEndpointId: !Ref OutboundEndpoint
RuleType: FORWARD
Type: AWS::Route53Resolver::ResolverRule
Properties:
DomainName: !Ref ForwarderDomainName
ResolverEndpointId: !GetAtt OuboundResolver.ResolverEndpointId
RuleType: FORWARD
TargetIps:
"AWS::Route53Resolver::ResolverRule.TargetAddress": {
"Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53resolver-resolverrule-targetaddress.html",
"Properties": {
"Ip": {
"Required": true,
"Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53resolver-resolverrule-targetaddress.html#cfn-route53resolver-resolverrule-targetaddress-ip",
"AWS::Route53Resolver::ResolverRule.TargetAddress": {
"Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53resolver-resolverrule-targetaddress.html",
"Properties": {
"Ip": {
"Required": true,
"Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53resolver-resolverrule-targetaddress.html#cfn-route53resolver-resolverrule-targetaddress-ip",
"AWS::Route53Resolver::ResolverRule.TargetAddress": {
"Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53resolver-resolverrule-targetaddress.html",
"Properties": {
"Ip": {
"Required": true,
"Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53resolver-resolverrule-targetaddress.html#cfn-route53resolver-resolverrule-targetaddress-ip",
"AWS::Route53Resolver::ResolverRule.TargetAddress": {
"Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53resolver-resolverrule-targetaddress.html",
"Properties": {
"Ip": {
"Required": true,
"Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53resolver-resolverrule-targetaddress.html#cfn-route53resolver-resolverrule-targetaddress-ip",
"AWS::Route53Resolver::ResolverRule.TargetAddress": {
"Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53resolver-resolverrule-targetaddress.html",
"Properties": {
"Ip": {
"Required": true,
"Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53resolver-resolverrule-targetaddress.html#cfn-route53resolver-resolverrule-targetaddress-ip",
Parameters
-
ResolverEndpointId
optional - String -
DomainName
required - String -
RuleType
required - String -
TargetIps
optional - List of TargetAddress -
Tags
optional - List of Tag -
Name
optional - String
Explanation in CloudFormation Registry
For DNS queries that originate in your VPCs, specifies which Resolver endpoint the queries pass through, one domain name that you want to forward to your network, and the IP addresses of the DNS resolvers in your network.
Frequently asked questions
What is AWS Route 53 Resolver Rule?
AWS Route 53 Resolver Rule is a resource for Route 53 Resolver of Amazon Web Service. Settings can be wrote in Terraform and CloudFormation.
Where can I find the example code for the AWS Route 53 Resolver Rule?
For Terraform, the kaysal/cloud-networking, dmilan77/vpc-route53-multiaccount-v2 and GSA/grace-paas-network source code examples are useful. See the Terraform Example section for further details.
For CloudFormation, the sguillory6/aws-infrastructure-templates, yuntreee/CloudFormation and nnany1123/nnany source code examples are useful. See the CloudFormation Example section for further details.