aws-sdk-route53resolver 1.24.0 → 1.28.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -28,6 +28,7 @@ module Aws::Route53Resolver
28
28
  #
29
29
  # ## Error Classes
30
30
  # * {AccessDeniedException}
31
+ # * {ConflictException}
31
32
  # * {InternalServiceErrorException}
32
33
  # * {InvalidNextTokenException}
33
34
  # * {InvalidParameterException}
@@ -41,6 +42,7 @@ module Aws::Route53Resolver
41
42
  # * {ResourceUnavailableException}
42
43
  # * {ThrottlingException}
43
44
  # * {UnknownResourceException}
45
+ # * {ValidationException}
44
46
  #
45
47
  # Additionally, error classes are dynamically generated for service errors based on the error code
46
48
  # if they are not defined above.
@@ -63,6 +65,21 @@ module Aws::Route53Resolver
63
65
  end
64
66
  end
65
67
 
68
+ class ConflictException < ServiceError
69
+
70
+ # @param [Seahorse::Client::RequestContext] context
71
+ # @param [String] message
72
+ # @param [Aws::Route53Resolver::Types::ConflictException] data
73
+ def initialize(context, message, data = Aws::EmptyStructure.new)
74
+ super(context, message, data)
75
+ end
76
+
77
+ # @return [String]
78
+ def message
79
+ @message || @data[:message]
80
+ end
81
+ end
82
+
66
83
  class InternalServiceErrorException < ServiceError
67
84
 
68
85
  # @param [Seahorse::Client::RequestContext] context
@@ -288,5 +305,20 @@ module Aws::Route53Resolver
288
305
  end
289
306
  end
290
307
 
308
+ class ValidationException < ServiceError
309
+
310
+ # @param [Seahorse::Client::RequestContext] context
311
+ # @param [String] message
312
+ # @param [Aws::Route53Resolver::Types::ValidationException] data
313
+ def initialize(context, message, data = Aws::EmptyStructure.new)
314
+ super(context, message, data)
315
+ end
316
+
317
+ # @return [String]
318
+ def message
319
+ @message || @data[:message]
320
+ end
321
+ end
322
+
291
323
  end
292
324
  end
@@ -24,6 +24,102 @@ module Aws::Route53Resolver
24
24
  include Aws::Structure
25
25
  end
26
26
 
27
+ # @note When making an API call, you may pass AssociateFirewallRuleGroupRequest
28
+ # data as a hash:
29
+ #
30
+ # {
31
+ # creator_request_id: "CreatorRequestId", # required
32
+ # firewall_rule_group_id: "ResourceId", # required
33
+ # vpc_id: "ResourceId", # required
34
+ # priority: 1, # required
35
+ # name: "Name", # required
36
+ # mutation_protection: "ENABLED", # accepts ENABLED, DISABLED
37
+ # tags: [
38
+ # {
39
+ # key: "TagKey", # required
40
+ # value: "TagValue", # required
41
+ # },
42
+ # ],
43
+ # }
44
+ #
45
+ # @!attribute [rw] creator_request_id
46
+ # A unique string that identifies the request and that allows failed
47
+ # requests to be retried without the risk of running the operation
48
+ # twice. `CreatorRequestId` can be any unique string, for example, a
49
+ # date/time stamp.
50
+ #
51
+ # **A suitable default value is auto-generated.** You should normally
52
+ # not need to pass this option.
53
+ # @return [String]
54
+ #
55
+ # @!attribute [rw] firewall_rule_group_id
56
+ # The unique identifier of the firewall rule group.
57
+ # @return [String]
58
+ #
59
+ # @!attribute [rw] vpc_id
60
+ # The unique identifier of the VPC that you want to associate with the
61
+ # rule group.
62
+ # @return [String]
63
+ #
64
+ # @!attribute [rw] priority
65
+ # The setting that determines the processing order of the rule group
66
+ # among the rule groups that you associate with the specified VPC. DNS
67
+ # Firewall filters VPC traffic starting from the rule group with the
68
+ # lowest numeric priority setting.
69
+ #
70
+ # You must specify a unique priority for each rule group that you
71
+ # associate with a single VPC. To make it easier to insert rule groups
72
+ # later, leave space between the numbers, for example, use 101, 200,
73
+ # and so on. You can change the priority setting for a rule group
74
+ # association after you create it.
75
+ #
76
+ # The allowed values for `Priority` are between 100 and 9900.
77
+ # @return [Integer]
78
+ #
79
+ # @!attribute [rw] name
80
+ # A name that lets you identify the association, to manage and use it.
81
+ # @return [String]
82
+ #
83
+ # @!attribute [rw] mutation_protection
84
+ # If enabled, this setting disallows modification or removal of the
85
+ # association, to help prevent against accidentally altering DNS
86
+ # firewall protections. When you create the association, the default
87
+ # setting is `DISABLED`.
88
+ # @return [String]
89
+ #
90
+ # @!attribute [rw] tags
91
+ # A list of the tag keys and values that you want to associate with
92
+ # the rule group association.
93
+ # @return [Array<Types::Tag>]
94
+ #
95
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/AssociateFirewallRuleGroupRequest AWS API Documentation
96
+ #
97
+ class AssociateFirewallRuleGroupRequest < Struct.new(
98
+ :creator_request_id,
99
+ :firewall_rule_group_id,
100
+ :vpc_id,
101
+ :priority,
102
+ :name,
103
+ :mutation_protection,
104
+ :tags)
105
+ SENSITIVE = []
106
+ include Aws::Structure
107
+ end
108
+
109
+ # @!attribute [rw] firewall_rule_group_association
110
+ # The association that you just created. The association has an ID
111
+ # that you can use to identify it in other requests, like update and
112
+ # delete.
113
+ # @return [Types::FirewallRuleGroupAssociation]
114
+ #
115
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/AssociateFirewallRuleGroupResponse AWS API Documentation
116
+ #
117
+ class AssociateFirewallRuleGroupResponse < Struct.new(
118
+ :firewall_rule_group_association)
119
+ SENSITIVE = []
120
+ include Aws::Structure
121
+ end
122
+
27
123
  # @note When making an API call, you may pass AssociateResolverEndpointIpAddressRequest
28
124
  # data as a hash:
29
125
  #
@@ -163,6 +259,263 @@ module Aws::Route53Resolver
163
259
  include Aws::Structure
164
260
  end
165
261
 
262
+ # @!attribute [rw] message
263
+ # @return [String]
264
+ #
265
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/ConflictException AWS API Documentation
266
+ #
267
+ class ConflictException < Struct.new(
268
+ :message)
269
+ SENSITIVE = []
270
+ include Aws::Structure
271
+ end
272
+
273
+ # @note When making an API call, you may pass CreateFirewallDomainListRequest
274
+ # data as a hash:
275
+ #
276
+ # {
277
+ # creator_request_id: "CreatorRequestId", # required
278
+ # name: "Name", # required
279
+ # tags: [
280
+ # {
281
+ # key: "TagKey", # required
282
+ # value: "TagValue", # required
283
+ # },
284
+ # ],
285
+ # }
286
+ #
287
+ # @!attribute [rw] creator_request_id
288
+ # A unique string that identifies the request and that allows you to
289
+ # retry failed requests without the risk of running the operation
290
+ # twice. `CreatorRequestId` can be any unique string, for example, a
291
+ # date/time stamp.
292
+ #
293
+ # **A suitable default value is auto-generated.** You should normally
294
+ # not need to pass this option.
295
+ # @return [String]
296
+ #
297
+ # @!attribute [rw] name
298
+ # A name that lets you identify the domain list to manage and use it.
299
+ # @return [String]
300
+ #
301
+ # @!attribute [rw] tags
302
+ # A list of the tag keys and values that you want to associate with
303
+ # the domain list.
304
+ # @return [Array<Types::Tag>]
305
+ #
306
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/CreateFirewallDomainListRequest AWS API Documentation
307
+ #
308
+ class CreateFirewallDomainListRequest < Struct.new(
309
+ :creator_request_id,
310
+ :name,
311
+ :tags)
312
+ SENSITIVE = []
313
+ include Aws::Structure
314
+ end
315
+
316
+ # @!attribute [rw] firewall_domain_list
317
+ # The domain list that you just created.
318
+ # @return [Types::FirewallDomainList]
319
+ #
320
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/CreateFirewallDomainListResponse AWS API Documentation
321
+ #
322
+ class CreateFirewallDomainListResponse < Struct.new(
323
+ :firewall_domain_list)
324
+ SENSITIVE = []
325
+ include Aws::Structure
326
+ end
327
+
328
+ # @note When making an API call, you may pass CreateFirewallRuleGroupRequest
329
+ # data as a hash:
330
+ #
331
+ # {
332
+ # creator_request_id: "CreatorRequestId", # required
333
+ # name: "Name", # required
334
+ # tags: [
335
+ # {
336
+ # key: "TagKey", # required
337
+ # value: "TagValue", # required
338
+ # },
339
+ # ],
340
+ # }
341
+ #
342
+ # @!attribute [rw] creator_request_id
343
+ # A unique string defined by you to identify the request. This allows
344
+ # you to retry failed requests without the risk of running the
345
+ # operation twice. This can be any unique string, for example, a
346
+ # timestamp.
347
+ #
348
+ # **A suitable default value is auto-generated.** You should normally
349
+ # not need to pass this option.
350
+ # @return [String]
351
+ #
352
+ # @!attribute [rw] name
353
+ # A name that lets you identify the rule group, to manage and use it.
354
+ # @return [String]
355
+ #
356
+ # @!attribute [rw] tags
357
+ # A list of the tag keys and values that you want to associate with
358
+ # the rule group.
359
+ # @return [Array<Types::Tag>]
360
+ #
361
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/CreateFirewallRuleGroupRequest AWS API Documentation
362
+ #
363
+ class CreateFirewallRuleGroupRequest < Struct.new(
364
+ :creator_request_id,
365
+ :name,
366
+ :tags)
367
+ SENSITIVE = []
368
+ include Aws::Structure
369
+ end
370
+
371
+ # @!attribute [rw] firewall_rule_group
372
+ # A collection of rules used to filter DNS network traffic.
373
+ # @return [Types::FirewallRuleGroup]
374
+ #
375
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/CreateFirewallRuleGroupResponse AWS API Documentation
376
+ #
377
+ class CreateFirewallRuleGroupResponse < Struct.new(
378
+ :firewall_rule_group)
379
+ SENSITIVE = []
380
+ include Aws::Structure
381
+ end
382
+
383
+ # @note When making an API call, you may pass CreateFirewallRuleRequest
384
+ # data as a hash:
385
+ #
386
+ # {
387
+ # creator_request_id: "CreatorRequestId", # required
388
+ # firewall_rule_group_id: "ResourceId", # required
389
+ # firewall_domain_list_id: "ResourceId", # required
390
+ # priority: 1, # required
391
+ # action: "ALLOW", # required, accepts ALLOW, BLOCK, ALERT
392
+ # block_response: "NODATA", # accepts NODATA, NXDOMAIN, OVERRIDE
393
+ # block_override_domain: "BlockOverrideDomain",
394
+ # block_override_dns_type: "CNAME", # accepts CNAME
395
+ # block_override_ttl: 1,
396
+ # name: "Name", # required
397
+ # }
398
+ #
399
+ # @!attribute [rw] creator_request_id
400
+ # A unique string that identifies the request and that allows you to
401
+ # retry failed requests without the risk of running the operation
402
+ # twice. `CreatorRequestId` can be any unique string, for example, a
403
+ # date/time stamp.
404
+ #
405
+ # **A suitable default value is auto-generated.** You should normally
406
+ # not need to pass this option.
407
+ # @return [String]
408
+ #
409
+ # @!attribute [rw] firewall_rule_group_id
410
+ # The unique identifier of the firewall rule group where you want to
411
+ # create the rule.
412
+ # @return [String]
413
+ #
414
+ # @!attribute [rw] firewall_domain_list_id
415
+ # The ID of the domain list that you want to use in the rule.
416
+ # @return [String]
417
+ #
418
+ # @!attribute [rw] priority
419
+ # The setting that determines the processing order of the rule in the
420
+ # rule group. DNS Firewall processes the rules in a rule group by
421
+ # order of priority, starting from the lowest setting.
422
+ #
423
+ # You must specify a unique priority for each rule in a rule group. To
424
+ # make it easier to insert rules later, leave space between the
425
+ # numbers, for example, use 100, 200, and so on. You can change the
426
+ # priority setting for the rules in a rule group at any time.
427
+ # @return [Integer]
428
+ #
429
+ # @!attribute [rw] action
430
+ # The action that DNS Firewall should take on a DNS query when it
431
+ # matches one of the domains in the rule's domain list:
432
+ #
433
+ # * `ALLOW` - Permit the request to go through.
434
+ #
435
+ # * `ALERT` - Permit the request and send metrics and logs to Cloud
436
+ # Watch.
437
+ #
438
+ # * `BLOCK` - Disallow the request. This option requires additional
439
+ # details in the rule's `BlockResponse`.
440
+ # @return [String]
441
+ #
442
+ # @!attribute [rw] block_response
443
+ # The way that you want DNS Firewall to block the request, used with
444
+ # the rule action setting `BLOCK`.
445
+ #
446
+ # * `NODATA` - Respond indicating that the query was successful, but
447
+ # no response is available for it.
448
+ #
449
+ # * `NXDOMAIN` - Respond indicating that the domain name that's in
450
+ # the query doesn't exist.
451
+ #
452
+ # * `OVERRIDE` - Provide a custom override in the response. This
453
+ # option requires custom handling details in the rule's
454
+ # `BlockOverride*` settings.
455
+ #
456
+ # This setting is required if the rule action setting is `BLOCK`.
457
+ # @return [String]
458
+ #
459
+ # @!attribute [rw] block_override_domain
460
+ # The custom DNS record to send back in response to the query. Used
461
+ # for the rule action `BLOCK` with a `BlockResponse` setting of
462
+ # `OVERRIDE`.
463
+ #
464
+ # This setting is required if the `BlockResponse` setting is
465
+ # `OVERRIDE`.
466
+ # @return [String]
467
+ #
468
+ # @!attribute [rw] block_override_dns_type
469
+ # The DNS record's type. This determines the format of the record
470
+ # value that you provided in `BlockOverrideDomain`. Used for the rule
471
+ # action `BLOCK` with a `BlockResponse` setting of `OVERRIDE`.
472
+ #
473
+ # This setting is required if the `BlockResponse` setting is
474
+ # `OVERRIDE`.
475
+ # @return [String]
476
+ #
477
+ # @!attribute [rw] block_override_ttl
478
+ # The recommended amount of time, in seconds, for the DNS resolver or
479
+ # web browser to cache the provided override record. Used for the rule
480
+ # action `BLOCK` with a `BlockResponse` setting of `OVERRIDE`.
481
+ #
482
+ # This setting is required if the `BlockResponse` setting is
483
+ # `OVERRIDE`.
484
+ # @return [Integer]
485
+ #
486
+ # @!attribute [rw] name
487
+ # A name that lets you identify the rule in the rule group.
488
+ # @return [String]
489
+ #
490
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/CreateFirewallRuleRequest AWS API Documentation
491
+ #
492
+ class CreateFirewallRuleRequest < Struct.new(
493
+ :creator_request_id,
494
+ :firewall_rule_group_id,
495
+ :firewall_domain_list_id,
496
+ :priority,
497
+ :action,
498
+ :block_response,
499
+ :block_override_domain,
500
+ :block_override_dns_type,
501
+ :block_override_ttl,
502
+ :name)
503
+ SENSITIVE = []
504
+ include Aws::Structure
505
+ end
506
+
507
+ # @!attribute [rw] firewall_rule
508
+ # The firewall rule that you just created.
509
+ # @return [Types::FirewallRule]
510
+ #
511
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/CreateFirewallRuleResponse AWS API Documentation
512
+ #
513
+ class CreateFirewallRuleResponse < Struct.new(
514
+ :firewall_rule)
515
+ SENSITIVE = []
516
+ include Aws::Structure
517
+ end
518
+
166
519
  # @note When making an API call, you may pass CreateResolverEndpointRequest
