aws-sdk-fms 1.11.0 → 1.12.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/aws-sdk-fms.rb +1 -1
- data/lib/aws-sdk-fms/client.rb +114 -9
- data/lib/aws-sdk-fms/client_api.rb +50 -0
- data/lib/aws-sdk-fms/types.rb +155 -17
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4fb1c6969e8db31be13a5b413a5a2e5991d8e833
|
4
|
+
data.tar.gz: e1a2d1196692c7fcbaa7ba391104669f9b6135a1
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 456a0ed2c47ad0047686498d91dd9eff41355dd9bc8c5e02f9a39e64e30037700d5b144c882989903902e0d3038369d5bb9df6b39a81668d814b403ac4a02a1c
|
7
|
+
data.tar.gz: b2cab0725e9d878634d5e23e72747885f28c77927f3ed1569410ca6c1ddd52398a2848523b01092329c22fa9801e1ac6f22c16147d4c072a58df39e198551550
|
data/lib/aws-sdk-fms.rb
CHANGED
data/lib/aws-sdk-fms/client.rb
CHANGED
@@ -275,9 +275,21 @@ module Aws::FMS
|
|
275
275
|
# by `PutPolicy` and by `ListPolicies`.
|
276
276
|
#
|
277
277
|
# @option params [Boolean] :delete_all_policy_resources
|
278
|
-
# If `True`, the request will also
|
279
|
-
#
|
280
|
-
#
|
278
|
+
# If `True`, the request will also perform a clean-up process that will:
|
279
|
+
#
|
280
|
+
# * Delete rule groups created by AWS Firewall Manager
|
281
|
+
#
|
282
|
+
# * Remove web ACLs from in-scope resources
|
283
|
+
#
|
284
|
+
# * Delete web ACLs that contain no rules or rule groups
|
285
|
+
#
|
286
|
+
# After the cleanup, in-scope resources will no longer be protected by
|
287
|
+
# web ACLs in this policy. Protection of out-of-scope resources will
|
288
|
+
# remain unchanged. Scope is determined by tags and accounts associated
|
289
|
+
# with the policy. When creating the policy, if you specified that only
|
290
|
+
# resources in specific accounts or with specific tags be protected by
|
291
|
+
# the policy, those resources are in-scope. All others are out of scope.
|
292
|
+
# If you did not specify tags or accounts, all resources are in-scope.
|
281
293
|
#
|
282
294
|
# @return [Struct] Returns an empty {Seahorse::Client::Response response}.
|
283
295
|
#
|
@@ -366,7 +378,7 @@ module Aws::FMS
|
|
366
378
|
# resp.policy_compliance_detail.member_account #=> String
|
367
379
|
# resp.policy_compliance_detail.violators #=> Array
|
368
380
|
# resp.policy_compliance_detail.violators[0].resource_id #=> String
|
369
|
-
# resp.policy_compliance_detail.violators[0].violation_reason #=> String, one of "WEB_ACL_MISSING_RULE_GROUP", "RESOURCE_MISSING_WEB_ACL", "RESOURCE_INCORRECT_WEB_ACL"
|
381
|
+
# resp.policy_compliance_detail.violators[0].violation_reason #=> String, one of "WEB_ACL_MISSING_RULE_GROUP", "RESOURCE_MISSING_WEB_ACL", "RESOURCE_INCORRECT_WEB_ACL", "RESOURCE_MISSING_SHIELD_PROTECTION"
|
370
382
|
# resp.policy_compliance_detail.violators[0].resource_type #=> String
|
371
383
|
# resp.policy_compliance_detail.evaluation_limit_exceeded #=> Boolean
|
372
384
|
# resp.policy_compliance_detail.expired_at #=> Time
|
@@ -426,9 +438,11 @@ module Aws::FMS
|
|
426
438
|
# resp.policy.policy_id #=> String
|
427
439
|
# resp.policy.policy_name #=> String
|
428
440
|
# resp.policy.policy_update_token #=> String
|
429
|
-
# resp.policy.security_service_policy_data.type #=> String, one of "WAF"
|
441
|
+
# resp.policy.security_service_policy_data.type #=> String, one of "WAF", "SHIELD_ADVANCED"
|
430
442
|
# resp.policy.security_service_policy_data.managed_service_data #=> String
|
431
443
|
# resp.policy.resource_type #=> String
|
444
|
+
# resp.policy.resource_type_list #=> Array
|
445
|
+
# resp.policy.resource_type_list[0] #=> String
|
432
446
|
# resp.policy.resource_tags #=> Array
|
433
447
|
# resp.policy.resource_tags[0].key #=> String
|
434
448
|
# resp.policy.resource_tags[0].value #=> String
|
@@ -451,6 +465,77 @@ module Aws::FMS
|
|
451
465
|
req.send_request(options)
|
452
466
|
end
|
453
467
|
|
468
|
+
# If you created a Shield Advanced policy, returns policy-level attack
|
469
|
+
# summary information in the event of a potential DDoS attack.
|
470
|
+
#
|
471
|
+
# @option params [required, String] :policy_id
|
472
|
+
# The ID of the policy for which you want to get the attack information.
|
473
|
+
#
|
474
|
+
# @option params [String] :member_account_id
|
475
|
+
# The AWS account that is in scope of the policy that you want to get
|
476
|
+
# the details for.
|
477
|
+
#
|
478
|
+
# @option params [Time,DateTime,Date,Integer,String] :start_time
|
479
|
+
# The start of the time period to query for the attacks. This is a
|
480
|
+
# `timestamp` type. The sample request above indicates a number type
|
481
|
+
# because the default used by AWS Firewall Manager is Unix time in
|
482
|
+
# seconds. However, any valid `timestamp` format is allowed.
|
483
|
+
#
|
484
|
+
# @option params [Time,DateTime,Date,Integer,String] :end_time
|
485
|
+
# The end of the time period to query for the attacks. This is a
|
486
|
+
# `timestamp` type. The sample request above indicates a number type
|
487
|
+
# because the default used by AWS Firewall Manager is Unix time in
|
488
|
+
# seconds. However, any valid `timestamp` format is allowed.
|
489
|
+
#
|
490
|
+
# @option params [String] :next_token
|
491
|
+
# If you specify a value for `MaxResults` and you have more objects than
|
492
|
+
# the number that you specify for `MaxResults`, AWS Firewall Manager
|
493
|
+
# returns a `NextToken` value in the response that allows you to list
|
494
|
+
# another group of objects. For the second and subsequent
|
495
|
+
# `GetProtectionStatus` requests, specify the value of `NextToken` from
|
496
|
+
# the previous response to get information about another batch of
|
497
|
+
# objects.
|
498
|
+
#
|
499
|
+
# @option params [Integer] :max_results
|
500
|
+
# Specifies the number of objects that you want AWS Firewall Manager to
|
501
|
+
# return for this request. If you have more objects than the number that
|
502
|
+
# you specify for `MaxResults`, the response includes a `NextToken`
|
503
|
+
# value that you can use to get another batch of objects.
|
504
|
+
#
|
505
|
+
# @return [Types::GetProtectionStatusResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
506
|
+
#
|
507
|
+
# * {Types::GetProtectionStatusResponse#admin_account_id #admin_account_id} => String
|
508
|
+
# * {Types::GetProtectionStatusResponse#service_type #service_type} => String
|
509
|
+
# * {Types::GetProtectionStatusResponse#data #data} => String
|
510
|
+
# * {Types::GetProtectionStatusResponse#next_token #next_token} => String
|
511
|
+
#
|
512
|
+
# @example Request syntax with placeholder values
|
513
|
+
#
|
514
|
+
# resp = client.get_protection_status({
|
515
|
+
# policy_id: "PolicyId", # required
|
516
|
+
# member_account_id: "AWSAccountId",
|
517
|
+
# start_time: Time.now,
|
518
|
+
# end_time: Time.now,
|
519
|
+
# next_token: "PaginationToken",
|
520
|
+
# max_results: 1,
|
521
|
+
# })
|
522
|
+
#
|
523
|
+
# @example Response structure
|
524
|
+
#
|
525
|
+
# resp.admin_account_id #=> String
|
526
|
+
# resp.service_type #=> String, one of "WAF", "SHIELD_ADVANCED"
|
527
|
+
# resp.data #=> String
|
528
|
+
# resp.next_token #=> String
|
529
|
+
#
|
530
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/GetProtectionStatus AWS API Documentation
|
531
|
+
#
|
532
|
+
# @overload get_protection_status(params = {})
|
533
|
+
# @param [Hash] params ({})
|
534
|
+
def get_protection_status(params = {}, options = {})
|
535
|
+
req = build_request(:get_protection_status, params)
|
536
|
+
req.send_request(options)
|
537
|
+
end
|
538
|
+
|
454
539
|
# Returns an array of `PolicyComplianceStatus` objects in the response.
|
455
540
|
# Use `PolicyComplianceStatus` to get a summary of which member accounts
|
456
541
|
# are protected by the specified policy.
|
@@ -600,7 +685,7 @@ module Aws::FMS
|
|
600
685
|
# resp.policy_list[0].policy_id #=> String
|
601
686
|
# resp.policy_list[0].policy_name #=> String
|
602
687
|
# resp.policy_list[0].resource_type #=> String
|
603
|
-
# resp.policy_list[0].security_service_type #=> String, one of "WAF"
|
688
|
+
# resp.policy_list[0].security_service_type #=> String, one of "WAF", "SHIELD_ADVANCED"
|
604
689
|
# resp.policy_list[0].remediation_enabled #=> Boolean
|
605
690
|
# resp.next_token #=> String
|
606
691
|
#
|
@@ -644,6 +729,23 @@ module Aws::FMS
|
|
644
729
|
|
645
730
|
# Creates an AWS Firewall Manager policy.
|
646
731
|
#
|
732
|
+
# Firewall Manager provides two types of policies: A Shield Advanced
|
733
|
+
# policy, which applies Shield Advanced protection to specified accounts
|
734
|
+
# and resources, or a WAF policy, which contains a rule group and
|
735
|
+
# defines which resources are to be protected by that rule group. A
|
736
|
+
# policy is specific to either WAF or Shield Advanced. If you want to
|
737
|
+
# enforce both WAF rules and Shield Advanced protection across accounts,
|
738
|
+
# you can create multiple policies. You can create one or more policies
|
739
|
+
# for WAF rules, and one or more policies for Shield Advanced.
|
740
|
+
#
|
741
|
+
# You must be subscribed to Shield Advanced to create a Shield Advanced
|
742
|
+
# policy. For more information on subscribing to Shield Advanced, see
|
743
|
+
# [CreateSubscription][1].
|
744
|
+
#
|
745
|
+
#
|
746
|
+
#
|
747
|
+
# [1]: https://docs.aws.amazon.com/waf/latest/DDOSAPIReference/API_CreateSubscription.html
|
748
|
+
#
|
647
749
|
# @option params [required, Types::Policy] :policy
|
648
750
|
# The details of the AWS Firewall Manager policy to be created.
|
649
751
|
#
|
@@ -660,10 +762,11 @@ module Aws::FMS
|
|
660
762
|
# policy_name: "ResourceName", # required
|
661
763
|
# policy_update_token: "PolicyUpdateToken",
|
662
764
|
# security_service_policy_data: { # required
|
663
|
-
# type: "WAF", # required, accepts WAF
|
765
|
+
# type: "WAF", # required, accepts WAF, SHIELD_ADVANCED
|
664
766
|
# managed_service_data: "ManagedServiceData",
|
665
767
|
# },
|
666
768
|
# resource_type: "ResourceType", # required
|
769
|
+
# resource_type_list: ["ResourceType"],
|
667
770
|
# resource_tags: [
|
668
771
|
# {
|
669
772
|
# key: "TagKey", # required
|
@@ -686,9 +789,11 @@ module Aws::FMS
|
|
686
789
|
# resp.policy.policy_id #=> String
|
687
790
|
# resp.policy.policy_name #=> String
|
688
791
|
# resp.policy.policy_update_token #=> String
|
689
|
-
# resp.policy.security_service_policy_data.type #=> String, one of "WAF"
|
792
|
+
# resp.policy.security_service_policy_data.type #=> String, one of "WAF", "SHIELD_ADVANCED"
|
690
793
|
# resp.policy.security_service_policy_data.managed_service_data #=> String
|
691
794
|
# resp.policy.resource_type #=> String
|
795
|
+
# resp.policy.resource_type_list #=> Array
|
796
|
+
# resp.policy.resource_type_list[0] #=> String
|
692
797
|
# resp.policy.resource_tags #=> Array
|
693
798
|
# resp.policy.resource_tags[0].key #=> String
|
694
799
|
# resp.policy.resource_tags[0].value #=> String
|
@@ -724,7 +829,7 @@ module Aws::FMS
|
|
724
829
|
params: params,
|
725
830
|
config: config)
|
726
831
|
context[:gem_name] = 'aws-sdk-fms'
|
727
|
-
context[:gem_version] = '1.
|
832
|
+
context[:gem_version] = '1.12.0'
|
728
833
|
Seahorse::Client::Request.new(handlers, context)
|
729
834
|
end
|
730
835
|
|
@@ -37,6 +37,8 @@ module Aws::FMS
|
|
37
37
|
GetNotificationChannelResponse = Shapes::StructureShape.new(name: 'GetNotificationChannelResponse')
|
38
38
|
GetPolicyRequest = Shapes::StructureShape.new(name: 'GetPolicyRequest')
|
39
39
|
GetPolicyResponse = Shapes::StructureShape.new(name: 'GetPolicyResponse')
|
40
|
+
GetProtectionStatusRequest = Shapes::StructureShape.new(name: 'GetProtectionStatusRequest')
|
41
|
+
GetProtectionStatusResponse = Shapes::StructureShape.new(name: 'GetProtectionStatusResponse')
|
40
42
|
InternalErrorException = Shapes::StructureShape.new(name: 'InternalErrorException')
|
41
43
|
InvalidInputException = Shapes::StructureShape.new(name: 'InvalidInputException')
|
42
44
|
InvalidOperationException = Shapes::StructureShape.new(name: 'InvalidOperationException')
|
@@ -62,6 +64,7 @@ module Aws::FMS
|
|
62
64
|
PolicySummary = Shapes::StructureShape.new(name: 'PolicySummary')
|
63
65
|
PolicySummaryList = Shapes::ListShape.new(name: 'PolicySummaryList')
|
64
66
|
PolicyUpdateToken = Shapes::StringShape.new(name: 'PolicyUpdateToken')
|
67
|
+
ProtectionData = Shapes::StringShape.new(name: 'ProtectionData')
|
65
68
|
PutNotificationChannelRequest = Shapes::StructureShape.new(name: 'PutNotificationChannelRequest')
|
66
69
|
PutPolicyRequest = Shapes::StructureShape.new(name: 'PutPolicyRequest')
|
67
70
|
PutPolicyResponse = Shapes::StructureShape.new(name: 'PutPolicyResponse')
|
@@ -73,6 +76,7 @@ module Aws::FMS
|
|
73
76
|
ResourceTag = Shapes::StructureShape.new(name: 'ResourceTag')
|
74
77
|
ResourceTags = Shapes::ListShape.new(name: 'ResourceTags')
|
75
78
|
ResourceType = Shapes::StringShape.new(name: 'ResourceType')
|
79
|
+
ResourceTypeList = Shapes::ListShape.new(name: 'ResourceTypeList')
|
76
80
|
SecurityServicePolicyData = Shapes::StructureShape.new(name: 'SecurityServicePolicyData')
|
77
81
|
SecurityServiceType = Shapes::StringShape.new(name: 'SecurityServiceType')
|
78
82
|
TagKey = Shapes::StringShape.new(name: 'TagKey')
|
@@ -136,6 +140,20 @@ module Aws::FMS
|
|
136
140
|
GetPolicyResponse.add_member(:policy_arn, Shapes::ShapeRef.new(shape: ResourceArn, location_name: "PolicyArn"))
|
137
141
|
GetPolicyResponse.struct_class = Types::GetPolicyResponse
|
138
142
|
|
143
|
+
GetProtectionStatusRequest.add_member(:policy_id, Shapes::ShapeRef.new(shape: PolicyId, required: true, location_name: "PolicyId"))
|
144
|
+
GetProtectionStatusRequest.add_member(:member_account_id, Shapes::ShapeRef.new(shape: AWSAccountId, location_name: "MemberAccountId"))
|
145
|
+
GetProtectionStatusRequest.add_member(:start_time, Shapes::ShapeRef.new(shape: TimeStamp, location_name: "StartTime"))
|
146
|
+
GetProtectionStatusRequest.add_member(:end_time, Shapes::ShapeRef.new(shape: TimeStamp, location_name: "EndTime"))
|
147
|
+
GetProtectionStatusRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "NextToken"))
|
148
|
+
GetProtectionStatusRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: PaginationMaxResults, location_name: "MaxResults"))
|
149
|
+
GetProtectionStatusRequest.struct_class = Types::GetProtectionStatusRequest
|
150
|
+
|
151
|
+
GetProtectionStatusResponse.add_member(:admin_account_id, Shapes::ShapeRef.new(shape: AWSAccountId, location_name: "AdminAccountId"))
|
152
|
+
GetProtectionStatusResponse.add_member(:service_type, Shapes::ShapeRef.new(shape: SecurityServiceType, location_name: "ServiceType"))
|
153
|
+
GetProtectionStatusResponse.add_member(:data, Shapes::ShapeRef.new(shape: ProtectionData, location_name: "Data"))
|
154
|
+
GetProtectionStatusResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "NextToken"))
|
155
|
+
GetProtectionStatusResponse.struct_class = Types::GetProtectionStatusResponse
|
156
|
+
|
139
157
|
IssueInfoMap.key = Shapes::ShapeRef.new(shape: DependentServiceName)
|
140
158
|
IssueInfoMap.value = Shapes::ShapeRef.new(shape: DetailedInfo)
|
141
159
|
|
@@ -171,6 +189,7 @@ module Aws::FMS
|
|
171
189
|
Policy.add_member(:policy_update_token, Shapes::ShapeRef.new(shape: PolicyUpdateToken, location_name: "PolicyUpdateToken"))
|
172
190
|
Policy.add_member(:security_service_policy_data, Shapes::ShapeRef.new(shape: SecurityServicePolicyData, required: true, location_name: "SecurityServicePolicyData"))
|
173
191
|
Policy.add_member(:resource_type, Shapes::ShapeRef.new(shape: ResourceType, required: true, location_name: "ResourceType"))
|
192
|
+
Policy.add_member(:resource_type_list, Shapes::ShapeRef.new(shape: ResourceTypeList, location_name: "ResourceTypeList"))
|
174
193
|
Policy.add_member(:resource_tags, Shapes::ShapeRef.new(shape: ResourceTags, location_name: "ResourceTags"))
|
175
194
|
Policy.add_member(:exclude_resource_tags, Shapes::ShapeRef.new(shape: Boolean, required: true, location_name: "ExcludeResourceTags"))
|
176
195
|
Policy.add_member(:remediation_enabled, Shapes::ShapeRef.new(shape: Boolean, required: true, location_name: "RemediationEnabled"))
|
@@ -225,6 +244,8 @@ module Aws::FMS
|
|
225
244
|
|
226
245
|
ResourceTags.member = Shapes::ShapeRef.new(shape: ResourceTag)
|
227
246
|
|
247
|
+
ResourceTypeList.member = Shapes::ShapeRef.new(shape: ResourceType)
|
248
|
+
|
228
249
|
SecurityServicePolicyData.add_member(:type, Shapes::ShapeRef.new(shape: SecurityServiceType, required: true, location_name: "Type"))
|
229
250
|
SecurityServicePolicyData.add_member(:managed_service_data, Shapes::ShapeRef.new(shape: ManagedServiceData, location_name: "ManagedServiceData"))
|
230
251
|
SecurityServicePolicyData.struct_class = Types::SecurityServicePolicyData
|
@@ -337,6 +358,17 @@ module Aws::FMS
|
|
337
358
|
o.errors << Shapes::ShapeRef.new(shape: InvalidTypeException)
|
338
359
|
end)
|
339
360
|
|
361
|
+
api.add_operation(:get_protection_status, Seahorse::Model::Operation.new.tap do |o|
|
362
|
+
o.name = "GetProtectionStatus"
|
363
|
+
o.http_method = "POST"
|
364
|
+
o.http_request_uri = "/"
|
365
|
+
o.input = Shapes::ShapeRef.new(shape: GetProtectionStatusRequest)
|
366
|
+
o.output = Shapes::ShapeRef.new(shape: GetProtectionStatusResponse)
|
367
|
+
o.errors << Shapes::ShapeRef.new(shape: InvalidInputException)
|
368
|
+
o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
|
369
|
+
o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
|
370
|
+
end)
|
371
|
+
|
340
372
|
api.add_operation(:list_compliance_status, Seahorse::Model::Operation.new.tap do |o|
|
341
373
|
o.name = "ListComplianceStatus"
|
342
374
|
o.http_method = "POST"
|
@@ -345,6 +377,12 @@ module Aws::FMS
|
|
345
377
|
o.output = Shapes::ShapeRef.new(shape: ListComplianceStatusResponse)
|
346
378
|
o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
|
347
379
|
o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
|
380
|
+
o[:pager] = Aws::Pager.new(
|
381
|
+
limit_key: "max_results",
|
382
|
+
tokens: {
|
383
|
+
"next_token" => "next_token"
|
384
|
+
}
|
385
|
+
)
|
348
386
|
end)
|
349
387
|
|
350
388
|
api.add_operation(:list_member_accounts, Seahorse::Model::Operation.new.tap do |o|
|
@@ -355,6 +393,12 @@ module Aws::FMS
|
|
355
393
|
o.output = Shapes::ShapeRef.new(shape: ListMemberAccountsResponse)
|
356
394
|
o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
|
357
395
|
o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
|
396
|
+
o[:pager] = Aws::Pager.new(
|
397
|
+
limit_key: "max_results",
|
398
|
+
tokens: {
|
399
|
+
"next_token" => "next_token"
|
400
|
+
}
|
401
|
+
)
|
358
402
|
end)
|
359
403
|
|
360
404
|
api.add_operation(:list_policies, Seahorse::Model::Operation.new.tap do |o|
|
@@ -367,6 +411,12 @@ module Aws::FMS
|
|
367
411
|
o.errors << Shapes::ShapeRef.new(shape: InvalidOperationException)
|
368
412
|
o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
|
369
413
|
o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
|
414
|
+
o[:pager] = Aws::Pager.new(
|
415
|
+
limit_key: "max_results",
|
416
|
+
tokens: {
|
417
|
+
"next_token" => "next_token"
|
418
|
+
}
|
419
|
+
)
|
370
420
|
end)
|
371
421
|
|
372
422
|
api.add_operation(:put_notification_channel, Seahorse::Model::Operation.new.tap do |o|
|
data/lib/aws-sdk-fms/types.rb
CHANGED
@@ -46,7 +46,7 @@ module Aws::FMS
|
|
46
46
|
#
|
47
47
|
# @!attribute [rw] resource_type
|
48
48
|
# The resource type. This is in the format shown in [AWS Resource
|
49
|
-
# Types Reference][1].
|
49
|
+
# Types Reference][1]. For example:
|
50
50
|
# `AWS::ElasticLoadBalancingV2::LoadBalancer` or
|
51
51
|
# `AWS::CloudFront::Distribution`.
|
52
52
|
#
|
@@ -84,9 +84,23 @@ module Aws::FMS
|
|
84
84
|
# @return [String]
|
85
85
|
#
|
86
86
|
# @!attribute [rw] delete_all_policy_resources
|
87
|
-
# If `True`, the request will also
|
88
|
-
#
|
89
|
-
#
|
87
|
+
# If `True`, the request will also perform a clean-up process that
|
88
|
+
# will:
|
89
|
+
#
|
90
|
+
# * Delete rule groups created by AWS Firewall Manager
|
91
|
+
#
|
92
|
+
# * Remove web ACLs from in-scope resources
|
93
|
+
#
|
94
|
+
# * Delete web ACLs that contain no rules or rule groups
|
95
|
+
#
|
96
|
+
# After the cleanup, in-scope resources will no longer be protected by
|
97
|
+
# web ACLs in this policy. Protection of out-of-scope resources will
|
98
|
+
# remain unchanged. Scope is determined by tags and accounts
|
99
|
+
# associated with the policy. When creating the policy, if you
|
100
|
+
# specified that only resources in specific accounts or with specific
|
101
|
+
# tags be protected by the policy, those resources are in-scope. All
|
102
|
+
# others are out of scope. If you did not specify tags or accounts,
|
103
|
+
# all resources are in-scope.
|
90
104
|
# @return [Boolean]
|
91
105
|
#
|
92
106
|
# @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/DeletePolicyRequest AWS API Documentation
|
@@ -252,6 +266,121 @@ module Aws::FMS
|
|
252
266
|
include Aws::Structure
|
253
267
|
end
|
254
268
|
|
269
|
+
# @note When making an API call, you may pass GetProtectionStatusRequest
|
270
|
+
# data as a hash:
|
271
|
+
#
|
272
|
+
# {
|
273
|
+
# policy_id: "PolicyId", # required
|
274
|
+
# member_account_id: "AWSAccountId",
|
275
|
+
# start_time: Time.now,
|
276
|
+
# end_time: Time.now,
|
277
|
+
# next_token: "PaginationToken",
|
278
|
+
# max_results: 1,
|
279
|
+
# }
|
280
|
+
#
|
281
|
+
# @!attribute [rw] policy_id
|
282
|
+
# The ID of the policy for which you want to get the attack
|
283
|
+
# information.
|
284
|
+
# @return [String]
|
285
|
+
#
|
286
|
+
# @!attribute [rw] member_account_id
|
287
|
+
# The AWS account that is in scope of the policy that you want to get
|
288
|
+
# the details for.
|
289
|
+
# @return [String]
|
290
|
+
#
|
291
|
+
# @!attribute [rw] start_time
|
292
|
+
# The start of the time period to query for the attacks. This is a
|
293
|
+
# `timestamp` type. The sample request above indicates a number type
|
294
|
+
# because the default used by AWS Firewall Manager is Unix time in
|
295
|
+
# seconds. However, any valid `timestamp` format is allowed.
|
296
|
+
# @return [Time]
|
297
|
+
#
|
298
|
+
# @!attribute [rw] end_time
|
299
|
+
# The end of the time period to query for the attacks. This is a
|
300
|
+
# `timestamp` type. The sample request above indicates a number type
|
301
|
+
# because the default used by AWS Firewall Manager is Unix time in
|
302
|
+
# seconds. However, any valid `timestamp` format is allowed.
|
303
|
+
# @return [Time]
|
304
|
+
#
|
305
|
+
# @!attribute [rw] next_token
|
306
|
+
# If you specify a value for `MaxResults` and you have more objects
|
307
|
+
# than the number that you specify for `MaxResults`, AWS Firewall
|
308
|
+
# Manager returns a `NextToken` value in the response that allows you
|
309
|
+
# to list another group of objects. For the second and subsequent
|
310
|
+
# `GetProtectionStatus` requests, specify the value of `NextToken`
|
311
|
+
# from the previous response to get information about another batch of
|
312
|
+
# objects.
|
313
|
+
# @return [String]
|
314
|
+
#
|
315
|
+
# @!attribute [rw] max_results
|
316
|
+
# Specifies the number of objects that you want AWS Firewall Manager
|
317
|
+
# to return for this request. If you have more objects than the number
|
318
|
+
# that you specify for `MaxResults`, the response includes a
|
319
|
+
# `NextToken` value that you can use to get another batch of objects.
|
320
|
+
# @return [Integer]
|
321
|
+
#
|
322
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/GetProtectionStatusRequest AWS API Documentation
|
323
|
+
#
|
324
|
+
class GetProtectionStatusRequest < Struct.new(
|
325
|
+
:policy_id,
|
326
|
+
:member_account_id,
|
327
|
+
:start_time,
|
328
|
+
:end_time,
|
329
|
+
:next_token,
|
330
|
+
:max_results)
|
331
|
+
include Aws::Structure
|
332
|
+
end
|
333
|
+
|
334
|
+
# @!attribute [rw] admin_account_id
|
335
|
+
# The ID of the AWS Firewall administrator account for this policy.
|
336
|
+
# @return [String]
|
337
|
+
#
|
338
|
+
# @!attribute [rw] service_type
|
339
|
+
# The service type that is protected by the policy. Currently, this is
|
340
|
+
# always `SHIELD_ADVANCED`.
|
341
|
+
# @return [String]
|
342
|
+
#
|
343
|
+
# @!attribute [rw] data
|
344
|
+
# Details about the attack, including the following:
|
345
|
+
#
|
346
|
+
# * Attack type
|
347
|
+
#
|
348
|
+
# * Account ID
|
349
|
+
#
|
350
|
+
# * ARN of the resource attacked
|
351
|
+
#
|
352
|
+
# * Start time of the attack
|
353
|
+
#
|
354
|
+
# * End time of the attack (ongoing attacks will not have an end time)
|
355
|
+
#
|
356
|
+
# The details are in JSON format. An example is shown in the Examples
|
357
|
+
# section below.
|
358
|
+
# @return [String]
|
359
|
+
#
|
360
|
+
# @!attribute [rw] next_token
|
361
|
+
# If you have more objects than the number that you specified for
|
362
|
+
# `MaxResults` in the request, the response includes a `NextToken`
|
363
|
+
# value. To list more objects, submit another `GetProtectionStatus`
|
364
|
+
# request, and specify the `NextToken` value from the response in the
|
365
|
+
# `NextToken` value in the next request.
|
366
|
+
#
|
367
|
+
# AWS SDKs provide auto-pagination that identify `NextToken` in a
|
368
|
+
# response and make subsequent request calls automatically on your
|
369
|
+
# behalf. However, this feature is not supported by
|
370
|
+
# `GetProtectionStatus`. You must submit subsequent requests with
|
371
|
+
# `NextToken` using your own processes.
|
372
|
+
# @return [String]
|
373
|
+
#
|
374
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/GetProtectionStatusResponse AWS API Documentation
|
375
|
+
#
|
376
|
+
class GetProtectionStatusResponse < Struct.new(
|
377
|
+
:admin_account_id,
|
378
|
+
:service_type,
|
379
|
+
:data,
|
380
|
+
:next_token)
|
381
|
+
include Aws::Structure
|
382
|
+
end
|
383
|
+
|
255
384
|
# @note When making an API call, you may pass ListComplianceStatusRequest
|
256
385
|
# data as a hash:
|
257
386
|
#
|
@@ -435,10 +564,11 @@ module Aws::FMS
|
|
435
564
|
# policy_name: "ResourceName", # required
|
436
565
|
# policy_update_token: "PolicyUpdateToken",
|
437
566
|
# security_service_policy_data: { # required
|
438
|
-
# type: "WAF", # required, accepts WAF
|
567
|
+
# type: "WAF", # required, accepts WAF, SHIELD_ADVANCED
|
439
568
|
# managed_service_data: "ManagedServiceData",
|
440
569
|
# },
|
441
570
|
# resource_type: "ResourceType", # required
|
571
|
+
# resource_type_list: ["ResourceType"],
|
442
572
|
# resource_tags: [
|
443
573
|
# {
|
444
574
|
# key: "TagKey", # required
|
@@ -477,10 +607,9 @@ module Aws::FMS
|
|
477
607
|
# @return [Types::SecurityServicePolicyData]
|
478
608
|
#
|
479
609
|
# @!attribute [rw] resource_type
|
480
|
-
# The type of resource to protect with the policy
|
481
|
-
#
|
482
|
-
#
|
483
|
-
# are `AWS::ElasticLoadBalancingV2::LoadBalancer` or
|
610
|
+
# The type of resource to protect with the policy. This is in the
|
611
|
+
# format shown in [AWS Resource Types Reference][1]. For example:
|
612
|
+
# `AWS::ElasticLoadBalancingV2::LoadBalancer` or
|
484
613
|
# `AWS::CloudFront::Distribution`.
|
485
614
|
#
|
486
615
|
#
|
@@ -488,6 +617,10 @@ module Aws::FMS
|
|
488
617
|
# [1]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html
|
489
618
|
# @return [String]
|
490
619
|
#
|
620
|
+
# @!attribute [rw] resource_type_list
|
621
|
+
# An array of `ResourceType`.
|
622
|
+
# @return [Array<String>]
|
623
|
+
#
|
491
624
|
# @!attribute [rw] resource_tags
|
492
625
|
# An array of `ResourceTag` objects.
|
493
626
|
# @return [Array<Types::ResourceTag>]
|
@@ -533,6 +666,7 @@ module Aws::FMS
|
|
533
666
|
:policy_update_token,
|
534
667
|
:security_service_policy_data,
|
535
668
|
:resource_type,
|
669
|
+
:resource_type_list,
|
536
670
|
:resource_tags,
|
537
671
|
:exclude_resource_tags,
|
538
672
|
:remediation_enabled,
|
@@ -655,10 +789,9 @@ module Aws::FMS
|
|
655
789
|
# @return [String]
|
656
790
|
#
|
657
791
|
# @!attribute [rw] resource_type
|
658
|
-
# The type of resource to protect with the policy
|
659
|
-
#
|
660
|
-
#
|
661
|
-
# are `AWS::ElasticLoadBalancingV2::LoadBalancer` or
|
792
|
+
# The type of resource to protect with the policy. This is in the
|
793
|
+
# format shown in [AWS Resource Types Reference][1]. For example:
|
794
|
+
# `AWS::ElasticLoadBalancingV2::LoadBalancer` or
|
662
795
|
# `AWS::CloudFront::Distribution`.
|
663
796
|
#
|
664
797
|
#
|
@@ -668,7 +801,8 @@ module Aws::FMS
|
|
668
801
|
#
|
669
802
|
# @!attribute [rw] security_service_type
|
670
803
|
# The service that the policy is using to protect the resources. This
|
671
|
-
#
|
804
|
+
# specifies the type of policy that is created, either a WAF policy or
|
805
|
+
# Shield Advanced policy.
|
672
806
|
# @return [String]
|
673
807
|
#
|
674
808
|
# @!attribute [rw] remediation_enabled
|
@@ -723,10 +857,11 @@ module Aws::FMS
|
|
723
857
|
# policy_name: "ResourceName", # required
|
724
858
|
# policy_update_token: "PolicyUpdateToken",
|
725
859
|
# security_service_policy_data: { # required
|
726
|
-
# type: "WAF", # required, accepts WAF
|
860
|
+
# type: "WAF", # required, accepts WAF, SHIELD_ADVANCED
|
727
861
|
# managed_service_data: "ManagedServiceData",
|
728
862
|
# },
|
729
863
|
# resource_type: "ResourceType", # required
|
864
|
+
# resource_type_list: ["ResourceType"],
|
730
865
|
# resource_tags: [
|
731
866
|
# {
|
732
867
|
# key: "TagKey", # required
|
@@ -816,13 +951,14 @@ module Aws::FMS
|
|
816
951
|
# data as a hash:
|
817
952
|
#
|
818
953
|
# {
|
819
|
-
# type: "WAF", # required, accepts WAF
|
954
|
+
# type: "WAF", # required, accepts WAF, SHIELD_ADVANCED
|
820
955
|
# managed_service_data: "ManagedServiceData",
|
821
956
|
# }
|
822
957
|
#
|
823
958
|
# @!attribute [rw] type
|
824
959
|
# The service that the policy is using to protect the resources. This
|
825
|
-
#
|
960
|
+
# specifies the type of policy that is created, either a WAF policy or
|
961
|
+
# Shield Advanced policy.
|
826
962
|
# @return [String]
|
827
963
|
#
|
828
964
|
# @!attribute [rw] managed_service_data
|
@@ -833,6 +969,8 @@ module Aws::FMS
|
|
833
969
|
# [\{"id": "12345678-1bcd-9012-efga-0987654321ab",
|
834
970
|
# "overrideAction" : \{"type": "COUNT"\}\}], "defaultAction":
|
835
971
|
# \{"type": "BLOCK"\}\}`
|
972
|
+
#
|
973
|
+
# If this is a Shield Advanced policy, this string will be empty.
|
836
974
|
# @return [String]
|
837
975
|
#
|
838
976
|
# @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/SecurityServicePolicyData AWS API Documentation
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: aws-sdk-fms
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.12.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Amazon Web Services
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-03-
|
11
|
+
date: 2019-03-25 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: aws-sdk-core
|