Skip to content

Commit ba28387

Browse files
author
AWS
committed
Amazon Route 53 Resolver Update: Add DOH protocols in resolver endpoints.
1 parent 9f16f92 commit ba28387

File tree

3 files changed

+85
-42
lines changed

3 files changed

+85
-42
lines changed
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
{
2+
"type": "feature",
3+
"category": "Amazon Route 53 Resolver",
4+
"contributor": "",
5+
"description": "Add DOH protocols in resolver endpoints."
6+
}

services/route53resolver/src/main/resources/codegen-resources/endpoint-rule-set.json

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,6 @@
4040
]
4141
}
4242
],
43-
"type": "tree",
4443
"rules": [
4544
{
4645
"conditions": [
@@ -83,7 +82,8 @@
8382
},
8483
"type": "endpoint"
8584
}
86-
]
85+
],
86+
"type": "tree"
8787
},
8888
{
8989
"conditions": [
@@ -96,7 +96,6 @@
9696
]
9797
}
9898
],
99-
"type": "tree",
10099
"rules": [
101100
{
102101
"conditions": [
@@ -110,7 +109,6 @@
110109
"assign": "PartitionResult"
111110
}
112111
],
113-
"type": "tree",
114112
"rules": [
115113
{
116114
"conditions": [
@@ -133,7 +131,6 @@
133131
]
134132
}
135133
],
136-
"type": "tree",
137134
"rules": [
138135
{
139136
"conditions": [
@@ -168,7 +165,6 @@
168165
]
169166
}
170167
],
171-
"type": "tree",
172168
"rules": [
173169
{
174170
"conditions": [],
@@ -179,14 +175,16 @@
179175
},
180176
"type": "endpoint"
181177
}
182-
]
178+
],
179+
"type": "tree"
183180
},
184181
{
185182
"conditions": [],
186183
"error": "FIPS and DualStack are enabled, but this partition does not support one or both",
187184
"type": "error"
188185
}
189-
]
186+
],
187+
"type": "tree"
190188
},
191189
{
192190
"conditions": [
@@ -200,14 +198,12 @@
200198
]
201199
}
202200
],
203-
"type": "tree",
204201
"rules": [
205202
{
206203
"conditions": [
207204
{
208205
"fn": "booleanEquals",
209206
"argv": [
210-
true,
211207
{
212208
"fn": "getAttr",
213209
"argv": [
@@ -216,11 +212,11 @@
216212
},
217213
"supportsFIPS"
218214
]
219-
}
215+
},
216+
true
220217
]
221218
}
222219
],
223-
"type": "tree",
224220
"rules": [
225221
{
226222
"conditions": [
@@ -269,14 +265,16 @@
269265
},
270266
"type": "endpoint"
271267
}
272-
]
268+
],
269+
"type": "tree"
273270
},
274271
{
275272
"conditions": [],
276273
"error": "FIPS is enabled but this partition does not support FIPS",
277274
"type": "error"
278275
}
279-
]
276+
],
277+
"type": "tree"
280278
},
281279
{
282280
"conditions": [
@@ -290,7 +288,6 @@
290288
]
291289
}
292290
],
293-
"type": "tree",
294291
"rules": [
295292
{
296293
"conditions": [
@@ -310,7 +307,6 @@
310307
]
311308
}
312309
],
313-
"type": "tree",
314310
"rules": [
315311
{
316312
"conditions": [],
@@ -321,14 +317,16 @@
321317
},
322318
"type": "endpoint"
323319
}
324-
]
320+
],
321+
"type": "tree"
325322
},
326323
{
327324
"conditions": [],
328325
"error": "DualStack is enabled but this partition does not support DualStack",
329326
"type": "error"
330327
}
331-
]
328+
],
329+
"type": "tree"
332330
},
333331
{
334332
"conditions": [],
@@ -339,9 +337,11 @@
339337
},
340338
"type": "endpoint"
341339
}
342-
]
340+
],
341+
"type": "tree"
343342
}
344-
]
343+
],
344+
"type": "tree"
345345
},
346346
{
347347
"conditions": [],

services/route53resolver/src/main/resources/codegen-resources/service-2.json

Lines changed: 59 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -159,7 +159,7 @@
159159
{"shape":"ThrottlingException"},
160160
{"shape":"ValidationException"}
161161
],
162-
"documentation":"<p>Creates an Route 53 Resolver on an Outpost.</p>"
162+
"documentation":"<p>Creates a Route 53 Resolver on an Outpost.</p>"
163163
},
164164
"CreateResolverEndpoint":{
165165
"name":"CreateResolverEndpoint",
@@ -174,6 +174,7 @@
174174
{"shape":"ResourceNotFoundException"},
175175
{"shape":"InvalidRequestException"},
176176
{"shape":"ResourceExistsException"},
177+
{"shape":"AccessDeniedException"},
177178
{"shape":"LimitExceededException"},
178179
{"shape":"InternalServiceErrorException"},
179180
{"shape":"ThrottlingException"}
@@ -216,6 +217,7 @@
216217
{"shape":"ResourceExistsException"},
217218
{"shape":"ResourceUnavailableException"},
218219
{"shape":"InternalServiceErrorException"},
220+
{"shape":"AccessDeniedException"},
219221
{"shape":"ThrottlingException"}
220222
],
221223
"documentation":"<p>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.</p>"
@@ -1186,10 +1188,11 @@
11861188
{"shape":"ResourceNotFoundException"},
11871189
{"shape":"InvalidParameterException"},
11881190
{"shape":"InvalidRequestException"},
1191+
{"shape":"AccessDeniedException"},
11891192
{"shape":"InternalServiceErrorException"},
11901193
{"shape":"ThrottlingException"}
11911194
],
1192-
"documentation":"<p>Updates the name, or enpoint type for an inbound or an outbound Resolver endpoint. You can only update between IPV4 and DUALSTACK, IPV6 endpoint type can't be updated to other type. </p>"
1195+
"documentation":"<p>Updates the name, or endpoint type for an inbound or an outbound Resolver endpoint. You can only update between IPV4 and DUALSTACK, IPV6 endpoint type can't be updated to other type. </p>"
11931196
},
11941197
"UpdateResolverRule":{
11951198
"name":"UpdateResolverRule",
@@ -1206,7 +1209,8 @@
12061209
{"shape":"ResourceUnavailableException"},
12071210
{"shape":"LimitExceededException"},
12081211
{"shape":"InternalServiceErrorException"},
1209-
{"shape":"ThrottlingException"}
1212+
{"shape":"ThrottlingException"},
1213+
{"shape":"AccessDeniedException"}
12101214
],
12111215
"documentation":"<p>Updates settings for a specified Resolver rule. <code>ResolverRuleId</code> is required, and all other parameters are optional. If you don't specify a parameter, it retains its current value.</p>"
12121216
}
@@ -1617,7 +1621,17 @@
16171621
},
16181622
"IpAddresses":{
16191623
"shape":"IpAddressesRequest",
1620-
"documentation":"<p>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. </p>"
1624+
"documentation":"<p>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. </p> <note> <p>Even though the minimum is 1, Route 53 requires that you create at least two.</p> </note>"
1625+
},
1626+
"OutpostArn":{
1627+
"shape":"OutpostArn",
1628+
"documentation":"<p>The Amazon Resource Name (ARN) of the Outpost. If you specify this, you must also specify a value for the <code>PreferredInstanceType</code>. </p>",
1629+
"box":true
1630+
},
1631+
"PreferredInstanceType":{
1632+
"shape":"OutpostInstanceType",
1633+
"documentation":"<p>The instance type. If you specify this, you must also specify a value for the <code>OutpostArn</code>.</p>",
1634+
"box":true
16211635
},
16221636
"Tags":{
16231637
"shape":"TagList",
@@ -1629,14 +1643,9 @@
16291643
"documentation":"<p> 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. This endpoint type is applied to all IP addresses. </p>",
16301644
"box":true
16311645
},
1632-
"OutpostArn":{
1633-
"shape":"OutpostArn",
1634-
"documentation":"<p>The Amazon Resource Name (ARN) of the Outpost. If you specify this, you must also specify a value for the <code>PreferredInstanceType</code>. </p>",
1635-
"box":true
1636-
},
1637-
"PreferredInstanceType":{
1638-
"shape":"OutpostInstanceType",
1639-
"documentation":"<p>The instance type. If you specify this, you must also specify a value for the <code>OutpostArn</code>.</p>",
1646+
"Protocols":{
1647+
"shape":"ProtocolList",
1648+
"documentation":"<p> The protocols you want to use for the endpoint. DoH-FIPS is applicable for inbound endpoints only. </p> <p>For an inbound endpoint you can apply the protocols as follows:</p> <ul> <li> <p> Do53 and DoH in combination.</p> </li> <li> <p>Do53 and DoH-FIPS in combination.</p> </li> <li> <p>Do53 alone.</p> </li> <li> <p>DoH alone.</p> </li> <li> <p>DoH-FIPS alone.</p> </li> <li> <p>None, which is treated as Do53.</p> </li> </ul> <p>For an outbound endpoint you can apply the protocols as follows:</p> <ul> <li> <p> Do53 and DoH in combination.</p> </li> <li> <p>Do53 alone.</p> </li> <li> <p>DoH alone.</p> </li> <li> <p>None, which is treated as Do53.</p> </li> </ul>",
16401649
"box":true
16411650
}
16421651
}
@@ -1691,8 +1700,7 @@
16911700
"type":"structure",
16921701
"required":[
16931702
"CreatorRequestId",
1694-
"RuleType",
1695-
"DomainName"
1703+
"RuleType"
16961704
],
16971705
"members":{
16981706
"CreatorRequestId":{
@@ -1709,7 +1717,8 @@
17091717
},
17101718
"DomainName":{
17111719
"shape":"DomainName",
1712-
"documentation":"<p>DNS queries for this domain name are forwarded to the IP addresses that you specify in <code>TargetIps</code>. If a query matches multiple Resolver rules (example.com and www.example.com), outbound DNS queries are routed using the Resolver rule that contains the most specific domain name (www.example.com).</p>"
1720+
"documentation":"<p>DNS queries for this domain name are forwarded to the IP addresses that you specify in <code>TargetIps</code>. If a query matches multiple Resolver rules (example.com and www.example.com), outbound DNS queries are routed using the Resolver rule that contains the most specific domain name (www.example.com).</p>",
1721+
"box":true
17131722
},
17141723
"TargetIps":{
17151724
"shape":"TargetList",
@@ -2886,7 +2895,7 @@
28862895
"type":"list",
28872896
"member":{"shape":"IpAddressRequest"},
28882897
"max":20,
2889-
"min":1
2898+
"min":2
28902899
},
28912900
"IpAddressesResponse":{
28922901
"type":"list",
@@ -3222,7 +3231,7 @@
32223231
},
32233232
"ResolverDnssecConfigs":{
32243233
"shape":"ResolverDnssecConfigList",
3225-
"documentation":"<p>An array that contains one <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_ResolverDnssecConfig.html\">ResolverDnssecConfig</a> element for each configuration for DNSSEC validation that is associated with the current Amazon Web Services account.</p>"
3234+
"documentation":"<p>An array that contains one <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_ResolverDnssecConfig.html\">ResolverDnssecConfig</a> element for each configuration for DNSSEC validation that is associated with the current Amazon Web Services account. It doesn't contain disabled DNSSEC configurations for the resource.</p>"
32263235
}
32273236
}
32283237
},
@@ -3612,6 +3621,20 @@
36123621
"min":0
36133622
},
36143623
"Priority":{"type":"integer"},
3624+
"Protocol":{
3625+
"type":"string",
3626+
"enum":[
3627+
"DoH",
3628+
"Do53",
3629+
"DoH-FIPS"
3630+
]
3631+
},
3632+
"ProtocolList":{
3633+
"type":"list",
3634+
"member":{"shape":"Protocol"},
3635+
"max":2,
3636+
"min":1
3637+
},
36153638
"PutFirewallRuleGroupPolicyRequest":{
36163639
"type":"structure",
36173640
"required":[
@@ -3817,17 +3840,21 @@
38173840
"shape":"Rfc3339TimeString",
38183841
"documentation":"<p>The date and time that the endpoint was last modified, in Unix time format and Coordinated Universal Time (UTC).</p>"
38193842
},
3820-
"ResolverEndpointType":{
3821-
"shape":"ResolverEndpointType",
3822-
"documentation":"<p> The Resolver endpoint IP address type. </p>"
3823-
},
38243843
"OutpostArn":{
38253844
"shape":"OutpostArn",
38263845
"documentation":"<p>The ARN (Amazon Resource Name) for the Outpost.</p>"
38273846
},
38283847
"PreferredInstanceType":{
38293848
"shape":"OutpostInstanceType",
38303849
"documentation":"<p> The Amazon EC2 instance type. </p>"
3850+
},
3851+
"ResolverEndpointType":{
3852+
"shape":"ResolverEndpointType",
3853+
"documentation":"<p> The Resolver endpoint IP address type. </p>"
3854+
},
3855+
"Protocols":{
3856+
"shape":"ProtocolList",
3857+
"documentation":"<p> Protocols used for the endpoint. DoH-FIPS is applicable for inbound endpoints only. </p> <p>For an inbound endpoint you can apply the protocols as follows:</p> <ul> <li> <p> Do53 and DoH in combination.</p> </li> <li> <p>Do53 and DoH-FIPS in combination.</p> </li> <li> <p>Do53 alone.</p> </li> <li> <p>DoH alone.</p> </li> <li> <p>DoH-FIPS alone.</p> </li> <li> <p>None, which is treated as Do53.</p> </li> </ul> <p>For an outbound endpoint you can apply the protocols as follows:</p> <ul> <li> <p> Do53 and DoH in combination.</p> </li> <li> <p>Do53 alone.</p> </li> <li> <p>DoH alone.</p> </li> <li> <p>None, which is treated as Do53.</p> </li> </ul>"
38313858
}
38323859
},
38333860
"documentation":"<p>In the response to a <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_route53resolver_CreateResolverEndpoint.html\">CreateResolverEndpoint</a>, <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_route53resolver_DeleteResolverEndpoint.html\">DeleteResolverEndpoint</a>, <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_route53resolver_GetResolverEndpoint.html\">GetResolverEndpoint</a>, Updates the name, or ResolverEndpointType for an endpoint, or <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_route53resolver_UpdateResolverEndpoint.html\">UpdateResolverEndpoint</a> request, a complex type that contains settings for an existing inbound or outbound Resolver endpoint.</p>"
@@ -4320,6 +4347,11 @@
43204347
"shape":"Ipv6",
43214348
"documentation":"<p> One IPv6 address that you want to forward DNS queries to. </p>",
43224349
"box":true
4350+
},
4351+
"Protocol":{
4352+
"shape":"Protocol",
4353+
"documentation":"<p> The protocols for the Resolver endpoints. DoH-FIPS is applicable for inbound endpoints only. </p> <p>For an inbound endpoint you can apply the protocols as follows:</p> <ul> <li> <p> Do53 and DoH in combination.</p> </li> <li> <p>Do53 and DoH-FIPS in combination.</p> </li> <li> <p>Do53 alone.</p> </li> <li> <p>DoH alone.</p> </li> <li> <p>DoH-FIPS alone.</p> </li> <li> <p>None, which is treated as Do53.</p> </li> </ul> <p>For an outbound endpoint you can apply the protocols as follows:</p> <ul> <li> <p> Do53 and DoH in combination.</p> </li> <li> <p>Do53 alone.</p> </li> <li> <p>DoH alone.</p> </li> <li> <p>None, which is treated as Do53.</p> </li> </ul>",
4354+
"box":true
43234355
}
43244356
},
43254357
"documentation":"<p>In a <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_route53resolver_CreateResolverRule.html\">CreateResolverRule</a> request, an array of the IPs that you want to forward DNS queries to.</p>"
@@ -4664,6 +4696,11 @@
46644696
"shape":"UpdateIpAddresses",
46654697
"documentation":"<p> Specifies the IPv6 address when you update the Resolver endpoint from IPv4 to dual-stack. If you don't specify an IPv6 address, one will be automatically chosen from your subnet. </p>",
46664698
"box":true
4699+
},
4700+
"Protocols":{
4701+
"shape":"ProtocolList",
4702+
"documentation":"<p> The protocols you want to use for the endpoint. DoH-FIPS is applicable for inbound endpoints only. </p> <p>For an inbound endpoint you can apply the protocols as follows:</p> <ul> <li> <p> Do53 and DoH in combination.</p> </li> <li> <p>Do53 and DoH-FIPS in combination.</p> </li> <li> <p>Do53 alone.</p> </li> <li> <p>DoH alone.</p> </li> <li> <p>DoH-FIPS alone.</p> </li> <li> <p>None, which is treated as Do53.</p> </li> </ul> <p>For an outbound endpoint you can apply the protocols as follows:</p> <ul> <li> <p> Do53 and DoH in combination.</p> </li> <li> <p>Do53 alone.</p> </li> <li> <p>DoH alone.</p> </li> <li> <p>None, which is treated as Do53.</p> </li> </ul> <important> <p> You can't change the protocol of an inbound endpoint directly from only Do53 to only DoH, or DoH-FIPS. This is to prevent a sudden disruption to incoming traffic that relies on Do53. To change the protocol from Do53 to DoH, or DoH-FIPS, you must first enable both Do53 and DoH, or Do53 and DoH-FIPS, to make sure that all incoming traffic has transferred to using the DoH protocol, or DoH-FIPS, and then remove the Do53.</p> </important>",
4703+
"box":true
46674704
}
46684705
}
46694706
},
@@ -4715,7 +4752,7 @@
47154752
"members":{
47164753
"Message":{"shape":"ExceptionMessage"}
47174754
},
4718-
"documentation":"<p>You have provided an invalid command. Supported values are <code>ADD</code>, <code>REMOVE</code>, or <code>REPLACE</code> a domain.</p>",
4755+
"documentation":"<p>You have provided an invalid command. If you ran the <code>UpdateFirewallDomains</code> request. supported values are <code>ADD</code>, <code>REMOVE</code>, or <code>REPLACE</code> a domain.</p>",
47194756
"exception":true
47204757
}
47214758
},

0 commit comments

Comments
 (0)