167
520
  # data as a hash:
168
521
  #
@@ -187,7 +540,7 @@ module Aws::Route53Resolver
187
540
  #
188
541
  # @!attribute [rw] creator_request_id
189
542
  # A unique string that identifies the request and that allows failed
190
- # requests to be retried without the risk of executing the operation
543
+ # requests to be retried without the risk of running the operation
191
544
  # twice. `CreatorRequestId` can be any unique string, for example, a
192
545
  # date/time stamp.
193
546
  # @return [String]
@@ -270,7 +623,7 @@ module Aws::Route53Resolver
270
623
  # }
271
624
  #
272
625
  # @!attribute [rw] name
273
- # The name that you want to give the query logging configuration
626
+ # The name that you want to give the query logging configuration.
274
627
  # @return [String]
275
628
  #
276
629
  # @!attribute [rw] destination_arn
@@ -298,7 +651,7 @@ module Aws::Route53Resolver
298
651
  #
299
652
  # @!attribute [rw] creator_request_id
300
653
  # A unique string that identifies the request and that allows failed
301
- # requests to be retried without the risk of executing the operation
654
+ # requests to be retried without the risk of running the operation
302
655
  # twice. `CreatorRequestId` can be any unique string, for example, a
303
656
  # date/time stamp.
304
657
  #
@@ -360,7 +713,7 @@ module Aws::Route53Resolver
360
713
  #
361
714
  # @!attribute [rw] creator_request_id
362
715
  # A unique string that identifies the request and that allows failed
363
- # requests to be retried without the risk of executing the operation
716
+ # requests to be retried without the risk of running the operation
364
717
  # twice. `CreatorRequestId` can be any unique string, for example, a
365
718
  # date/time stamp.
366
719
  # @return [String]
@@ -398,7 +751,7 @@ module Aws::Route53Resolver
398
751
  #
399
752
  # @!attribute [rw] target_ips
400
753
  # The IPs that you want Resolver to forward DNS queries to. You can
401
- # specify only IPv4 addresses. Separate IP addresses with a comma.
754
+ # specify only IPv4 addresses. Separate IP addresses with a space.
402
755
  #
403
756
  # `TargetIps` is available only when the value of `Rule type` is
404
757
  # `FORWARD`.
@@ -442,120 +795,252 @@ module Aws::Route53Resolver
442
795
  include Aws::Structure
443
796
  end
444
797
 
445
- # @note When making an API call, you may pass DeleteResolverEndpointRequest
798
+ # @note When making an API call, you may pass DeleteFirewallDomainListRequest
446
799
  # data as a hash:
447
800
  #
448
801
  # {
449
- # resolver_endpoint_id: "ResourceId", # required
802
+ # firewall_domain_list_id: "ResourceId", # required
450
803
  # }
451
804
  #
452
- # @!attribute [rw] resolver_endpoint_id
453
- # The ID of the Resolver endpoint that you want to delete.
805
+ # @!attribute [rw] firewall_domain_list_id
806
+ # The ID of the domain list that you want to delete.
454
807
  # @return [String]
455
808
  #
456
- # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/DeleteResolverEndpointRequest AWS API Documentation
809
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/DeleteFirewallDomainListRequest AWS API Documentation
457
810
  #
458
- class DeleteResolverEndpointRequest < Struct.new(
459
- :resolver_endpoint_id)
811
+ class DeleteFirewallDomainListRequest < Struct.new(
812
+ :firewall_domain_list_id)
460
813
  SENSITIVE = []
461
814
  include Aws::Structure
462
815
  end
463
816
 
464
- # @!attribute [rw] resolver_endpoint
465
- # Information about the `DeleteResolverEndpoint` request, including
466
- # the status of the request.
467
- # @return [Types::ResolverEndpoint]
817
+ # @!attribute [rw] firewall_domain_list
818
+ # The domain list that you just deleted.
819
+ # @return [Types::FirewallDomainList]
468
820
  #
469
- # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/DeleteResolverEndpointResponse AWS API Documentation
821
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/DeleteFirewallDomainListResponse AWS API Documentation
470
822
  #
471
- class DeleteResolverEndpointResponse < Struct.new(
472
- :resolver_endpoint)
823
+ class DeleteFirewallDomainListResponse < Struct.new(
824
+ :firewall_domain_list)
473
825
  SENSITIVE = []
474
826
  include Aws::Structure
475
827
  end
476
828
 
477
- # @note When making an API call, you may pass DeleteResolverQueryLogConfigRequest
829
+ # @note When making an API call, you may pass DeleteFirewallRuleGroupRequest
478
830
  # data as a hash:
479
831
  #
480
832
  # {
481
- # resolver_query_log_config_id: "ResourceId", # required
833
+ # firewall_rule_group_id: "ResourceId", # required
482
834
  # }
483
835
  #
484
- # @!attribute [rw] resolver_query_log_config_id
485
- # The ID of the query logging configuration that you want to delete.
836
+ # @!attribute [rw] firewall_rule_group_id
837
+ # The unique identifier of the firewall rule group that you want to
838
+ # delete.
486
839
  # @return [String]
487
840
  #
488
- # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/DeleteResolverQueryLogConfigRequest AWS API Documentation
841
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/DeleteFirewallRuleGroupRequest AWS API Documentation
489
842
  #
490
- class DeleteResolverQueryLogConfigRequest < Struct.new(
491
- :resolver_query_log_config_id)
843
+ class DeleteFirewallRuleGroupRequest < Struct.new(
844
+ :firewall_rule_group_id)
492
845
  SENSITIVE = []
493
846
  include Aws::Structure
494
847
  end
495
848
 
496
- # @!attribute [rw] resolver_query_log_config
497
- # Information about the query logging configuration that you deleted,
498
- # including the status of the request.
499
- # @return [Types::ResolverQueryLogConfig]
849
+ # @!attribute [rw] firewall_rule_group
850
+ # A collection of rules used to filter DNS network traffic.
851
+ # @return [Types::FirewallRuleGroup]
500
852
  #
501
- # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/DeleteResolverQueryLogConfigResponse AWS API Documentation
853
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/DeleteFirewallRuleGroupResponse AWS API Documentation
502
854
  #
503
- class DeleteResolverQueryLogConfigResponse < Struct.new(
504
- :resolver_query_log_config)
855
+ class DeleteFirewallRuleGroupResponse < Struct.new(
856
+ :firewall_rule_group)
505
857
  SENSITIVE = []
506
858
  include Aws::Structure
507
859
  end
508
860
 
509
- # @note When making an API call, you may pass DeleteResolverRuleRequest
861
+ # @note When making an API call, you may pass DeleteFirewallRuleRequest
510
862
  # data as a hash:
511
863
  #
512
864
  # {
513
- # resolver_rule_id: "ResourceId", # required
865
+ # firewall_rule_group_id: "ResourceId", # required
866
+ # firewall_domain_list_id: "ResourceId", # required
514
867
  # }
515
868
  #
516
- # @!attribute [rw] resolver_rule_id
517
- # The ID of the Resolver rule that you want to delete.
869
+ # @!attribute [rw] firewall_rule_group_id
870
+ # The unique identifier of the firewall rule group that you want to
871
+ # delete the rule from.
518
872
  # @return [String]
519
873
  #
520
- # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/DeleteResolverRuleRequest AWS API Documentation
874
+ # @!attribute [rw] firewall_domain_list_id
875
+ # The ID of the domain list that's used in the rule.
876
+ # @return [String]
521
877
  #
522
- class DeleteResolverRuleRequest < Struct.new(
523
- :resolver_rule_id)
878
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/DeleteFirewallRuleRequest AWS API Documentation
879
+ #
880
+ class DeleteFirewallRuleRequest < Struct.new(
881
+ :firewall_rule_group_id,
882
+ :firewall_domain_list_id)
524
883
  SENSITIVE = []
525
884
  include Aws::Structure
526
885
  end
527
886
 
528
- # @!attribute [rw] resolver_rule
529
- # Information about the `DeleteResolverRule` request, including the
530
- # status of the request.
531
- # @return [Types::ResolverRule]
887
+ # @!attribute [rw] firewall_rule
888
+ # The specification for the firewall rule that you just deleted.
889
+ # @return [Types::FirewallRule]
532
890
  #
533
- # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/DeleteResolverRuleResponse AWS API Documentation
891
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/DeleteFirewallRuleResponse AWS API Documentation
534
892
  #
535
- class DeleteResolverRuleResponse < Struct.new(
536
- :resolver_rule)
893
+ class DeleteFirewallRuleResponse < Struct.new(
894
+ :firewall_rule)
537
895
  SENSITIVE = []
538
896
  include Aws::Structure
539
897
  end
540
898
 
541
- # @note When making an API call, you may pass DisassociateResolverEndpointIpAddressRequest
899
+ # @note When making an API call, you may pass DeleteResolverEndpointRequest
542
900
  # data as a hash:
543
901
  #
544
902
  # {
545
903
  # resolver_endpoint_id: "ResourceId", # required
546
- # ip_address: { # required
547
- # ip_id: "ResourceId",
548
- # subnet_id: "SubnetId",
549
- # ip: "Ip",
550
- # },
551
904
  # }
552
905
  #
553
906
  # @!attribute [rw] resolver_endpoint_id
554
- # The ID of the Resolver endpoint that you want to disassociate an IP
555
- # address from.
907
+ # The ID of the Resolver endpoint that you want to delete.
556
908
  # @return [String]
557
909
  #
558
- # @!attribute [rw] ip_address
910
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/DeleteResolverEndpointRequest AWS API Documentation
911
+ #
912
+ class DeleteResolverEndpointRequest < Struct.new(
913
+ :resolver_endpoint_id)
914
+ SENSITIVE = []
915
+ include Aws::Structure
916
+ end
917
+
918
+ # @!attribute [rw] resolver_endpoint
919
+ # Information about the `DeleteResolverEndpoint` request, including
920
+ # the status of the request.
921
+ # @return [Types::ResolverEndpoint]
922
+ #
923
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/DeleteResolverEndpointResponse AWS API Documentation
924
+ #
925
+ class DeleteResolverEndpointResponse < Struct.new(
926
+ :resolver_endpoint)
927
+ SENSITIVE = []
928
+ include Aws::Structure
929
+ end
930
+
931
+ # @note When making an API call, you may pass DeleteResolverQueryLogConfigRequest
932
+ # data as a hash:
933
+ #
934
+ # {
935
+ # resolver_query_log_config_id: "ResourceId", # required
936
+ # }
937
+ #
938
+ # @!attribute [rw] resolver_query_log_config_id
939
+ # The ID of the query logging configuration that you want to delete.
940
+ # @return [String]
941
+ #
942
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/DeleteResolverQueryLogConfigRequest AWS API Documentation
943
+ #
944
+ class DeleteResolverQueryLogConfigRequest < Struct.new(
945
+ :resolver_query_log_config_id)
946
+ SENSITIVE = []
947
+ include Aws::Structure
948
+ end
949
+
950
+ # @!attribute [rw] resolver_query_log_config
951
+ # Information about the query logging configuration that you deleted,
952
+ # including the status of the request.
953
+ # @return [Types::ResolverQueryLogConfig]
954
+ #
955
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/DeleteResolverQueryLogConfigResponse AWS API Documentation
956
+ #
957
+ class DeleteResolverQueryLogConfigResponse < Struct.new(
958
+ :resolver_query_log_config)
959
+ SENSITIVE = []
960
+ include Aws::Structure
961
+ end
962
+
963
+ # @note When making an API call, you may pass DeleteResolverRuleRequest
964
+ # data as a hash:
965
+ #
966
+ # {
967
+ # resolver_rule_id: "ResourceId", # required
968
+ # }
969
+ #
970
+ # @!attribute [rw] resolver_rule_id
971
+ # The ID of the Resolver rule that you want to delete.
972
+ # @return [String]
973
+ #
974
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/DeleteResolverRuleRequest AWS API Documentation
975
+ #
976
+ class DeleteResolverRuleRequest < Struct.new(
977
+ :resolver_rule_id)
978
+ SENSITIVE = []
979
+ include Aws::Structure
980
+ end
981
+
982
+ # @!attribute [rw] resolver_rule
983
+ # Information about the `DeleteResolverRule` request, including the
984
+ # status of the request.
985
+ # @return [Types::ResolverRule]
986
+ #
987
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/DeleteResolverRuleResponse AWS API Documentation
988
+ #
989
+ class DeleteResolverRuleResponse < Struct.new(
990
+ :resolver_rule)
991
+ SENSITIVE = []
992
+ include Aws::Structure
993
+ end
994
+
995
+ # @note When making an API call, you may pass DisassociateFirewallRuleGroupRequest
996
+ # data as a hash:
997
+ #
998
+ # {
999
+ # firewall_rule_group_association_id: "ResourceId", # required
1000
+ # }
1001
+ #
1002
+ # @!attribute [rw] firewall_rule_group_association_id
1003
+ # The identifier of the FirewallRuleGroupAssociation.
1004
+ # @return [String]
1005
+ #
1006
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/DisassociateFirewallRuleGroupRequest AWS API Documentation
1007
+ #
1008
+ class DisassociateFirewallRuleGroupRequest < Struct.new(
1009
+ :firewall_rule_group_association_id)
1010
+ SENSITIVE = []
1011
+ include Aws::Structure
1012
+ end
1013
+
1014
+ # @!attribute [rw] firewall_rule_group_association
1015
+ # The firewall rule group association that you just removed.
1016
+ # @return [Types::FirewallRuleGroupAssociation]
1017
+ #
1018
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/DisassociateFirewallRuleGroupResponse AWS API Documentation
1019
+ #
1020
+ class DisassociateFirewallRuleGroupResponse < Struct.new(
1021
+ :firewall_rule_group_association)
1022
+ SENSITIVE = []
1023
+ include Aws::Structure
1024
+ end
1025
+
1026
+ # @note When making an API call, you may pass DisassociateResolverEndpointIpAddressRequest
1027
+ # data as a hash:
1028
+ #
1029
+ # {
1030
+ # resolver_endpoint_id: "ResourceId", # required
1031
+ # ip_address: { # required
1032
+ # ip_id: "ResourceId",
1033
+ # subnet_id: "SubnetId",
1034
+ # ip: "Ip",
1035
+ # },
1036
+ # }
1037
+ #
1038
+ # @!attribute [rw] resolver_endpoint_id
1039
+ # The ID of the Resolver endpoint that you want to disassociate an IP
1040
+ # address from.
1041
+ # @return [String]
1042
+ #
1043
+ # @!attribute [rw] ip_address
559
1044
  # The IPv4 address that you want to remove from a Resolver endpoint.
560
1045
  # @return [Types::IpAddressUpdate]
561
1046
  #
@@ -889,128 +1374,767 @@ module Aws::Route53Resolver
889
1374
  include Aws::Structure
890
1375
  end
891
1376
 
892
- # @note When making an API call, you may pass GetResolverDnssecConfigRequest
893
- # data as a hash:
1377
+ # Configuration of the firewall behavior provided by DNS Firewall for a
1378
+ # single VPC from Amazon Virtual Private Cloud (Amazon VPC).
894
1379
  #
895
- # {
896
- # resource_id: "ResourceId", # required
897
- # }
1380
+ # @!attribute [rw] id
1381
+ # The ID of the firewall configuration.
1382
+ # @return [String]
898
1383
  #
899
1384
  # @!attribute [rw] resource_id
900
- # The ID of the virtual private cloud (VPC) for the DNSSEC validation
901
- # status.
1385
+ # The ID of the VPC that this firewall configuration applies to.
902
1386
  # @return [String]
903
1387
  #
904
- # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/GetResolverDnssecConfigRequest AWS API Documentation
1388
+ # @!attribute [rw] owner_id
1389
+ # The AWS account ID of the owner of the VPC that this firewall
1390
+ # configuration applies to.
1391
+ # @return [String]
905
1392
  #
906
- class GetResolverDnssecConfigRequest < Struct.new(
907
- :resource_id)
908
- SENSITIVE = []
909
- include Aws::Structure
910
- end
911
-
912
- # @!attribute [rw] resolver_dnssec_config
913
- # The information about a configuration for DNSSEC validation.
914
- # @return [Types::ResolverDnssecConfig]
1393
+ # @!attribute [rw] firewall_fail_open
1394
+ # Determines how DNS Firewall operates during failures, for example
1395
+ # when all traffic that is sent to DNS Firewall fails to receive a
1396
+ # reply.
915
1397
  #
916
- # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/GetResolverDnssecConfigResponse AWS API Documentation
1398
+ # * By default, fail open is disabled, which means the failure mode is
1399
+ # closed. This approach favors security over availability. DNS
1400
+ # Firewall returns a failure error when it is unable to properly
1401
+ # evaluate a query.
917
1402
  #
918
- class GetResolverDnssecConfigResponse < Struct.new(
919
- :resolver_dnssec_config)
1403
+ # * If you enable this option, the failure mode is open. This approach
1404
+ # favors availability over security. DNS Firewall allows queries to
1405
+ # proceed if it is unable to properly evaluate them.
1406
+ #
1407
+ # This behavior is only enforced for VPCs that have at least one DNS
1408
+ # Firewall rule group association.
1409
+ # @return [String]
1410
+ #
1411
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/FirewallConfig AWS API Documentation
1412
+ #
1413
+ class FirewallConfig < Struct.new(
1414
+ :id,
1415
+ :resource_id,
1416
+ :owner_id,
1417
+ :firewall_fail_open)
920
1418
  SENSITIVE = []
921
1419
  include Aws::Structure
922
1420
  end
923
1421
 
924
- # @note When making an API call, you may pass GetResolverEndpointRequest
925
- # data as a hash:
1422
+ # High-level information about a list of firewall domains for use in a
1423
+ # FirewallRule. This is returned by GetFirewallDomainList.
926
1424
  #
927
- # {
928
- # resolver_endpoint_id: "ResourceId", # required
929
- # }
1425
+ # To retrieve the domains that are defined for this domain list, call
1426
+ # ListFirewallDomains.
930
1427
  #
931
- # @!attribute [rw] resolver_endpoint_id
932
- # The ID of the Resolver endpoint that you want to get information
933
- # about.
1428
+ # @!attribute [rw] id
1429
+ # The ID of the domain list.
934
1430
  # @return [String]
935
1431
  #
936
- # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/GetResolverEndpointRequest AWS API Documentation
1432
+ # @!attribute [rw] arn
1433
+ # The Amazon Resource Name (ARN) of the firewall domain list.
1434
+ # @return [String]
937
1435
  #
938
- class GetResolverEndpointRequest < Struct.new(
939
- :resolver_endpoint_id)
940
- SENSITIVE = []
941
- include Aws::Structure
942
- end
943
-
944
- # @!attribute [rw] resolver_endpoint
945
- # Information about the Resolver endpoint that you specified in a
946
- # `GetResolverEndpoint` request.
947
- # @return [Types::ResolverEndpoint]
1436
+ # @!attribute [rw] name
1437
+ # The name of the domain list.
1438
+ # @return [String]
948
1439
  #
949
- # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/GetResolverEndpointResponse AWS API Documentation
1440
+ # @!attribute [rw] domain_count
1441
+ # The number of domain names that are specified in the domain list.
1442
+ # @return [Integer]
950
1443
  #
951
- class GetResolverEndpointResponse < Struct.new(
952
- :resolver_endpoint)
953
- SENSITIVE = []
954
- include Aws::Structure
955
- end
956
-
957
- # @note When making an API call, you may pass GetResolverQueryLogConfigAssociationRequest
958
- # data as a hash:
1444
+ # @!attribute [rw] status
1445
+ # The status of the domain list.
1446
+ # @return [String]
959
1447
  #
960
- # {
961
- # resolver_query_log_config_association_id: "ResourceId", # required
962
- # }
1448
+ # @!attribute [rw] status_message
1449
+ # Additional information about the status of the list, if available.
1450
+ # @return [String]
963
1451
  #
964
- # @!attribute [rw] resolver_query_log_config_association_id
965
- # The ID of the Resolver query logging configuration association that
966
- # you want to get information about.
1452
+ # @!attribute [rw] managed_owner_name
1453
+ # The owner of the list, used only for lists that are not managed by
1454
+ # you. For example, the managed domain list
1455
+ # `AWSManagedDomainsMalwareDomainList` has the managed owner name
1456
+ # `Route 53 Resolver DNS Firewall`.
967
1457
  # @return [String]
968
1458
  #
969
- # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/GetResolverQueryLogConfigAssociationRequest AWS API Documentation
1459
+ # @!attribute [rw] creator_request_id
1460
+ # A unique string defined by you to identify the request. This allows
1461
+ # you to retry failed requests without the risk of running the
1462
+ # operation twice. This can be any unique string, for example, a
1463
+ # timestamp.
1464
+ # @return [String]
970
1465
  #
971
- class GetResolverQueryLogConfigAssociationRequest < Struct.new(
972
- :resolver_query_log_config_association_id)
973
- SENSITIVE = []
974
- include Aws::Structure
975
- end
976
-
977
- # @!attribute [rw] resolver_query_log_config_association
978
- # Information about the Resolver query logging configuration
979
- # association that you specified in a `GetQueryLogConfigAssociation`
980
- # request.
981
- # @return [Types::ResolverQueryLogConfigAssociation]
1466
+ # @!attribute [rw] creation_time
1467
+ # The date and time that the domain list was created, in Unix time
1468
+ # format and Coordinated Universal Time (UTC).
1469
+ # @return [String]
982
1470
  #
983
- # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/GetResolverQueryLogConfigAssociationResponse AWS API Documentation
1471
+ # @!attribute [rw] modification_time
1472
+ # The date and time that the domain list was last modified, in Unix
1473
+ # time format and Coordinated Universal Time (UTC).
1474
+ # @return [String]
984
1475
  #
985
- class GetResolverQueryLogConfigAssociationResponse < Struct.new(
986
- :resolver_query_log_config_association)
1476
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/FirewallDomainList AWS API Documentation
1477
+ #
1478
+ class FirewallDomainList < Struct.new(
1479
+ :id,
1480
+ :arn,
1481
+ :name,
1482
+ :domain_count,
1483
+ :status,
1484
+ :status_message,
1485
+ :managed_owner_name,
1486
+ :creator_request_id,
1487
+ :creation_time,
1488
+ :modification_time)
987
1489
  SENSITIVE = []
988
1490
  include Aws::Structure
989
1491
  end
990
1492
 
991
- # @note When making an API call, you may pass GetResolverQueryLogConfigPolicyRequest
992
- # data as a hash:
1493
+ # Minimal high-level information for a firewall domain list. The action
1494
+ # ListFirewallDomainLists returns an array of these objects.
993
1495
  #
994
- # {
995
- # arn: "Arn", # required
996
- # }
1496
+ # To retrieve full information for a firewall domain list, call
1497
+ # GetFirewallDomainList and ListFirewallDomains.
1498
+ #
1499
+ # @!attribute [rw] id
1500
+ # The ID of the domain list.
1501
+ # @return [String]
997
1502
  #
998
1503
  # @!attribute [rw] arn
999
- # The ARN of the query logging configuration that you want to get the
1000
- # query logging policy for.
1504
+ # The Amazon Resource Name (ARN) of the firewall domain list metadata.
1001
1505
  # @return [String]
1002
1506
  #
1003
- # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/GetResolverQueryLogConfigPolicyRequest AWS API Documentation
1507
+ # @!attribute [rw] name
1508
+ # The name of the domain list.
1509
+ # @return [String]
1004
1510
  #
1005
- class GetResolverQueryLogConfigPolicyRequest < Struct.new(
1006
- :arn)
1511
+ # @!attribute [rw] creator_request_id
1512
+ # A unique string defined by you to identify the request. This allows
1513
+ # you to retry failed requests without the risk of running the
1514
+ # operation twice. This can be any unique string, for example, a
1515
+ # timestamp.
1516
+ # @return [String]
1517
+ #
1518
+ # @!attribute [rw] managed_owner_name
1519
+ # The owner of the list, used only for lists that are not managed by
1520
+ # you. For example, the managed domain list
1521
+ # `AWSManagedDomainsMalwareDomainList` has the managed owner name
1522
+ # `Route 53 Resolver DNS Firewall`.
1523
+ # @return [String]
1524
+ #
1525
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/FirewallDomainListMetadata AWS API Documentation
1526
+ #
1527
+ class FirewallDomainListMetadata < Struct.new(
1528
+ :id,
1529
+ :arn,
1530
+ :name,
1531
+ :creator_request_id,
1532
+ :managed_owner_name)
1007
1533
  SENSITIVE = []
1008
1534
  include Aws::Structure
1009
1535
  end
1010
1536
 
1011
- # @!attribute [rw] resolver_query_log_config_policy
1012
- # Information about the query logging policy for the query logging
1013
- # configuration that you specified in a
1537
+ # A single firewall rule in a rule group.
1538
+ #
1539
+ # @!attribute [rw] firewall_rule_group_id
1540
+ # The unique identifier of the firewall rule group of the rule.
1541
+ # @return [String]
1542
+ #
1543
+ # @!attribute [rw] firewall_domain_list_id
1544
+ # The ID of the domain list that's used in the rule.
1545
+ # @return [String]
1546
+ #
1547
+ # @!attribute [rw] name
1548
+ # The name of the rule.
1549
+ # @return [String]
1550
+ #
1551
+ # @!attribute [rw] priority
1552
+ # The priority of the rule in the rule group. This value must be
1553
+ # unique within the rule group. DNS Firewall processes the rules in a
1554
+ # rule group by order of priority, starting from the lowest setting.
1555
+ # @return [Integer]
1556
+ #
1557
+ # @!attribute [rw] action
1558
+ # The action that DNS Firewall should take on a DNS query when it
1559
+ # matches one of the domains in the rule's domain list:
1560
+ #
1561
+ # * `ALLOW` - Permit the request to go through.
1562
+ #
1563
+ # * `ALERT` - Permit the request to go through but send an alert to
1564
+ # the logs.
1565
+ #
1566
+ # * `BLOCK` - Disallow the request. If this is specified, additional
1567
+ # handling details are provided in the rule's `BlockResponse`
1568
+ # setting.
1569
+ # @return [String]
1570
+ #
1571
+ # @!attribute [rw] block_response
1572
+ # The way that you want DNS Firewall to block the request. Used for
1573
+ # the rule action setting `BLOCK`.
1574
+ #
1575
+ # * `NODATA` - Respond indicating that the query was successful, but
1576
+ # no response is available for it.
1577
+ #
1578
+ # * `NXDOMAIN` - Respond indicating that the domain name that's in
1579
+ # the query doesn't exist.
1580
+ #
1581
+ # * `OVERRIDE` - Provide a custom override in the response. This
1582
+ # option requires custom handling details in the rule's
1583
+ # `BlockOverride*` settings.
1584
+ # @return [String]
1585
+ #
1586
+ # @!attribute [rw] block_override_domain
1587
+ # The custom DNS record to send back in response to the query. Used
1588
+ # for the rule action `BLOCK` with a `BlockResponse` setting of
1589
+ # `OVERRIDE`.
1590
+ # @return [String]
1591
+ #
1592
+ # @!attribute [rw] block_override_dns_type
1593
+ # The DNS record's type. This determines the format of the record
1594
+ # value that you provided in `BlockOverrideDomain`. Used for the rule
1595
+ # action `BLOCK` with a `BlockResponse` setting of `OVERRIDE`.
1596
+ # @return [String]
1597
+ #
1598
+ # @!attribute [rw] block_override_ttl
1599
+ # The recommended amount of time, in seconds, for the DNS resolver or
1600
+ # web browser to cache the provided override record. Used for the rule
1601
+ # action `BLOCK` with a `BlockResponse` setting of `OVERRIDE`.
1602
+ # @return [Integer]
1603
+ #
1604
+ # @!attribute [rw] creator_request_id
1605
+ # A unique string defined by you to identify the request. This allows
1606
+ # you to retry failed requests without the risk of executing the
1607
+ # operation twice. This can be any unique string, for example, a
1608
+ # timestamp.
1609
+ # @return [String]
1610
+ #
1611
+ # @!attribute [rw] creation_time
1612
+ # The date and time that the rule was created, in Unix time format and
1613
+ # Coordinated Universal Time (UTC).
1614
+ # @return [String]
1615
+ #
1616
+ # @!attribute [rw] modification_time
1617
+ # The date and time that the rule was last modified, in Unix time
1618
+ # format and Coordinated Universal Time (UTC).
1619
+ # @return [String]
1620
+ #
1621
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/FirewallRule AWS API Documentation
1622
+ #
1623
+ class FirewallRule < Struct.new(
1624
+ :firewall_rule_group_id,
1625
+ :firewall_domain_list_id,
1626
+ :name,
1627
+ :priority,
1628
+ :action,
1629
+ :block_response,
1630
+ :block_override_domain,
1631
+ :block_override_dns_type,
1632
+ :block_override_ttl,
1633
+ :creator_request_id,
1634
+ :creation_time,
1635
+ :modification_time)
1636
+ SENSITIVE = []
1637
+ include Aws::Structure
1638
+ end
1639
+
1640
+ # High-level information for a firewall rule group. A firewall rule
1641
+ # group is a collection of rules that DNS Firewall uses to filter DNS
1642
+ # network traffic for a VPC. To retrieve the rules for the rule group,
1643
+ # call ListFirewallRules.
1644
+ #
1645
+ # @!attribute [rw] id
1646
+ # The ID of the rule group.
1647
+ # @return [String]
1648
+ #
1649
+ # @!attribute [rw] arn
1650
+ # The ARN (Amazon Resource Name) of the rule group.
1651
+ # @return [String]
1652
+ #
1653
+ # @!attribute [rw] name
1654
+ # The name of the rule group.
1655
+ # @return [String]
1656
+ #
1657
+ # @!attribute [rw] rule_count
1658
+ # The number of rules in the rule group.
1659
+ # @return [Integer]
1660
+ #
1661
+ # @!attribute [rw] status
1662
+ # The status of the domain list.
1663
+ # @return [String]
1664
+ #
1665
+ # @!attribute [rw] status_message
1666
+ # Additional information about the status of the rule group, if
1667
+ # available.
1668
+ # @return [String]
1669
+ #
1670
+ # @!attribute [rw] owner_id
1671
+ # The AWS account ID for the account that created the rule group. When
1672
+ # a rule group is shared with your account, this is the account that
1673
+ # has shared the rule group with you.
1674
+ # @return [String]
1675
+ #
1676
+ # @!attribute [rw] creator_request_id
1677
+ # A unique string defined by you to identify the request. This allows
1678
+ # you to retry failed requests without the risk of running the
1679
+ # operation twice. This can be any unique string, for example, a
1680
+ # timestamp.
1681
+ # @return [String]
1682
+ #
1683
+ # @!attribute [rw] share_status
1684
+ # Whether the rule group is shared with other AWS accounts, or was
1685
+ # shared with the current account by another AWS account. Sharing is
1686
+ # configured through AWS Resource Access Manager (AWS RAM).
1687
+ # @return [String]
1688
+ #
1689
+ # @!attribute [rw] creation_time
1690
+ # The date and time that the rule group was created, in Unix time
1691
+ # format and Coordinated Universal Time (UTC).
1692
+ # @return [String]
1693
+ #
1694
+ # @!attribute [rw] modification_time
1695
+ # The date and time that the rule group was last modified, in Unix
1696
+ # time format and Coordinated Universal Time (UTC).
1697
+ # @return [String]
1698
+ #
1699
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/FirewallRuleGroup AWS API Documentation
1700
+ #
1701
+ class FirewallRuleGroup < Struct.new(
1702
+ :id,
1703
+ :arn,
1704
+ :name,
1705
+ :rule_count,
1706
+ :status,
1707
+ :status_message,
1708
+ :owner_id,
1709
+ :creator_request_id,
1710
+ :share_status,
1711
+ :creation_time,
1712
+ :modification_time)
1713
+ SENSITIVE = []
1714
+ include Aws::Structure
1715
+ end
1716
+
1717
+ # An association between a firewall rule group and a VPC, which enables
1718
+ # DNS filtering for the VPC.
1719
+ #
1720
+ # @!attribute [rw] id
1721
+ # The identifier for the association.
1722
+ # @return [String]
1723
+ #
1724
+ # @!attribute [rw] arn
1725
+ # The Amazon Resource Name (ARN) of the firewall rule group
1726
+ # association.
1727
+ # @return [String]
1728
+ #
1729
+ # @!attribute [rw] firewall_rule_group_id
1730
+ # The unique identifier of the firewall rule group.
1731
+ # @return [String]
1732
+ #
1733
+ # @!attribute [rw] vpc_id
1734
+ # The unique identifier of the VPC that is associated with the rule
1735
+ # group.
1736
+ # @return [String]
1737
+ #
1738
+ # @!attribute [rw] name
1739
+ # The name of the association.
1740
+ # @return [String]
1741
+ #
1742
+ # @!attribute [rw] priority
1743
+ # The setting that determines the processing order of the rule group
1744
+ # among the rule groups that are associated with a single VPC. DNS
1745
+ # Firewall filters VPC traffic starting from rule group with the
1746
+ # lowest numeric priority setting.
1747
+ # @return [Integer]
1748
+ #
1749
+ # @!attribute [rw] mutation_protection
1750
+ # If enabled, this setting disallows modification or removal of the
1751
+ # association, to help prevent against accidentally altering DNS
1752
+ # firewall protections.
1753
+ # @return [String]
1754
+ #
1755
+ # @!attribute [rw] managed_owner_name
1756
+ # The owner of the association, used only for associations that are
1757
+ # not managed by you. If you use AWS Firewall Manager to manage your
1758
+ # DNS Firewalls, then this reports Firewall Manager as the managed
1759
+ # owner.
1760
+ # @return [String]
1761
+ #
1762
+ # @!attribute [rw] status
1763
+ # The current status of the association.
1764
+ # @return [String]
1765
+ #
1766
+ # @!attribute [rw] status_message
1767
+ # Additional information about the status of the response, if
1768
+ # available.
1769
+ # @return [String]
1770
+ #
1771
+ # @!attribute [rw] creator_request_id
1772
+ # A unique string defined by you to identify the request. This allows
1773
+ # you to retry failed requests without the risk of running the
1774
+ # operation twice. This can be any unique string, for example, a
1775
+ # timestamp.
1776
+ # @return [String]
1777
+ #
1778
+ # @!attribute [rw] creation_time
1779
+ # The date and time that the association was created, in Unix time
1780
+ # format and Coordinated Universal Time (UTC).
1781
+ # @return [String]
1782
+ #
1783
+ # @!attribute [rw] modification_time
1784
+ # The date and time that the association was last modified, in Unix
1785
+ # time format and Coordinated Universal Time (UTC).
1786
+ # @return [String]
1787
+ #
1788
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/FirewallRuleGroupAssociation AWS API Documentation
1789
+ #
1790
+ class FirewallRuleGroupAssociation < Struct.new(
1791
+ :id,
1792
+ :arn,
1793
+ :firewall_rule_group_id,
1794
+ :vpc_id,
1795
+ :name,
1796
+ :priority,
1797
+ :mutation_protection,
1798
+ :managed_owner_name,
1799
+ :status,
1800
+ :status_message,
1801
+ :creator_request_id,
1802
+ :creation_time,
1803
+ :modification_time)
1804
+ SENSITIVE = []
1805
+ include Aws::Structure
1806
+ end
1807
+
1808
+ # Minimal high-level information for a firewall rule group. The action
1809
+ # ListFirewallRuleGroups returns an array of these objects.
1810
+ #
1811
+ # To retrieve full information for a firewall rule group, call
1812
+ # GetFirewallRuleGroup and ListFirewallRules.
1813
+ #
1814
+ # @!attribute [rw] id
1815
+ # The ID of the rule group.
1816
+ # @return [String]
1817
+ #
1818
+ # @!attribute [rw] arn
1819
+ # The ARN (Amazon Resource Name) of the rule group.
1820
+ # @return [String]
1821
+ #
1822
+ # @!attribute [rw] name
1823
+ # The name of the rule group.
1824
+ # @return [String]
1825
+ #
1826
+ # @!attribute [rw] owner_id
1827
+ # The AWS account ID for the account that created the rule group. When
1828
+ # a rule group is shared with your account, this is the account that
1829
+ # has shared the rule group with you.
1830
+ # @return [String]
1831
+ #
1832
+ # @!attribute [rw] creator_request_id
1833
+ # A unique string defined by you to identify the request. This allows
1834
+ # you to retry failed requests without the risk of running the
1835
+ # operation twice. This can be any unique string, for example, a
1836
+ # timestamp.
1837
+ # @return [String]
1838
+ #
1839
+ # @!attribute [rw] share_status
1840
+ # Whether the rule group is shared with other AWS accounts, or was
1841
+ # shared with the current account by another AWS account. Sharing is
1842
+ # configured through AWS Resource Access Manager (AWS RAM).
1843
+ # @return [String]
1844
+ #
1845
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/FirewallRuleGroupMetadata AWS API Documentation
1846
+ #
1847
+ class FirewallRuleGroupMetadata < Struct.new(
1848
+ :id,
1849
+ :arn,
1850
+ :name,
1851
+ :owner_id,
1852
+ :creator_request_id,
1853
+ :share_status)
1854
+ SENSITIVE = []
1855
+ include Aws::Structure
1856
+ end
1857
+
1858
+ # @note When making an API call, you may pass GetFirewallConfigRequest
1859
+ # data as a hash:
1860
+ #
1861
+ # {
1862
+ # resource_id: "ResourceId", # required
1863
+ # }
1864
+ #
1865
+ # @!attribute [rw] resource_id
1866
+ # The ID of the VPC from Amazon VPC that the configuration is for.
1867
+ # @return [String]
1868
+ #
1869
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/GetFirewallConfigRequest AWS API Documentation
1870
+ #
1871
+ class GetFirewallConfigRequest < Struct.new(
1872
+ :resource_id)
1873
+ SENSITIVE = []
1874
+ include Aws::Structure
1875
+ end
1876
+
1877
+ # @!attribute [rw] firewall_config
1878
+ # Configuration of the firewall behavior provided by DNS Firewall for
1879
+ # a single VPC from AmazonVPC.
1880
+ # @return [Types::FirewallConfig]
1881
+ #
1882
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/GetFirewallConfigResponse AWS API Documentation
1883
+ #
1884
+ class GetFirewallConfigResponse < Struct.new(
1885
+ :firewall_config)
1886
+ SENSITIVE = []
1887
+ include Aws::Structure
1888
+ end
1889
+
1890
+ # @note When making an API call, you may pass GetFirewallDomainListRequest
1891
+ # data as a hash:
1892
+ #
1893
+ # {
1894
+ # firewall_domain_list_id: "ResourceId", # required
1895
+ # }
1896
+ #
1897
+ # @!attribute [rw] firewall_domain_list_id
1898
+ # The ID of the domain list.
1899
+ # @return [String]
1900
+ #
1901
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/GetFirewallDomainListRequest AWS API Documentation
1902
+ #
1903
+ class GetFirewallDomainListRequest < Struct.new(
1904
+ :firewall_domain_list_id)
1905
+ SENSITIVE = []
1906
+ include Aws::Structure
1907
+ end
1908
+
1909
+ # @!attribute [rw] firewall_domain_list
1910
+ # The domain list that you requested.
1911
+ # @return [Types::FirewallDomainList]
1912
+ #
1913
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/GetFirewallDomainListResponse AWS API Documentation
1914
+ #
1915
+ class GetFirewallDomainListResponse < Struct.new(
1916
+ :firewall_domain_list)
1917
+ SENSITIVE = []
1918
+ include Aws::Structure
1919
+ end
1920
+
1921
+ # @note When making an API call, you may pass GetFirewallRuleGroupAssociationRequest
1922
+ # data as a hash:
1923
+ #
1924
+ # {
1925
+ # firewall_rule_group_association_id: "ResourceId", # required
1926
+ # }
1927
+ #
1928
+ # @!attribute [rw] firewall_rule_group_association_id
1929
+ # The identifier of the FirewallRuleGroupAssociation.
1930
+ # @return [String]
1931
+ #
1932
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/GetFirewallRuleGroupAssociationRequest AWS API Documentation
1933
+ #
1934
+ class GetFirewallRuleGroupAssociationRequest < Struct.new(
1935
+ :firewall_rule_group_association_id)
1936
+ SENSITIVE = []
1937
+ include Aws::Structure
1938
+ end
1939
+
1940
+ # @!attribute [rw] firewall_rule_group_association
1941
+ # The association that you requested.
1942
+ # @return [Types::FirewallRuleGroupAssociation]
1943
+ #
1944
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/GetFirewallRuleGroupAssociationResponse AWS API Documentation
1945
+ #
1946
+ class GetFirewallRuleGroupAssociationResponse < Struct.new(
1947
+ :firewall_rule_group_association)
1948
+ SENSITIVE = []
1949
+ include Aws::Structure
1950
+ end
1951
+
1952
+ # @note When making an API call, you may pass GetFirewallRuleGroupPolicyRequest
1953
+ # data as a hash:
1954
+ #
1955
+ # {
1956
+ # arn: "Arn", # required
1957
+ # }
1958
+ #
1959
+ # @!attribute [rw] arn
1960
+ # The ARN (Amazon Resource Name) for the rule group.
1961
+ # @return [String]
1962
+ #
1963
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/GetFirewallRuleGroupPolicyRequest AWS API Documentation
1964
+ #
1965
+ class GetFirewallRuleGroupPolicyRequest < Struct.new(
1966
+ :arn)
1967
+ SENSITIVE = []
1968
+ include Aws::Structure
1969
+ end
1970
+
1971
+ # @!attribute [rw] firewall_rule_group_policy
1972
+ # The AWS Identity and Access Management (AWS IAM) policy for sharing
1973
+ # the specified rule group. You can use the policy to share the rule
1974
+ # group using AWS Resource Access Manager (AWS RAM).
1975
+ # @return [String]
1976
+ #
1977
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/GetFirewallRuleGroupPolicyResponse AWS API Documentation
1978
+ #
1979
+ class GetFirewallRuleGroupPolicyResponse < Struct.new(
1980
+ :firewall_rule_group_policy)
1981
+ SENSITIVE = []
1982
+ include Aws::Structure
1983
+ end
1984
+
1985
+ # @note When making an API call, you may pass GetFirewallRuleGroupRequest
1986
+ # data as a hash:
1987
+ #
1988
+ # {
1989
+ # firewall_rule_group_id: "ResourceId", # required
1990
+ # }
1991
+ #
1992
+ # @!attribute [rw] firewall_rule_group_id
1993
+ # The unique identifier of the firewall rule group.
1994
+ # @return [String]
1995
+ #
1996
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/GetFirewallRuleGroupRequest AWS API Documentation
1997
+ #
1998
+ class GetFirewallRuleGroupRequest < Struct.new(
1999
+ :firewall_rule_group_id)
2000
+ SENSITIVE = []
2001
+ include Aws::Structure
2002
+ end
2003
+
2004
+ # @!attribute [rw] firewall_rule_group
2005
+ # A collection of rules used to filter DNS network traffic.
2006
+ # @return [Types::FirewallRuleGroup]
2007
+ #
2008
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/GetFirewallRuleGroupResponse AWS API Documentation
2009
+ #
2010
+ class GetFirewallRuleGroupResponse < Struct.new(
2011
+ :firewall_rule_group)
2012
+ SENSITIVE = []
2013
+ include Aws::Structure
2014
+ end
2015
+
2016
+ # @note When making an API call, you may pass GetResolverDnssecConfigRequest
2017
+ # data as a hash:
2018
+ #
2019
+ # {
2020
+ # resource_id: "ResourceId", # required
2021
+ # }
2022
+ #
2023
+ # @!attribute [rw] resource_id
2024
+ # The ID of the virtual private cloud (VPC) for the DNSSEC validation
2025
+ # status.
2026
+ # @return [String]
2027
+ #
2028
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/GetResolverDnssecConfigRequest AWS API Documentation
2029
+ #
2030
+ class GetResolverDnssecConfigRequest < Struct.new(
2031
+ :resource_id)
2032
+ SENSITIVE = []
2033
+ include Aws::Structure
2034
+ end
2035
+
2036
+ # @!attribute [rw] resolver_dnssec_config
2037
+ # The information about a configuration for DNSSEC validation.
2038
+ # @return [Types::ResolverDnssecConfig]
2039
+ #
2040
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/GetResolverDnssecConfigResponse AWS API Documentation
2041
+ #
2042
+ class GetResolverDnssecConfigResponse < Struct.new(
2043
+ :resolver_dnssec_config)
2044
+ SENSITIVE = []
2045
+ include Aws::Structure
2046
+ end
2047
+
2048
+ # @note When making an API call, you may pass GetResolverEndpointRequest
2049
+ # data as a hash:
2050
+ #
2051
+ # {
2052
+ # resolver_endpoint_id: "ResourceId", # required
2053
+ # }
2054
+ #
2055
+ # @!attribute [rw] resolver_endpoint_id
2056
+ # The ID of the Resolver endpoint that you want to get information
2057
+ # about.
2058
+ # @return [String]
2059
+ #
2060
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/GetResolverEndpointRequest AWS API Documentation
2061
+ #
2062
+ class GetResolverEndpointRequest < Struct.new(
2063
+ :resolver_endpoint_id)
2064
+ SENSITIVE = []
2065
+ include Aws::Structure
2066
+ end
2067
+
2068
+ # @!attribute [rw] resolver_endpoint
2069
+ # Information about the Resolver endpoint that you specified in a
2070
+ # `GetResolverEndpoint` request.
2071
+ # @return [Types::ResolverEndpoint]
2072
+ #
2073
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/GetResolverEndpointResponse AWS API Documentation
2074
+ #
2075
+ class GetResolverEndpointResponse < Struct.new(
2076
+ :resolver_endpoint)
2077
+ SENSITIVE = []
2078
+ include Aws::Structure
2079
+ end
2080
+
2081
+ # @note When making an API call, you may pass GetResolverQueryLogConfigAssociationRequest
2082
+ # data as a hash:
2083
+ #
2084
+ # {
2085
+ # resolver_query_log_config_association_id: "ResourceId", # required
2086
+ # }
2087
+ #
2088
+ # @!attribute [rw] resolver_query_log_config_association_id
2089
+ # The ID of the Resolver query logging configuration association that
2090
+ # you want to get information about.
2091
+ # @return [String]
2092
+ #
2093
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/GetResolverQueryLogConfigAssociationRequest AWS API Documentation
2094
+ #
2095
+ class GetResolverQueryLogConfigAssociationRequest < Struct.new(
2096
+ :resolver_query_log_config_association_id)
2097
+ SENSITIVE = []
2098
+ include Aws::Structure
2099
+ end
2100
+
2101
+ # @!attribute [rw] resolver_query_log_config_association
2102
+ # Information about the Resolver query logging configuration
2103
+ # association that you specified in a `GetQueryLogConfigAssociation`
2104
+ # request.
2105
+ # @return [Types::ResolverQueryLogConfigAssociation]
2106
+ #
2107
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/GetResolverQueryLogConfigAssociationResponse AWS API Documentation
2108
+ #
2109
+ class GetResolverQueryLogConfigAssociationResponse < Struct.new(
2110
+ :resolver_query_log_config_association)
2111
+ SENSITIVE = []
2112
+ include Aws::Structure
2113
+ end
2114
+
2115
+ # @note When making an API call, you may pass GetResolverQueryLogConfigPolicyRequest
2116
+ # data as a hash:
2117
+ #
2118
+ # {
2119
+ # arn: "Arn", # required
2120
+ # }
2121
+ #
2122
+ # @!attribute [rw] arn
2123
+ # The ARN of the query logging configuration that you want to get the
2124
+ # query logging policy for.
2125
+ # @return [String]
2126
+ #
2127
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/GetResolverQueryLogConfigPolicyRequest AWS API Documentation
2128
+ #
2129
+ class GetResolverQueryLogConfigPolicyRequest < Struct.new(
2130
+ :arn)
2131
+ SENSITIVE = []
2132
+ include Aws::Structure
2133
+ end
2134
+
2135
+ # @!attribute [rw] resolver_query_log_config_policy
2136
+ # Information about the query logging policy for the query logging
2137
+ # configuration that you specified in a
1014
2138
  # `GetResolverQueryLogConfigPolicy` request.
1015
2139
  # @return [String]
1016
2140
  #
@@ -1153,6 +2277,72 @@ module Aws::Route53Resolver
1153
2277
  include Aws::Structure
1154
2278
  end
1155
2279
 
2280
+ # @note When making an API call, you may pass ImportFirewallDomainsRequest
2281
+ # data as a hash:
2282
+ #
2283
+ # {
2284
+ # firewall_domain_list_id: "ResourceId", # required
2285
+ # operation: "REPLACE", # required, accepts REPLACE
2286
+ # domain_file_url: "DomainListFileUrl", # required
2287
+ # }
2288
+ #
2289
+ # @!attribute [rw] firewall_domain_list_id
2290
+ # The ID of the domain list that you want to modify with the import
2291
+ # operation.
2292
+ # @return [String]
2293
+ #
2294
+ # @!attribute [rw] operation
2295
+ # What you want DNS Firewall to do with the domains that are listed in
2296
+ # the file. This must be set to `REPLACE`, which updates the domain
2297
+ # list to exactly match the list in the file.
2298
+ # @return [String]
2299
+ #
2300
+ # @!attribute [rw] domain_file_url
2301
+ # The fully qualified URL or URI of the file stored in Amazon Simple
2302
+ # Storage Service (Amazon S3) that contains the list of domains to
2303
+ # import.
2304
+ #
2305
+ # The file must be in an S3 bucket that's in the same Region as your
2306
+ # DNS Firewall. The file must be a text file and must contain a single
2307
+ # domain per line.
2308
+ # @return [String]
2309
+ #
2310
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/ImportFirewallDomainsRequest AWS API Documentation
2311
+ #
2312
+ class ImportFirewallDomainsRequest < Struct.new(
2313
+ :firewall_domain_list_id,
2314
+ :operation,
2315
+ :domain_file_url)
2316
+ SENSITIVE = []
2317
+ include Aws::Structure
2318
+ end
2319
+
2320
+ # @!attribute [rw] id
2321
+ # The Id of the firewall domain list that DNS Firewall just updated.
2322
+ # @return [String]
2323
+ #
2324
+ # @!attribute [rw] name
2325
+ # The name of the domain list.
2326
+ # @return [String]
2327
+ #
2328
+ # @!attribute [rw] status
2329
+ # @return [String]
2330
+ #
2331
+ # @!attribute [rw] status_message
2332
+ # Additional information about the status of the list, if available.
2333
+ # @return [String]
2334
+ #
2335
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/ImportFirewallDomainsResponse AWS API Documentation
2336
+ #
2337
+ class ImportFirewallDomainsResponse < Struct.new(
2338
+ :id,
2339
+ :name,
2340
+ :status,
2341
+ :status_message)
2342
+ SENSITIVE = []
2343
+ include Aws::Structure
2344
+ end
2345
+
1156
2346
  # We encountered an unknown error. Try again in a few minutes.
1157
2347
  #
1158
2348
  # @!attribute [rw] message
@@ -1301,94 +2491,520 @@ module Aws::Route53Resolver
1301
2491
  # the request.
1302
2492
  # @return [String]
1303
2493
  #
1304
- # @!attribute [rw] creation_time
1305
- # The date and time that the IP address was created, in Unix time
1306
- # format and Coordinated Universal Time (UTC).
1307
- # @return [String]
2494
+ # @!attribute [rw] creation_time
2495
+ # The date and time that the IP address was created, in Unix time
2496
+ # format and Coordinated Universal Time (UTC).
2497
+ # @return [String]
2498
+ #
2499
+ # @!attribute [rw] modification_time
2500
+ # The date and time that the IP address was last modified, in Unix
2501
+ # time format and Coordinated Universal Time (UTC).
2502
+ # @return [String]
2503
+ #
2504
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/IpAddressResponse AWS API Documentation
2505
+ #
2506
+ class IpAddressResponse < Struct.new(
2507
+ :ip_id,
2508
+ :subnet_id,
2509
+ :ip,
2510
+ :status,
2511
+ :status_message,
2512
+ :creation_time,
2513
+ :modification_time)
2514
+ SENSITIVE = []
2515
+ include Aws::Structure
2516
+ end
2517
+
2518
+ # In an [UpdateResolverEndpoint][1] request, information about an IP
2519
+ # address to update.
2520
+ #
2521
+ #
2522
+ #
2523
+ # [1]: https://docs.aws.amazon.com/Route53/latest/APIReference/API_route53resolver_UpdateResolverEndpoint.html
2524
+ #
2525
+ # @note When making an API call, you may pass IpAddressUpdate
2526
+ # data as a hash:
2527
+ #
2528
+ # {
2529
+ # ip_id: "ResourceId",
2530
+ # subnet_id: "SubnetId",
2531
+ # ip: "Ip",
2532
+ # }
2533
+ #
2534
+ # @!attribute [rw] ip_id
2535
+ # *Only when removing an IP address from a Resolver endpoint*\: The ID
2536
+ # of the IP address that you want to remove. To get this ID, use
2537
+ # [GetResolverEndpoint][1].
2538
+ #
2539
+ #
2540
+ #
2541
+ # [1]: https://docs.aws.amazon.com/Route53/latest/APIReference/API_route53resolver_GetResolverEndpoint.html
2542
+ # @return [String]
2543
+ #
2544
+ # @!attribute [rw] subnet_id
2545
+ # The ID of the subnet that includes the IP address that you want to
2546
+ # update. To get this ID, use [GetResolverEndpoint][1].
2547
+ #
2548
+ #
2549
+ #
2550
+ # [1]: https://docs.aws.amazon.com/Route53/latest/APIReference/API_route53resolver_GetResolverEndpoint.html
2551
+ # @return [String]
2552
+ #
2553
+ # @!attribute [rw] ip
2554
+ # The new IP address.
2555
+ # @return [String]
2556
+ #
2557
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/IpAddressUpdate AWS API Documentation
2558
+ #
2559
+ class IpAddressUpdate < Struct.new(
2560
+ :ip_id,
2561
+ :subnet_id,
2562
+ :ip)
2563
+ SENSITIVE = []
2564
+ include Aws::Structure
2565
+ end
2566
+
2567
+ # The request caused one or more limits to be exceeded.
2568
+ #
2569
+ # @!attribute [rw] message
2570
+ # @return [String]
2571
+ #
2572
+ # @!attribute [rw] resource_type
2573
+ # For a `LimitExceededException` error, the type of resource that
2574
+ # exceeded the current limit.
2575
+ # @return [String]
2576
+ #
2577
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/LimitExceededException AWS API Documentation
2578
+ #
2579
+ class LimitExceededException < Struct.new(
2580
+ :message,
2581
+ :resource_type)
2582
+ SENSITIVE = []
2583
+ include Aws::Structure
2584
+ end
2585
+
2586
+ # @note When making an API call, you may pass ListFirewallConfigsRequest
2587
+ # data as a hash:
2588
+ #
2589
+ # {
2590
+ # max_results: 1,
2591
+ # next_token: "NextToken",
2592
+ # }
2593
+ #
2594
+ # @!attribute [rw] max_results
2595
+ # The maximum number of objects that you want Resolver to return for
2596
+ # this request. If more objects are available, in the response,
2597
+ # Resolver provides a `NextToken` value that you can use in a
2598
+ # subsequent call to get the next batch of objects.
2599
+ #
2600
+ # If you don't specify a value for `MaxResults`, Resolver returns up
2601
+ # to 100 objects.
2602
+ # @return [Integer]
2603
+ #
2604
+ # @!attribute [rw] next_token
2605
+ # For the first call to this list request, omit this value.
2606
+ #
2607
+ # When you request a list of objects, Resolver returns at most the
2608
+ # number of objects specified in `MaxResults`. If more objects are
2609
+ # available for retrieval, Resolver returns a `NextToken` value in the
2610
+ # response. To retrieve the next batch of objects, use the token that
2611
+ # was returned for the prior request in your next request.
2612
+ # @return [String]
2613
+ #
2614
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/ListFirewallConfigsRequest AWS API Documentation
2615
+ #
2616
+ class ListFirewallConfigsRequest < Struct.new(
2617
+ :max_results,
2618
+ :next_token)
2619
+ SENSITIVE = []
2620
+ include Aws::Structure
2621
+ end
2622
+
2623
+ # @!attribute [rw] next_token
2624
+ # If objects are still available for retrieval, Resolver returns this
2625
+ # token in the response. To retrieve the next batch of objects,
2626
+ # provide this token in your next request.
2627
+ # @return [String]
2628
+ #
2629
+ # @!attribute [rw] firewall_configs
2630
+ # The configurations for the firewall behavior provided by DNS
2631
+ # Firewall for VPCs from Amazon Virtual Private Cloud (Amazon VPC).
2632
+ # @return [Array<Types::FirewallConfig>]
2633
+ #
2634
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/ListFirewallConfigsResponse AWS API Documentation
2635
+ #
2636
+ class ListFirewallConfigsResponse < Struct.new(
2637
+ :next_token,
2638
+ :firewall_configs)
2639
+ SENSITIVE = []
2640
+ include Aws::Structure
2641
+ end
2642
+
2643
+ # @note When making an API call, you may pass ListFirewallDomainListsRequest
2644
+ # data as a hash:
2645
+ #
2646
+ # {
2647
+ # max_results: 1,
2648
+ # next_token: "NextToken",
2649
+ # }
2650
+ #
2651
+ # @!attribute [rw] max_results
2652
+ # The maximum number of objects that you want Resolver to return for
2653
+ # this request. If more objects are available, in the response,
2654
+ # Resolver provides a `NextToken` value that you can use in a
2655
+ # subsequent call to get the next batch of objects.
2656
+ #
2657
+ # If you don't specify a value for `MaxResults`, Resolver returns up
2658
+ # to 100 objects.
2659
+ # @return [Integer]
2660
+ #
2661
+ # @!attribute [rw] next_token
2662
+ # For the first call to this list request, omit this value.
2663
+ #
2664
+ # When you request a list of objects, Resolver returns at most the
2665
+ # number of objects specified in `MaxResults`. If more objects are
2666
+ # available for retrieval, Resolver returns a `NextToken` value in the
2667
+ # response. To retrieve the next batch of objects, use the token that
2668
+ # was returned for the prior request in your next request.
2669
+ # @return [String]
2670
+ #
2671
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/ListFirewallDomainListsRequest AWS API Documentation
2672
+ #
2673
+ class ListFirewallDomainListsRequest < Struct.new(
2674
+ :max_results,
2675
+ :next_token)
2676
+ SENSITIVE = []
2677
+ include Aws::Structure
2678
+ end
2679
+
2680
+ # @!attribute [rw] next_token
2681
+ # If objects are still available for retrieval, Resolver returns this
2682
+ # token in the response. To retrieve the next batch of objects,
2683
+ # provide this token in your next request.
2684
+ # @return [String]
2685
+ #
2686
+ # @!attribute [rw] firewall_domain_lists
2687
+ # A list of the domain lists that you have defined.
2688
+ #
2689
+ # This might be a partial list of the domain lists that you've
2690
+ # defined. For information, see `MaxResults`.
2691
+ # @return [Array<Types::FirewallDomainListMetadata>]
2692
+ #
2693
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/ListFirewallDomainListsResponse AWS API Documentation
2694
+ #
2695
+ class ListFirewallDomainListsResponse < Struct.new(
2696
+ :next_token,
2697
+ :firewall_domain_lists)
2698
+ SENSITIVE = []
2699
+ include Aws::Structure
2700
+ end
2701
+
2702
+ # @note When making an API call, you may pass ListFirewallDomainsRequest
2703
+ # data as a hash:
2704
+ #
2705
+ # {
2706
+ # firewall_domain_list_id: "ResourceId", # required
2707
+ # max_results: 1,
2708
+ # next_token: "NextToken",
2709
+ # }
2710
+ #
2711
+ # @!attribute [rw] firewall_domain_list_id
2712
+ # The ID of the domain list whose domains you want to retrieve.
2713
+ # @return [String]
2714
+ #
2715
+ # @!attribute [rw] max_results
2716
+ # The maximum number of objects that you want Resolver to return for
2717
+ # this request. If more objects are available, in the response,
2718
+ # Resolver provides a `NextToken` value that you can use in a
2719
+ # subsequent call to get the next batch of objects.
2720
+ #
2721
+ # If you don't specify a value for `MaxResults`, Resolver returns up
2722
+ # to 100 objects.
2723
+ # @return [Integer]
2724
+ #
2725
+ # @!attribute [rw] next_token
2726
+ # For the first call to this list request, omit this value.
2727
+ #
2728
+ # When you request a list of objects, Resolver returns at most the
2729
+ # number of objects specified in `MaxResults`. If more objects are
2730
+ # available for retrieval, Resolver returns a `NextToken` value in the
2731
+ # response. To retrieve the next batch of objects, use the token that
2732
+ # was returned for the prior request in your next request.
2733
+ # @return [String]
2734
+ #
2735
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/ListFirewallDomainsRequest AWS API Documentation
2736
+ #
2737
+ class ListFirewallDomainsRequest < Struct.new(
2738
+ :firewall_domain_list_id,
2739
+ :max_results,
2740
+ :next_token)
2741
+ SENSITIVE = []
2742
+ include Aws::Structure
2743
+ end
2744
+
2745
+ # @!attribute [rw] next_token
2746
+ # If objects are still available for retrieval, Resolver returns this
2747
+ # token in the response. To retrieve the next batch of objects,
2748
+ # provide this token in your next request.
2749
+ # @return [String]
2750
+ #
2751
+ # @!attribute [rw] domains
2752
+ # A list of the domains in the firewall domain list.
2753
+ #
2754
+ # This might be a partial list of the domains that you've defined in
2755
+ # the domain list. For information, see `MaxResults`.
2756
+ # @return [Array<String>]
2757
+ #
2758
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/ListFirewallDomainsResponse AWS API Documentation
2759
+ #
2760
+ class ListFirewallDomainsResponse < Struct.new(
2761
+ :next_token,
2762
+ :domains)
2763
+ SENSITIVE = []
2764
+ include Aws::Structure
2765
+ end
2766
+
2767
+ # @note When making an API call, you may pass ListFirewallRuleGroupAssociationsRequest
2768
+ # data as a hash:
2769
+ #
2770
+ # {
2771
+ # firewall_rule_group_id: "ResourceId",
2772
+ # vpc_id: "ResourceId",
2773
+ # priority: 1,
2774
+ # status: "COMPLETE", # accepts COMPLETE, DELETING, UPDATING
2775
+ # max_results: 1,
2776
+ # next_token: "NextToken",
2777
+ # }
2778
+ #
2779
+ # @!attribute [rw] firewall_rule_group_id
2780
+ # The unique identifier of the firewall rule group that you want to
2781
+ # retrieve the associations for. Leave this blank to retrieve
2782
+ # associations for any rule group.
2783
+ # @return [String]
2784
+ #
2785
+ # @!attribute [rw] vpc_id
2786
+ # The unique identifier of the VPC that you want to retrieve the
2787
+ # associations for. Leave this blank to retrieve associations for any
2788
+ # VPC.
2789
+ # @return [String]
2790
+ #
2791
+ # @!attribute [rw] priority
2792
+ # The setting that determines the processing order of the rule group
2793
+ # among the rule groups that are associated with a single VPC. DNS
2794
+ # Firewall filters VPC traffic starting from the rule group with the
2795
+ # lowest numeric priority setting.
2796
+ # @return [Integer]
2797
+ #
2798
+ # @!attribute [rw] status
2799
+ # The association `Status` setting that you want DNS Firewall to
2800
+ # filter on for the list. If you don't specify this, then DNS
2801
+ # Firewall returns all associations, regardless of status.
2802
+ # @return [String]
2803
+ #
2804
+ # @!attribute [rw] max_results
2805
+ # The maximum number of objects that you want Resolver to return for
2806
+ # this request. If more objects are available, in the response,
2807
+ # Resolver provides a `NextToken` value that you can use in a
2808
+ # subsequent call to get the next batch of objects.
2809
+ #
2810
+ # If you don't specify a value for `MaxResults`, Resolver returns up
2811
+ # to 100 objects.
2812
+ # @return [Integer]
2813
+ #
2814
+ # @!attribute [rw] next_token
2815
+ # For the first call to this list request, omit this value.
2816
+ #
2817
+ # When you request a list of objects, Resolver returns at most the
2818
+ # number of objects specified in `MaxResults`. If more objects are
2819
+ # available for retrieval, Resolver returns a `NextToken` value in the
2820
+ # response. To retrieve the next batch of objects, use the token that
2821
+ # was returned for the prior request in your next request.
2822
+ # @return [String]
2823
+ #
2824
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/ListFirewallRuleGroupAssociationsRequest AWS API Documentation
2825
+ #
2826
+ class ListFirewallRuleGroupAssociationsRequest < Struct.new(
2827
+ :firewall_rule_group_id,
2828
+ :vpc_id,
2829
+ :priority,
2830
+ :status,
2831
+ :max_results,
2832
+ :next_token)
2833
+ SENSITIVE = []
2834
+ include Aws::Structure
2835
+ end
2836
+
2837
+ # @!attribute [rw] next_token
2838
+ # If objects are still available for retrieval, Resolver returns this
2839
+ # token in the response. To retrieve the next batch of objects,
2840
+ # provide this token in your next request.
2841
+ # @return [String]
2842
+ #
2843
+ # @!attribute [rw] firewall_rule_group_associations
2844
+ # A list of your firewall rule group associations.
2845
+ #
2846
+ # This might be a partial list of the associations that you have
2847
+ # defined. For information, see `MaxResults`.
2848
+ # @return [Array<Types::FirewallRuleGroupAssociation>]
2849
+ #
2850
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/ListFirewallRuleGroupAssociationsResponse AWS API Documentation
2851
+ #
2852
+ class ListFirewallRuleGroupAssociationsResponse < Struct.new(
2853
+ :next_token,
2854
+ :firewall_rule_group_associations)
2855
+ SENSITIVE = []
2856
+ include Aws::Structure
2857
+ end
2858
+
2859
+ # @note When making an API call, you may pass ListFirewallRuleGroupsRequest
2860
+ # data as a hash:
2861
+ #
2862
+ # {
2863
+ # max_results: 1,
2864
+ # next_token: "NextToken",
2865
+ # }
2866
+ #
2867
+ # @!attribute [rw] max_results
2868
+ # The maximum number of objects that you want Resolver to return for
2869
+ # this request. If more objects are available, in the response,
2870
+ # Resolver provides a `NextToken` value that you can use in a
2871
+ # subsequent call to get the next batch of objects.
2872
+ #
2873
+ # If you don't specify a value for `MaxResults`, Resolver returns up
2874
+ # to 100 objects.
2875
+ # @return [Integer]
2876
+ #
2877
+ # @!attribute [rw] next_token
2878
+ # For the first call to this list request, omit this value.
1308
2879
  #
1309
- # @!attribute [rw] modification_time
1310
- # The date and time that the IP address was last modified, in Unix
1311
- # time format and Coordinated Universal Time (UTC).
2880
+ # When you request a list of objects, Resolver returns at most the
2881
+ # number of objects specified in `MaxResults`. If more objects are
2882
+ # available for retrieval, Resolver returns a `NextToken` value in the
2883
+ # response. To retrieve the next batch of objects, use the token that
2884
+ # was returned for the prior request in your next request.
1312
2885
  # @return [String]
1313
2886
  #
1314
- # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/IpAddressResponse AWS API Documentation
2887
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/ListFirewallRuleGroupsRequest AWS API Documentation
1315
2888
  #
1316
- class IpAddressResponse < Struct.new(
1317
- :ip_id,
1318
- :subnet_id,
1319
- :ip,
1320
- :status,
1321
- :status_message,
1322
- :creation_time,
1323
- :modification_time)
2889
+ class ListFirewallRuleGroupsRequest < Struct.new(
2890
+ :max_results,
2891
+ :next_token)
1324
2892
  SENSITIVE = []
1325
2893
  include Aws::Structure
1326
2894
  end
1327
2895
 
1328
- # In an [UpdateResolverEndpoint][1] request, information about an IP
1329
- # address to update.
2896
+ # @!attribute [rw] next_token
2897
+ # If objects are still available for retrieval, Resolver returns this
2898
+ # token in the response. To retrieve the next batch of objects,
2899
+ # provide this token in your next request.
2900
+ # @return [String]
1330
2901
  #
2902
+ # @!attribute [rw] firewall_rule_groups
2903
+ # A list of your firewall rule groups.
1331
2904
  #
2905
+ # This might be a partial list of the rule groups that you have
2906
+ # defined. For information, see `MaxResults`.
2907
+ # @return [Array<Types::FirewallRuleGroupMetadata>]
1332
2908
  #
1333
- # [1]: https://docs.aws.amazon.com/Route53/latest/APIReference/API_route53resolver_UpdateResolverEndpoint.html
2909
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/ListFirewallRuleGroupsResponse AWS API Documentation
1334
2910
  #
1335
- # @note When making an API call, you may pass IpAddressUpdate
2911
+ class ListFirewallRuleGroupsResponse < Struct.new(
2912
+ :next_token,
2913
+ :firewall_rule_groups)
2914
+ SENSITIVE = []
2915
+ include Aws::Structure
2916
+ end
2917
+
2918
+ # @note When making an API call, you may pass ListFirewallRulesRequest
1336
2919
  # data as a hash:
1337
2920
  #
1338
2921
  # {
1339
- # ip_id: "ResourceId",
1340
- # subnet_id: "SubnetId",
1341
- # ip: "Ip",
2922
+ # firewall_rule_group_id: "ResourceId", # required
2923
+ # priority: 1,
2924
+ # action: "ALLOW", # accepts ALLOW, BLOCK, ALERT
2925
+ # max_results: 1,
2926
+ # next_token: "NextToken",
1342
2927
  # }
1343
2928
  #
1344
- # @!attribute [rw] ip_id
1345
- # *Only when removing an IP address from a Resolver endpoint*\: The ID
1346
- # of the IP address that you want to remove. To get this ID, use
1347
- # [GetResolverEndpoint][1].
2929
+ # @!attribute [rw] firewall_rule_group_id
2930
+ # The unique identifier of the firewall rule group that you want to
2931
+ # retrieve the rules for.
2932
+ # @return [String]
1348
2933
  #
2934
+ # @!attribute [rw] priority
2935
+ # Optional additional filter for the rules to retrieve.
1349
2936
  #
2937
+ # The setting that determines the processing order of the rules in a
2938
+ # rule group. DNS Firewall processes the rules in a rule group by
2939
+ # order of priority, starting from the lowest setting.
2940
+ # @return [Integer]
1350
2941
  #
1351
- # [1]: https://docs.aws.amazon.com/Route53/latest/APIReference/API_route53resolver_GetResolverEndpoint.html
1352
- # @return [String]
2942
+ # @!attribute [rw] action
2943
+ # Optional additional filter for the rules to retrieve.
1353
2944
  #
1354
- # @!attribute [rw] subnet_id
1355
- # The ID of the subnet that includes the IP address that you want to
1356
- # update. To get this ID, use [GetResolverEndpoint][1].
2945
+ # The action that DNS Firewall should take on a DNS query when it
2946
+ # matches one of the domains in the rule's domain list:
1357
2947
  #
2948
+ # * `ALLOW` - Permit the request to go through.
1358
2949
  #
2950
+ # * `ALERT` - Permit the request to go through but send an alert to
2951
+ # the logs.
1359
2952
  #
1360
- # [1]: https://docs.aws.amazon.com/Route53/latest/APIReference/API_route53resolver_GetResolverEndpoint.html
2953
+ # * `BLOCK` - Disallow the request. If this is specified, additional
2954
+ # handling details are provided in the rule's `BlockResponse`
2955
+ # setting.
1361
2956
  # @return [String]
1362
2957
  #
1363
- # @!attribute [rw] ip
1364
- # The new IP address.
2958
+ # @!attribute [rw] max_results
2959
+ # The maximum number of objects that you want Resolver to return for
2960
+ # this request. If more objects are available, in the response,
2961
+ # Resolver provides a `NextToken` value that you can use in a
2962
+ # subsequent call to get the next batch of objects.
2963
+ #
2964
+ # If you don't specify a value for `MaxResults`, Resolver returns up
2965
+ # to 100 objects.
2966
+ # @return [Integer]
2967
+ #
2968
+ # @!attribute [rw] next_token
2969
+ # For the first call to this list request, omit this value.
2970
+ #
2971
+ # When you request a list of objects, Resolver returns at most the
2972
+ # number of objects specified in `MaxResults`. If more objects are
2973
+ # available for retrieval, Resolver returns a `NextToken` value in the
2974
+ # response. To retrieve the next batch of objects, use the token that
2975
+ # was returned for the prior request in your next request.
1365
2976
  # @return [String]
1366
2977
  #
1367
- # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/IpAddressUpdate AWS API Documentation
2978
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/ListFirewallRulesRequest AWS API Documentation
1368
2979
  #
1369
- class IpAddressUpdate < Struct.new(
1370
- :ip_id,
1371
- :subnet_id,
1372
- :ip)
2980
+ class ListFirewallRulesRequest < Struct.new(
2981
+ :firewall_rule_group_id,
2982
+ :priority,
2983
+ :action,
2984
+ :max_results,
2985
+ :next_token)
1373
2986
  SENSITIVE = []
1374
2987
  include Aws::Structure
1375
2988
  end
1376
2989
 
1377
- # The request caused one or more limits to be exceeded.
1378
- #
1379
- # @!attribute [rw] message
2990
+ # @!attribute [rw] next_token
2991
+ # If objects are still available for retrieval, Resolver returns this
2992
+ # token in the response. To retrieve the next batch of objects,
2993
+ # provide this token in your next request.
1380
2994
  # @return [String]
1381
2995
  #
1382
- # @!attribute [rw] resource_type
1383
- # For a `LimitExceededException` error, the type of resource that
1384
- # exceeded the current limit.
1385
- # @return [String]
2996
+ # @!attribute [rw] firewall_rules
2997
+ # A list of the rules that you have defined.
1386
2998
  #
1387
- # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/LimitExceededException AWS API Documentation
2999
+ # This might be a partial list of the firewall rules that you've
3000
+ # defined. For information, see `MaxResults`.
3001
+ # @return [Array<Types::FirewallRule>]
1388
3002
  #
1389
- class LimitExceededException < Struct.new(
1390
- :message,
1391
- :resource_type)
3003
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/ListFirewallRulesResponse AWS API Documentation
3004
+ #
3005
+ class ListFirewallRulesResponse < Struct.new(
3006
+ :next_token,
3007
+ :firewall_rules)
1392
3008
  SENSITIVE = []
1393
3009
  include Aws::Structure
1394
3010
  end
@@ -2171,6 +3787,44 @@ module Aws::Route53Resolver
2171
3787
  include Aws::Structure
2172
3788
  end
2173
3789
 
3790
+ # @note When making an API call, you may pass PutFirewallRuleGroupPolicyRequest
3791
+ # data as a hash:
3792
+ #
3793
+ # {
3794
+ # arn: "Arn", # required
3795
+ # firewall_rule_group_policy: "FirewallRuleGroupPolicy", # required
3796
+ # }
3797
+ #
3798
+ # @!attribute [rw] arn
3799
+ # The ARN (Amazon Resource Name) for the rule group that you want to
3800
+ # share.
3801
+ # @return [String]
3802
+ #
3803
+ # @!attribute [rw] firewall_rule_group_policy
3804
+ # The AWS Identity and Access Management (AWS IAM) policy to attach to
3805
+ # the rule group.
3806
+ # @return [String]
3807
+ #
3808
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/PutFirewallRuleGroupPolicyRequest AWS API Documentation
3809
+ #
3810
+ class PutFirewallRuleGroupPolicyRequest < Struct.new(
3811
+ :arn,
3812
+ :firewall_rule_group_policy)
3813
+ SENSITIVE = []
3814
+ include Aws::Structure
3815
+ end
3816
+
3817
+ # @!attribute [rw] return_value
3818
+ # @return [Boolean]
3819
+ #
3820
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/PutFirewallRuleGroupPolicyResponse AWS API Documentation
3821
+ #
3822
+ class PutFirewallRuleGroupPolicyResponse < Struct.new(
3823
+ :return_value)
3824
+ SENSITIVE = []
3825
+ include Aws::Structure
3826
+ end
3827
+
2174
3828
  # @note When making an API call, you may pass PutResolverQueryLogConfigPolicyRequest
2175
3829
  # data as a hash:
2176
3830
  #
@@ -2350,7 +4004,7 @@ module Aws::Route53Resolver
2350
4004
  # @!attribute [rw] creator_request_id
2351
4005
  # A unique string that identifies the request that created the
2352
4006
  # Resolver endpoint. The `CreatorRequestId` allows failed requests to
2353
- # be retried without the risk of executing the operation twice.
4007
+ # be retried without the risk of running the operation twice.
2354
4008
  # @return [String]
2355
4009
  #
2356
4010
  # @!attribute [rw] arn
@@ -2543,7 +4197,7 @@ module Aws::Route53Resolver
2543
4197
  # @!attribute [rw] creator_request_id
2544
4198
  # A unique string that identifies the request that created the query
2545
4199
  # logging configuration. The `CreatorRequestId` allows failed requests
2546
- # to be retried without the risk of executing the operation twice.
4200
+ # to be retried without the risk of running the operation twice.
2547
4201
  # @return [String]
2548
4202
  #
2549
4203
  # @!attribute [rw] creation_time
@@ -2675,7 +4329,7 @@ module Aws::Route53Resolver
2675
4329
  # @!attribute [rw] creator_request_id
2676
4330
  # A unique string that you specified when you created the Resolver
2677
4331
  # rule. `CreatorRequestId` identifies the request and allows failed
2678
- # requests to be retried without the risk of executing the operation
4332
+ # requests to be retried without the risk of running the operation
2679
4333
  # twice.
2680
4334
  # @return [String]
2681
4335
  #
@@ -2740,7 +4394,7 @@ module Aws::Route53Resolver
2740
4394
  # @return [String]
2741
4395
  #
2742
4396
  # @!attribute [rw] share_status
2743
- # Whether the rules is shared and, if so, whether the current account
4397
+ # Whether the rule is shared and, if so, whether the current account
2744
4398
  # is sharing the rule with another account, or another account is
2745
4399
  # sharing the rule with the current account.
2746
4400
  # @return [String]
@@ -3157,6 +4811,307 @@ module Aws::Route53Resolver
3157
4811
  #
3158
4812
  class UntagResourceResponse < Aws::EmptyStructure; end
3159
4813
 
4814
+ # @note When making an API call, you may pass UpdateFirewallConfigRequest
4815
+ # data as a hash:
4816
+ #
4817
+ # {
4818
+ # resource_id: "ResourceId", # required
4819
+ # firewall_fail_open: "ENABLED", # required, accepts ENABLED, DISABLED
4820
+ # }
4821
+ #
4822
+ # @!attribute [rw] resource_id
4823
+ # The ID of the VPC that the configuration is for.
4824
+ # @return [String]
4825
+ #
4826
+ # @!attribute [rw] firewall_fail_open
4827
+ # Determines how Route 53 Resolver handles queries during failures,
4828
+ # for example when all traffic that is sent to DNS Firewall fails to
4829
+ # receive a reply.
4830
+ #
4831
+ # * By default, fail open is disabled, which means the failure mode is
4832
+ # closed. This approach favors security over availability. DNS
4833
+ # Firewall blocks queries that it is unable to evaluate properly.
4834
+ #
4835
+ # * If you enable this option, the failure mode is open. This approach
4836
+ # favors availability over security. DNS Firewall allows queries to
4837
+ # proceed if it is unable to properly evaluate them.
4838
+ #
4839
+ # This behavior is only enforced for VPCs that have at least one DNS
4840
+ # Firewall rule group association.
4841
+ # @return [String]
4842
+ #
4843
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/UpdateFirewallConfigRequest AWS API Documentation
4844
+ #
4845
+ class UpdateFirewallConfigRequest < Struct.new(
4846
+ :resource_id,
4847
+ :firewall_fail_open)
4848
+ SENSITIVE = []
4849
+ include Aws::Structure
4850
+ end
4851
+
4852
+ # @!attribute [rw] firewall_config
4853
+ # Configuration of the firewall behavior provided by DNS Firewall for
4854
+ # a single VPC.
4855
+ # @return [Types::FirewallConfig]
4856
+ #
4857
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/UpdateFirewallConfigResponse AWS API Documentation
4858
+ #
4859
+ class UpdateFirewallConfigResponse < Struct.new(
4860
+ :firewall_config)
4861
+ SENSITIVE = []
4862
+ include Aws::Structure
4863
+ end
4864
+
4865
+ # @note When making an API call, you may pass UpdateFirewallDomainsRequest
4866
+ # data as a hash:
4867
+ #
4868
+ # {
4869
+ # firewall_domain_list_id: "ResourceId", # required
4870
+ # operation: "ADD", # required, accepts ADD, REMOVE, REPLACE
4871
+ # domains: ["FirewallDomainName"], # required
4872
+ # }
4873
+ #
4874
+ # @!attribute [rw] firewall_domain_list_id
4875
+ # The ID of the domain list whose domains you want to update.
4876
+ # @return [String]
4877
+ #
4878
+ # @!attribute [rw] operation
4879
+ # What you want DNS Firewall to do with the domains that you are
4880
+ # providing:
4881
+ #
4882
+ # * `ADD` - Add the domains to the ones that are already in the domain
4883
+ # list.
4884
+ #
4885
+ # * `REMOVE` - Search the domain list for the domains and remove them
4886
+ # from the list.
4887
+ #
4888
+ # * `REPLACE` - Update the domain list to exactly match the list that
4889
+ # you are providing.
4890
+ # @return [String]
4891
+ #
4892
+ # @!attribute [rw] domains
4893
+ # A list of domains to use in the update operation.
4894
+ #
4895
+ # Each domain specification in your domain list must satisfy the
4896
+ # following requirements:
4897
+ #
4898
+ # * It can optionally start with `*` (asterisk).
4899
+ #
4900
+ # * With the exception of the optional starting asterisk, it must only
4901
+ # contain the following characters: `A-Z`, `a-z`, `0-9`, `-`
4902
+ # (hyphen).
4903
+ #
4904
+ # * It must be from 1-255 characters in length.
4905
+ # @return [Array<String>]
4906
+ #
4907
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/UpdateFirewallDomainsRequest AWS API Documentation
4908
+ #
4909
+ class UpdateFirewallDomainsRequest < Struct.new(
4910
+ :firewall_domain_list_id,
4911
+ :operation,
4912
+ :domains)
4913
+ SENSITIVE = []
4914
+ include Aws::Structure
4915
+ end
4916
+
4917
+ # @!attribute [rw] id
4918
+ # The ID of the firewall domain list that DNS Firewall just updated.
4919
+ # @return [String]
4920
+ #
4921
+ # @!attribute [rw] name
4922
+ # The name of the domain list.
4923
+ # @return [String]
4924
+ #
4925
+ # @!attribute [rw] status
4926
+ # @return [String]
4927
+ #
4928
+ # @!attribute [rw] status_message
4929
+ # Additional information about the status of the list, if available.
4930
+ # @return [String]
4931
+ #
4932
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/UpdateFirewallDomainsResponse AWS API Documentation
4933
+ #
4934
+ class UpdateFirewallDomainsResponse < Struct.new(
4935
+ :id,
4936
+ :name,
4937
+ :status,
4938
+ :status_message)
4939
+ SENSITIVE = []
4940
+ include Aws::Structure
4941
+ end
4942
+
4943
+ # @note When making an API call, you may pass UpdateFirewallRuleGroupAssociationRequest
4944
+ # data as a hash:
4945
+ #
4946
+ # {
4947
+ # firewall_rule_group_association_id: "ResourceId", # required
4948
+ # priority: 1,
4949
+ # mutation_protection: "ENABLED", # accepts ENABLED, DISABLED
4950
+ # name: "Name",
4951
+ # }
4952
+ #
4953
+ # @!attribute [rw] firewall_rule_group_association_id
4954
+ # The identifier of the FirewallRuleGroupAssociation.
4955
+ # @return [String]
4956
+ #
4957
+ # @!attribute [rw] priority
4958
+ # The setting that determines the processing order of the rule group
4959
+ # among the rule groups that you associate with the specified VPC. DNS
4960
+ # Firewall filters VPC traffic starting from the rule group with the
4961
+ # lowest numeric priority setting.
4962
+ #
4963
+ # You must specify a unique priority for each rule group that you
4964
+ # associate with a single VPC. To make it easier to insert rule groups
4965
+ # later, leave space between the numbers, for example, use 100, 200,
4966
+ # and so on. You can change the priority setting for a rule group
4967
+ # association after you create it.
4968
+ # @return [Integer]
4969
+ #
4970
+ # @!attribute [rw] mutation_protection
4971
+ # If enabled, this setting disallows modification or removal of the
4972
+ # association, to help prevent against accidentally altering DNS
4973
+ # firewall protections.
4974
+ # @return [String]
4975
+ #
4976
+ # @!attribute [rw] name
4977
+ # The name of the rule group association.
4978
+ # @return [String]
4979
+ #
4980
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/UpdateFirewallRuleGroupAssociationRequest AWS API Documentation
4981
+ #
4982
+ class UpdateFirewallRuleGroupAssociationRequest < Struct.new(
4983
+ :firewall_rule_group_association_id,
4984
+ :priority,
4985
+ :mutation_protection,
4986
+ :name)
4987
+ SENSITIVE = []
4988
+ include Aws::Structure
4989
+ end
4990
+
4991
+ # @!attribute [rw] firewall_rule_group_association
4992
+ # The association that you just updated.
4993
+ # @return [Types::FirewallRuleGroupAssociation]
4994
+ #
4995
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/UpdateFirewallRuleGroupAssociationResponse AWS API Documentation
4996
+ #
4997
+ class UpdateFirewallRuleGroupAssociationResponse < Struct.new(
4998
+ :firewall_rule_group_association)
4999
+ SENSITIVE = []
5000
+ include Aws::Structure
5001
+ end
5002
+
5003
+ # @note When making an API call, you may pass UpdateFirewallRuleRequest
5004
+ # data as a hash:
5005
+ #
5006
+ # {
5007
+ # firewall_rule_group_id: "ResourceId", # required
5008
+ # firewall_domain_list_id: "ResourceId", # required
5009
+ # priority: 1,
5010
+ # action: "ALLOW", # accepts ALLOW, BLOCK, ALERT
5011
+ # block_response: "NODATA", # accepts NODATA, NXDOMAIN, OVERRIDE
5012
+ # block_override_domain: "BlockOverrideDomain",
5013
+ # block_override_dns_type: "CNAME", # accepts CNAME
5014
+ # block_override_ttl: 1,
5015
+ # name: "Name",
5016
+ # }
5017
+ #
5018
+ # @!attribute [rw] firewall_rule_group_id
5019
+ # The unique identifier of the firewall rule group for the rule.
5020
+ # @return [String]
5021
+ #
5022
+ # @!attribute [rw] firewall_domain_list_id
5023
+ # The ID of the domain list to use in the rule.
5024
+ # @return [String]
5025
+ #
5026
+ # @!attribute [rw] priority
5027
+ # The setting that determines the processing order of the rule in the
5028
+ # rule group. DNS Firewall processes the rules in a rule group by
5029
+ # order of priority, starting from the lowest setting.
5030
+ #
5031
+ # You must specify a unique priority for each rule in a rule group. To
5032
+ # make it easier to insert rules later, leave space between the
5033
+ # numbers, for example, use 100, 200, and so on. You can change the
5034
+ # priority setting for the rules in a rule group at any time.
5035
+ # @return [Integer]
5036
+ #
5037
+ # @!attribute [rw] action
5038
+ # The action that DNS Firewall should take on a DNS query when it
5039
+ # matches one of the domains in the rule's domain list:
5040
+ #
5041
+ # * `ALLOW` - Permit the request to go through.
5042
+ #
5043
+ # * `ALERT` - Permit the request to go through but send an alert to
5044
+ # the logs.
5045
+ #
5046
+ # * `BLOCK` - Disallow the request. This option requires additional
5047
+ # details in the rule's `BlockResponse`.
5048
+ # @return [String]
5049
+ #
5050
+ # @!attribute [rw] block_response
5051
+ # The way that you want DNS Firewall to block the request. Used for
5052
+ # the rule action setting `BLOCK`.
5053
+ #
5054
+ # * `NODATA` - Respond indicating that the query was successful, but
5055
+ # no response is available for it.
5056
+ #
5057
+ # * `NXDOMAIN` - Respond indicating that the domain name that's in
5058
+ # the query doesn't exist.
5059
+ #
5060
+ # * `OVERRIDE` - Provide a custom override in the response. This
5061
+ # option requires custom handling details in the rule's
5062
+ # `BlockOverride*` settings.
5063
+ # @return [String]
5064
+ #
5065
+ # @!attribute [rw] block_override_domain
5066
+ # The custom DNS record to send back in response to the query. Used
5067
+ # for the rule action `BLOCK` with a `BlockResponse` setting of
5068
+ # `OVERRIDE`.
5069
+ # @return [String]
5070
+ #
5071
+ # @!attribute [rw] block_override_dns_type
5072
+ # The DNS record's type. This determines the format of the record
5073
+ # value that you provided in `BlockOverrideDomain`. Used for the rule
5074
+ # action `BLOCK` with a `BlockResponse` setting of `OVERRIDE`.
5075
+ # @return [String]
5076
+ #
5077
+ # @!attribute [rw] block_override_ttl
5078
+ # The recommended amount of time, in seconds, for the DNS resolver or
5079
+ # web browser to cache the provided override record. Used for the rule
5080
+ # action `BLOCK` with a `BlockResponse` setting of `OVERRIDE`.
5081
+ # @return [Integer]
5082
+ #
5083
+ # @!attribute [rw] name
5084
+ # The name of the rule.
5085
+ # @return [String]
5086
+ #
5087
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/UpdateFirewallRuleRequest AWS API Documentation
5088
+ #
5089
+ class UpdateFirewallRuleRequest < Struct.new(
5090
+ :firewall_rule_group_id,
5091
+ :firewall_domain_list_id,
5092
+ :priority,
5093
+ :action,
5094
+ :block_response,
5095
+ :block_override_domain,
5096
+ :block_override_dns_type,
5097
+ :block_override_ttl,
5098
+ :name)
5099
+ SENSITIVE = []
5100
+ include Aws::Structure
5101
+ end
5102
+
5103
+ # @!attribute [rw] firewall_rule
5104
+ # The firewall rule that you just updated.
5105
+ # @return [Types::FirewallRule]
5106
+ #
5107
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/UpdateFirewallRuleResponse AWS API Documentation
5108
+ #
5109
+ class UpdateFirewallRuleResponse < Struct.new(
5110
+ :firewall_rule)
5111
+ SENSITIVE = []
5112
+ include Aws::Structure
5113
+ end
5114
+
3160
5115
  # @note When making an API call, you may pass UpdateResolverDnssecConfigRequest
3161
5116
  # data as a hash:
3162
5117
  #
@@ -3281,5 +5236,16 @@ module Aws::Route53Resolver
3281
5236
  include Aws::Structure
3282
5237
  end
3283
5238
 
5239
+ # @!attribute [rw] message
5240
+ # @return [String]
5241
+ #
5242
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53resolver-2018-04-01/ValidationException AWS API Documentation
5243
+ #
5244
+ class ValidationException < Struct.new(
5245
+ :message)
5246
+ SENSITIVE = []
5247
+ include Aws::Structure
5248
+ end
5249
+
3284
5250
  end
3285
5251
  end