aws-sdk-securityhub 1.82.0 → 1.84.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +10 -0
- data/VERSION +1 -1
- data/lib/aws-sdk-securityhub/client.rb +1328 -155
- data/lib/aws-sdk-securityhub/client_api.rb +237 -0
- data/lib/aws-sdk-securityhub/endpoints.rb +70 -0
- data/lib/aws-sdk-securityhub/plugins/endpoints.rb +10 -0
- data/lib/aws-sdk-securityhub/types.rb +851 -0
- data/lib/aws-sdk-securityhub.rb +1 -1
- metadata +4 -4
@@ -275,6 +275,11 @@ module Aws::SecurityHub
|
|
275
275
|
# in the future.
|
276
276
|
#
|
277
277
|
#
|
278
|
+
# @option options [String] :sdk_ua_app_id
|
279
|
+
# A unique and opaque application ID that is appended to the
|
280
|
+
# User-Agent header as app/<sdk_ua_app_id>. It should have a
|
281
|
+
# maximum length of 50.
|
282
|
+
#
|
278
283
|
# @option options [String] :secret_access_key
|
279
284
|
#
|
280
285
|
# @option options [String] :session_token
|
@@ -463,6 +468,67 @@ module Aws::SecurityHub
|
|
463
468
|
req.send_request(options)
|
464
469
|
end
|
465
470
|
|
471
|
+
# Deletes one or more automation rules.
|
472
|
+
#
|
473
|
+
# @option params [required, Array<String>] :automation_rules_arns
|
474
|
+
# A list of Amazon Resource Names (ARNs) for the rules that are to be
|
475
|
+
# deleted.
|
476
|
+
#
|
477
|
+
# @return [Types::BatchDeleteAutomationRulesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
478
|
+
#
|
479
|
+
# * {Types::BatchDeleteAutomationRulesResponse#processed_automation_rules #processed_automation_rules} => Array<String>
|
480
|
+
# * {Types::BatchDeleteAutomationRulesResponse#unprocessed_automation_rules #unprocessed_automation_rules} => Array<Types::UnprocessedAutomationRule>
|
481
|
+
#
|
482
|
+
#
|
483
|
+
# @example Example: To delete one or more automation rules
|
484
|
+
#
|
485
|
+
# # The following example deletes the specified automation rules.
|
486
|
+
#
|
487
|
+
# resp = client.batch_delete_automation_rules({
|
488
|
+
# automation_rules_arns: [
|
489
|
+
# "arn:aws:securityhub:us-east-1:123456789012:automation-rule/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
|
490
|
+
# "arn:aws:securityhub:us-east-1:123456789012:automation-rule/a1b2c3d4-5678-90ab-cdef-EXAMPLE22222",
|
491
|
+
# ],
|
492
|
+
# })
|
493
|
+
#
|
494
|
+
# resp.to_h outputs the following:
|
495
|
+
# {
|
496
|
+
# processed_automation_rules: [
|
497
|
+
# "arn:aws:securityhub:us-east-1:123456789012:automation-rule/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
|
498
|
+
# ],
|
499
|
+
# unprocessed_automation_rules: [
|
500
|
+
# {
|
501
|
+
# error_code: 500,
|
502
|
+
# error_message: "InternalException",
|
503
|
+
# rule_arn: "arn:aws:securityhub:us-east-1:123456789012:automation-rule/a1b2c3d4-5678-90ab-cdef-EXAMPLE22222",
|
504
|
+
# },
|
505
|
+
# ],
|
506
|
+
# }
|
507
|
+
#
|
508
|
+
# @example Request syntax with placeholder values
|
509
|
+
#
|
510
|
+
# resp = client.batch_delete_automation_rules({
|
511
|
+
# automation_rules_arns: ["NonEmptyString"], # required
|
512
|
+
# })
|
513
|
+
#
|
514
|
+
# @example Response structure
|
515
|
+
#
|
516
|
+
# resp.processed_automation_rules #=> Array
|
517
|
+
# resp.processed_automation_rules[0] #=> String
|
518
|
+
# resp.unprocessed_automation_rules #=> Array
|
519
|
+
# resp.unprocessed_automation_rules[0].rule_arn #=> String
|
520
|
+
# resp.unprocessed_automation_rules[0].error_code #=> Integer
|
521
|
+
# resp.unprocessed_automation_rules[0].error_message #=> String
|
522
|
+
#
|
523
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/BatchDeleteAutomationRules AWS API Documentation
|
524
|
+
#
|
525
|
+
# @overload batch_delete_automation_rules(params = {})
|
526
|
+
# @param [Hash] params ({})
|
527
|
+
def batch_delete_automation_rules(params = {}, options = {})
|
528
|
+
req = build_request(:batch_delete_automation_rules, params)
|
529
|
+
req.send_request(options)
|
530
|
+
end
|
531
|
+
|
466
532
|
# Disables the standards specified by the provided
|
467
533
|
# `StandardsSubscriptionArns`.
|
468
534
|
#
|
@@ -605,6 +671,281 @@ module Aws::SecurityHub
|
|
605
671
|
req.send_request(options)
|
606
672
|
end
|
607
673
|
|
674
|
+
# Retrieves a list of details for automation rules based on rule Amazon
|
675
|
+
# Resource Names (ARNs).
|
676
|
+
#
|
677
|
+
# @option params [required, Array<String>] :automation_rules_arns
|
678
|
+
# A list of rule ARNs to get details for.
|
679
|
+
#
|
680
|
+
# @return [Types::BatchGetAutomationRulesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
681
|
+
#
|
682
|
+
# * {Types::BatchGetAutomationRulesResponse#rules #rules} => Array<Types::AutomationRulesConfig>
|
683
|
+
# * {Types::BatchGetAutomationRulesResponse#unprocessed_automation_rules #unprocessed_automation_rules} => Array<Types::UnprocessedAutomationRule>
|
684
|
+
#
|
685
|
+
#
|
686
|
+
# @example Example: To update one ore more automation rules
|
687
|
+
#
|
688
|
+
# # The following example updates the specified automation rules.
|
689
|
+
#
|
690
|
+
# resp = client.batch_get_automation_rules({
|
691
|
+
# automation_rules_arns: [
|
692
|
+
# "arn:aws:securityhub:us-east-1:123456789012:automation-rule/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
|
693
|
+
# "arn:aws:securityhub:us-east-1:123456789012:automation-rule/a1b2c3d4-5678-90ab-cdef-EXAMPLE22222",
|
694
|
+
# ],
|
695
|
+
# })
|
696
|
+
#
|
697
|
+
# resp.to_h outputs the following:
|
698
|
+
# {
|
699
|
+
# rules: [
|
700
|
+
# {
|
701
|
+
# actions: [
|
702
|
+
# {
|
703
|
+
# finding_fields_update: {
|
704
|
+
# workflow: {
|
705
|
+
# status: "RESOLVED",
|
706
|
+
# },
|
707
|
+
# },
|
708
|
+
# type: "FINDING_FIELDS_UPDATE",
|
709
|
+
# },
|
710
|
+
# ],
|
711
|
+
# created_at: Time.parse("2022-08-31T01:52:33.250Z"),
|
712
|
+
# created_by: "AROAJURBUYQQNL5OL2TIM:TEST-16MJ75L9VBK14",
|
713
|
+
# criteria: {
|
714
|
+
# aws_account_id: [
|
715
|
+
# {
|
716
|
+
# comparison: "EQUALS",
|
717
|
+
# value: "111122223333",
|
718
|
+
# },
|
719
|
+
# ],
|
720
|
+
# first_observed_at: [
|
721
|
+
# {
|
722
|
+
# date_range: {
|
723
|
+
# unit: "DAYS",
|
724
|
+
# value: 5,
|
725
|
+
# },
|
726
|
+
# },
|
727
|
+
# ],
|
728
|
+
# type: [
|
729
|
+
# {
|
730
|
+
# comparison: "EQUALS",
|
731
|
+
# value: "Software and Configuration Checks/Industry and Regulatory Standards",
|
732
|
+
# },
|
733
|
+
# ],
|
734
|
+
# },
|
735
|
+
# description: "sample rule description 1",
|
736
|
+
# rule_arn: "arn:aws:securityhub:us-east-1:123456789012:automation-rule/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
|
737
|
+
# rule_name: "sample-rule-name-1",
|
738
|
+
# rule_order: 1,
|
739
|
+
# rule_status: "ENABLED",
|
740
|
+
# updated_at: Time.parse("2022-08-31T01:52:33.250Z"),
|
741
|
+
# },
|
742
|
+
# {
|
743
|
+
# actions: [
|
744
|
+
# {
|
745
|
+
# finding_fields_update: {
|
746
|
+
# workflow: {
|
747
|
+
# status: "RESOLVED",
|
748
|
+
# },
|
749
|
+
# },
|
750
|
+
# type: "FINDING_FIELDS_UPDATE",
|
751
|
+
# },
|
752
|
+
# ],
|
753
|
+
# created_at: Time.parse("2022-08-31T01:52:33.250Z"),
|
754
|
+
# created_by: "AROAJURBUYQQNL5OL2TIM:TEST-16MJ75L9VBK14",
|
755
|
+
# criteria: {
|
756
|
+
# resource_type: [
|
757
|
+
# {
|
758
|
+
# comparison: "EQUALS",
|
759
|
+
# value: "Ec2Instance",
|
760
|
+
# },
|
761
|
+
# ],
|
762
|
+
# severity_label: [
|
763
|
+
# {
|
764
|
+
# comparison: "EQUALS",
|
765
|
+
# value: "INFORMATIONAL",
|
766
|
+
# },
|
767
|
+
# ],
|
768
|
+
# },
|
769
|
+
# description: "Sample rule description 2",
|
770
|
+
# rule_arn: "arn:aws:securityhub:us-east-1:123456789012:automation-rule/a1b2c3d4-5678-90ab-cdef-EXAMPLE22222",
|
771
|
+
# rule_name: "sample-rule-name-2",
|
772
|
+
# rule_order: 2,
|
773
|
+
# rule_status: "ENABLED",
|
774
|
+
# updated_at: Time.parse("2022-08-31T01:52:33.250Z"),
|
775
|
+
# },
|
776
|
+
# ],
|
777
|
+
# }
|
778
|
+
#
|
779
|
+
# @example Request syntax with placeholder values
|
780
|
+
#
|
781
|
+
# resp = client.batch_get_automation_rules({
|
782
|
+
# automation_rules_arns: ["NonEmptyString"], # required
|
783
|
+
# })
|
784
|
+
#
|
785
|
+
# @example Response structure
|
786
|
+
#
|
787
|
+
# resp.rules #=> Array
|
788
|
+
# resp.rules[0].rule_arn #=> String
|
789
|
+
# resp.rules[0].rule_status #=> String, one of "ENABLED", "DISABLED"
|
790
|
+
# resp.rules[0].rule_order #=> Integer
|
791
|
+
# resp.rules[0].rule_name #=> String
|
792
|
+
# resp.rules[0].description #=> String
|
793
|
+
# resp.rules[0].is_terminal #=> Boolean
|
794
|
+
# resp.rules[0].criteria.product_arn #=> Array
|
795
|
+
# resp.rules[0].criteria.product_arn[0].value #=> String
|
796
|
+
# resp.rules[0].criteria.product_arn[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS", "PREFIX_NOT_EQUALS"
|
797
|
+
# resp.rules[0].criteria.aws_account_id #=> Array
|
798
|
+
# resp.rules[0].criteria.aws_account_id[0].value #=> String
|
799
|
+
# resp.rules[0].criteria.aws_account_id[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS", "PREFIX_NOT_EQUALS"
|
800
|
+
# resp.rules[0].criteria.id #=> Array
|
801
|
+
# resp.rules[0].criteria.id[0].value #=> String
|
802
|
+
# resp.rules[0].criteria.id[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS", "PREFIX_NOT_EQUALS"
|
803
|
+
# resp.rules[0].criteria.generator_id #=> Array
|
804
|
+
# resp.rules[0].criteria.generator_id[0].value #=> String
|
805
|
+
# resp.rules[0].criteria.generator_id[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS", "PREFIX_NOT_EQUALS"
|
806
|
+
# resp.rules[0].criteria.type #=> Array
|
807
|
+
# resp.rules[0].criteria.type[0].value #=> String
|
808
|
+
# resp.rules[0].criteria.type[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS", "PREFIX_NOT_EQUALS"
|
809
|
+
# resp.rules[0].criteria.first_observed_at #=> Array
|
810
|
+
# resp.rules[0].criteria.first_observed_at[0].start #=> String
|
811
|
+
# resp.rules[0].criteria.first_observed_at[0].end #=> String
|
812
|
+
# resp.rules[0].criteria.first_observed_at[0].date_range.value #=> Integer
|
813
|
+
# resp.rules[0].criteria.first_observed_at[0].date_range.unit #=> String, one of "DAYS"
|
814
|
+
# resp.rules[0].criteria.last_observed_at #=> Array
|
815
|
+
# resp.rules[0].criteria.last_observed_at[0].start #=> String
|
816
|
+
# resp.rules[0].criteria.last_observed_at[0].end #=> String
|
817
|
+
# resp.rules[0].criteria.last_observed_at[0].date_range.value #=> Integer
|
818
|
+
# resp.rules[0].criteria.last_observed_at[0].date_range.unit #=> String, one of "DAYS"
|
819
|
+
# resp.rules[0].criteria.created_at #=> Array
|
820
|
+
# resp.rules[0].criteria.created_at[0].start #=> String
|
821
|
+
# resp.rules[0].criteria.created_at[0].end #=> String
|
822
|
+
# resp.rules[0].criteria.created_at[0].date_range.value #=> Integer
|
823
|
+
# resp.rules[0].criteria.created_at[0].date_range.unit #=> String, one of "DAYS"
|
824
|
+
# resp.rules[0].criteria.updated_at #=> Array
|
825
|
+
# resp.rules[0].criteria.updated_at[0].start #=> String
|
826
|
+
# resp.rules[0].criteria.updated_at[0].end #=> String
|
827
|
+
# resp.rules[0].criteria.updated_at[0].date_range.value #=> Integer
|
828
|
+
# resp.rules[0].criteria.updated_at[0].date_range.unit #=> String, one of "DAYS"
|
829
|
+
# resp.rules[0].criteria.confidence #=> Array
|
830
|
+
# resp.rules[0].criteria.confidence[0].gte #=> Float
|
831
|
+
# resp.rules[0].criteria.confidence[0].lte #=> Float
|
832
|
+
# resp.rules[0].criteria.confidence[0].eq #=> Float
|
833
|
+
# resp.rules[0].criteria.criticality #=> Array
|
834
|
+
# resp.rules[0].criteria.criticality[0].gte #=> Float
|
835
|
+
# resp.rules[0].criteria.criticality[0].lte #=> Float
|
836
|
+
# resp.rules[0].criteria.criticality[0].eq #=> Float
|
837
|
+
# resp.rules[0].criteria.title #=> Array
|
838
|
+
# resp.rules[0].criteria.title[0].value #=> String
|
839
|
+
# resp.rules[0].criteria.title[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS", "PREFIX_NOT_EQUALS"
|
840
|
+
# resp.rules[0].criteria.description #=> Array
|
841
|
+
# resp.rules[0].criteria.description[0].value #=> String
|
842
|
+
# resp.rules[0].criteria.description[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS", "PREFIX_NOT_EQUALS"
|
843
|
+
# resp.rules[0].criteria.source_url #=> Array
|
844
|
+
# resp.rules[0].criteria.source_url[0].value #=> String
|
845
|
+
# resp.rules[0].criteria.source_url[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS", "PREFIX_NOT_EQUALS"
|
846
|
+
# resp.rules[0].criteria.product_name #=> Array
|
847
|
+
# resp.rules[0].criteria.product_name[0].value #=> String
|
848
|
+
# resp.rules[0].criteria.product_name[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS", "PREFIX_NOT_EQUALS"
|
849
|
+
# resp.rules[0].criteria.company_name #=> Array
|
850
|
+
# resp.rules[0].criteria.company_name[0].value #=> String
|
851
|
+
# resp.rules[0].criteria.company_name[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS", "PREFIX_NOT_EQUALS"
|
852
|
+
# resp.rules[0].criteria.severity_label #=> Array
|
853
|
+
# resp.rules[0].criteria.severity_label[0].value #=> String
|
854
|
+
# resp.rules[0].criteria.severity_label[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS", "PREFIX_NOT_EQUALS"
|
855
|
+
# resp.rules[0].criteria.resource_type #=> Array
|
856
|
+
# resp.rules[0].criteria.resource_type[0].value #=> String
|
857
|
+
# resp.rules[0].criteria.resource_type[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS", "PREFIX_NOT_EQUALS"
|
858
|
+
# resp.rules[0].criteria.resource_id #=> Array
|
859
|
+
# resp.rules[0].criteria.resource_id[0].value #=> String
|
860
|
+
# resp.rules[0].criteria.resource_id[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS", "PREFIX_NOT_EQUALS"
|
861
|
+
# resp.rules[0].criteria.resource_partition #=> Array
|
862
|
+
# resp.rules[0].criteria.resource_partition[0].value #=> String
|
863
|
+
# resp.rules[0].criteria.resource_partition[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS", "PREFIX_NOT_EQUALS"
|
864
|
+
# resp.rules[0].criteria.resource_region #=> Array
|
865
|
+
# resp.rules[0].criteria.resource_region[0].value #=> String
|
866
|
+
# resp.rules[0].criteria.resource_region[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS", "PREFIX_NOT_EQUALS"
|
867
|
+
# resp.rules[0].criteria.resource_tags #=> Array
|
868
|
+
# resp.rules[0].criteria.resource_tags[0].key #=> String
|
869
|
+
# resp.rules[0].criteria.resource_tags[0].value #=> String
|
870
|
+
# resp.rules[0].criteria.resource_tags[0].comparison #=> String, one of "EQUALS", "NOT_EQUALS"
|
871
|
+
# resp.rules[0].criteria.resource_details_other #=> Array
|
872
|
+
# resp.rules[0].criteria.resource_details_other[0].key #=> String
|
873
|
+
# resp.rules[0].criteria.resource_details_other[0].value #=> String
|
874
|
+
# resp.rules[0].criteria.resource_details_other[0].comparison #=> String, one of "EQUALS", "NOT_EQUALS"
|
875
|
+
# resp.rules[0].criteria.compliance_status #=> Array
|
876
|
+
# resp.rules[0].criteria.compliance_status[0].value #=> String
|
877
|
+
# resp.rules[0].criteria.compliance_status[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS", "PREFIX_NOT_EQUALS"
|
878
|
+
# resp.rules[0].criteria.compliance_security_control_id #=> Array
|
879
|
+
# resp.rules[0].criteria.compliance_security_control_id[0].value #=> String
|
880
|
+
# resp.rules[0].criteria.compliance_security_control_id[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS", "PREFIX_NOT_EQUALS"
|
881
|
+
# resp.rules[0].criteria.compliance_associated_standards_id #=> Array
|
882
|
+
# resp.rules[0].criteria.compliance_associated_standards_id[0].value #=> String
|
883
|
+
# resp.rules[0].criteria.compliance_associated_standards_id[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS", "PREFIX_NOT_EQUALS"
|
884
|
+
# resp.rules[0].criteria.verification_state #=> Array
|
885
|
+
# resp.rules[0].criteria.verification_state[0].value #=> String
|
886
|
+
# resp.rules[0].criteria.verification_state[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS", "PREFIX_NOT_EQUALS"
|
887
|
+
# resp.rules[0].criteria.workflow_status #=> Array
|
888
|
+
# resp.rules[0].criteria.workflow_status[0].value #=> String
|
889
|
+
# resp.rules[0].criteria.workflow_status[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS", "PREFIX_NOT_EQUALS"
|
890
|
+
# resp.rules[0].criteria.record_state #=> Array
|
891
|
+
# resp.rules[0].criteria.record_state[0].value #=> String
|
892
|
+
# resp.rules[0].criteria.record_state[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS", "PREFIX_NOT_EQUALS"
|
893
|
+
# resp.rules[0].criteria.related_findings_product_arn #=> Array
|
894
|
+
# resp.rules[0].criteria.related_findings_product_arn[0].value #=> String
|
895
|
+
# resp.rules[0].criteria.related_findings_product_arn[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS", "PREFIX_NOT_EQUALS"
|
896
|
+
# resp.rules[0].criteria.related_findings_id #=> Array
|
897
|
+
# resp.rules[0].criteria.related_findings_id[0].value #=> String
|
898
|
+
# resp.rules[0].criteria.related_findings_id[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS", "PREFIX_NOT_EQUALS"
|
899
|
+
# resp.rules[0].criteria.note_text #=> Array
|
900
|
+
# resp.rules[0].criteria.note_text[0].value #=> String
|
901
|
+
# resp.rules[0].criteria.note_text[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS", "PREFIX_NOT_EQUALS"
|
902
|
+
# resp.rules[0].criteria.note_updated_at #=> Array
|
903
|
+
# resp.rules[0].criteria.note_updated_at[0].start #=> String
|
904
|
+
# resp.rules[0].criteria.note_updated_at[0].end #=> String
|
905
|
+
# resp.rules[0].criteria.note_updated_at[0].date_range.value #=> Integer
|
906
|
+
# resp.rules[0].criteria.note_updated_at[0].date_range.unit #=> String, one of "DAYS"
|
907
|
+
# resp.rules[0].criteria.note_updated_by #=> Array
|
908
|
+
# resp.rules[0].criteria.note_updated_by[0].value #=> String
|
909
|
+
# resp.rules[0].criteria.note_updated_by[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS", "PREFIX_NOT_EQUALS"
|
910
|
+
# resp.rules[0].criteria.user_defined_fields #=> Array
|
911
|
+
# resp.rules[0].criteria.user_defined_fields[0].key #=> String
|
912
|
+
# resp.rules[0].criteria.user_defined_fields[0].value #=> String
|
913
|
+
# resp.rules[0].criteria.user_defined_fields[0].comparison #=> String, one of "EQUALS", "NOT_EQUALS"
|
914
|
+
# resp.rules[0].actions #=> Array
|
915
|
+
# resp.rules[0].actions[0].type #=> String, one of "FINDING_FIELDS_UPDATE"
|
916
|
+
# resp.rules[0].actions[0].finding_fields_update.note.text #=> String
|
917
|
+
# resp.rules[0].actions[0].finding_fields_update.note.updated_by #=> String
|
918
|
+
# resp.rules[0].actions[0].finding_fields_update.severity.normalized #=> Integer
|
919
|
+
# resp.rules[0].actions[0].finding_fields_update.severity.product #=> Float
|
920
|
+
# resp.rules[0].actions[0].finding_fields_update.severity.label #=> String, one of "INFORMATIONAL", "LOW", "MEDIUM", "HIGH", "CRITICAL"
|
921
|
+
# resp.rules[0].actions[0].finding_fields_update.verification_state #=> String, one of "UNKNOWN", "TRUE_POSITIVE", "FALSE_POSITIVE", "BENIGN_POSITIVE"
|
922
|
+
# resp.rules[0].actions[0].finding_fields_update.confidence #=> Integer
|
923
|
+
# resp.rules[0].actions[0].finding_fields_update.criticality #=> Integer
|
924
|
+
# resp.rules[0].actions[0].finding_fields_update.types #=> Array
|
925
|
+
# resp.rules[0].actions[0].finding_fields_update.types[0] #=> String
|
926
|
+
# resp.rules[0].actions[0].finding_fields_update.user_defined_fields #=> Hash
|
927
|
+
# resp.rules[0].actions[0].finding_fields_update.user_defined_fields["NonEmptyString"] #=> String
|
928
|
+
# resp.rules[0].actions[0].finding_fields_update.workflow.status #=> String, one of "NEW", "NOTIFIED", "RESOLVED", "SUPPRESSED"
|
929
|
+
# resp.rules[0].actions[0].finding_fields_update.related_findings #=> Array
|
930
|
+
# resp.rules[0].actions[0].finding_fields_update.related_findings[0].product_arn #=> String
|
931
|
+
# resp.rules[0].actions[0].finding_fields_update.related_findings[0].id #=> String
|
932
|
+
# resp.rules[0].created_at #=> Time
|
933
|
+
# resp.rules[0].updated_at #=> Time
|
934
|
+
# resp.rules[0].created_by #=> String
|
935
|
+
# resp.unprocessed_automation_rules #=> Array
|
936
|
+
# resp.unprocessed_automation_rules[0].rule_arn #=> String
|
937
|
+
# resp.unprocessed_automation_rules[0].error_code #=> Integer
|
938
|
+
# resp.unprocessed_automation_rules[0].error_message #=> String
|
939
|
+
#
|
940
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/BatchGetAutomationRules AWS API Documentation
|
941
|
+
#
|
942
|
+
# @overload batch_get_automation_rules(params = {})
|
943
|
+
# @param [Hash] params ({})
|
944
|
+
def batch_get_automation_rules(params = {}, options = {})
|
945
|
+
req = build_request(:batch_get_automation_rules, params)
|
946
|
+
req.send_request(options)
|
947
|
+
end
|
948
|
+
|
608
949
|
# Provides details about a batch of security controls for the current
|
609
950
|
# Amazon Web Services account and Amazon Web Services Region.
|
610
951
|
#
|
@@ -921,6 +1262,347 @@ module Aws::SecurityHub
|
|
921
1262
|
req.send_request(options)
|
922
1263
|
end
|
923
1264
|
|
1265
|
+
# Updates one or more automation rules based on rule Amazon Resource
|
1266
|
+
# Names (ARNs) and input parameters.
|
1267
|
+
#
|
1268
|
+
# @option params [required, Array<Types::UpdateAutomationRulesRequestItem>] :update_automation_rules_request_items
|
1269
|
+
# An array of ARNs for the rules that are to be updated. Optionally, you
|
1270
|
+
# can also include `RuleStatus` and `RuleOrder`.
|
1271
|
+
#
|
1272
|
+
# @return [Types::BatchUpdateAutomationRulesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
1273
|
+
#
|
1274
|
+
# * {Types::BatchUpdateAutomationRulesResponse#processed_automation_rules #processed_automation_rules} => Array<String>
|
1275
|
+
# * {Types::BatchUpdateAutomationRulesResponse#unprocessed_automation_rules #unprocessed_automation_rules} => Array<Types::UnprocessedAutomationRule>
|
1276
|
+
#
|
1277
|
+
#
|
1278
|
+
# @example Example: To update one ore more automation rules
|
1279
|
+
#
|
1280
|
+
# # The following example updates the specified automation rules.
|
1281
|
+
#
|
1282
|
+
# resp = client.batch_update_automation_rules({
|
1283
|
+
# update_automation_rules_request_items: [
|
1284
|
+
# {
|
1285
|
+
# rule_arn: "arn:aws:securityhub:us-east-1:123456789012:automation-rule/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
|
1286
|
+
# rule_order: 15,
|
1287
|
+
# rule_status: "ENABLED",
|
1288
|
+
# },
|
1289
|
+
# {
|
1290
|
+
# rule_arn: "arn:aws:securityhub:us-east-1:123456789012:automation-rule/a1b2c3d4-5678-90ab-cdef-EXAMPLE22222",
|
1291
|
+
# rule_status: "DISABLED",
|
1292
|
+
# },
|
1293
|
+
# ],
|
1294
|
+
# })
|
1295
|
+
#
|
1296
|
+
# resp.to_h outputs the following:
|
1297
|
+
# {
|
1298
|
+
# processed_automation_rules: [
|
1299
|
+
# "arn:aws:securityhub:us-east-1:123456789012:automation-rule/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
|
1300
|
+
# "arn:aws:securityhub:us-east-1:123456789012:automation-rule/a1b2c3d4-5678-90ab-cdef-EXAMPLE22222",
|
1301
|
+
# ],
|
1302
|
+
# }
|
1303
|
+
#
|
1304
|
+
# @example Request syntax with placeholder values
|
1305
|
+
#
|
1306
|
+
# resp = client.batch_update_automation_rules({
|
1307
|
+
# update_automation_rules_request_items: [ # required
|
1308
|
+
# {
|
1309
|
+
# rule_arn: "NonEmptyString", # required
|
1310
|
+
# rule_status: "ENABLED", # accepts ENABLED, DISABLED
|
1311
|
+
# rule_order: 1,
|
1312
|
+
# description: "NonEmptyString",
|
1313
|
+
# rule_name: "NonEmptyString",
|
1314
|
+
# is_terminal: false,
|
1315
|
+
# criteria: {
|
1316
|
+
# product_arn: [
|
1317
|
+
# {
|
1318
|
+
# value: "NonEmptyString",
|
1319
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
1320
|
+
# },
|
1321
|
+
# ],
|
1322
|
+
# aws_account_id: [
|
1323
|
+
# {
|
1324
|
+
# value: "NonEmptyString",
|
1325
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
1326
|
+
# },
|
1327
|
+
# ],
|
1328
|
+
# id: [
|
1329
|
+
# {
|
1330
|
+
# value: "NonEmptyString",
|
1331
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
1332
|
+
# },
|
1333
|
+
# ],
|
1334
|
+
# generator_id: [
|
1335
|
+
# {
|
1336
|
+
# value: "NonEmptyString",
|
1337
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
1338
|
+
# },
|
1339
|
+
# ],
|
1340
|
+
# type: [
|
1341
|
+
# {
|
1342
|
+
# value: "NonEmptyString",
|
1343
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
1344
|
+
# },
|
1345
|
+
# ],
|
1346
|
+
# first_observed_at: [
|
1347
|
+
# {
|
1348
|
+
# start: "NonEmptyString",
|
1349
|
+
# end: "NonEmptyString",
|
1350
|
+
# date_range: {
|
1351
|
+
# value: 1,
|
1352
|
+
# unit: "DAYS", # accepts DAYS
|
1353
|
+
# },
|
1354
|
+
# },
|
1355
|
+
# ],
|
1356
|
+
# last_observed_at: [
|
1357
|
+
# {
|
1358
|
+
# start: "NonEmptyString",
|
1359
|
+
# end: "NonEmptyString",
|
1360
|
+
# date_range: {
|
1361
|
+
# value: 1,
|
1362
|
+
# unit: "DAYS", # accepts DAYS
|
1363
|
+
# },
|
1364
|
+
# },
|
1365
|
+
# ],
|
1366
|
+
# created_at: [
|
1367
|
+
# {
|
1368
|
+
# start: "NonEmptyString",
|
1369
|
+
# end: "NonEmptyString",
|
1370
|
+
# date_range: {
|
1371
|
+
# value: 1,
|
1372
|
+
# unit: "DAYS", # accepts DAYS
|
1373
|
+
# },
|
1374
|
+
# },
|
1375
|
+
# ],
|
1376
|
+
# updated_at: [
|
1377
|
+
# {
|
1378
|
+
# start: "NonEmptyString",
|
1379
|
+
# end: "NonEmptyString",
|
1380
|
+
# date_range: {
|
1381
|
+
# value: 1,
|
1382
|
+
# unit: "DAYS", # accepts DAYS
|
1383
|
+
# },
|
1384
|
+
# },
|
1385
|
+
# ],
|
1386
|
+
# confidence: [
|
1387
|
+
# {
|
1388
|
+
# gte: 1.0,
|
1389
|
+
# lte: 1.0,
|
1390
|
+
# eq: 1.0,
|
1391
|
+
# },
|
1392
|
+
# ],
|
1393
|
+
# criticality: [
|
1394
|
+
# {
|
1395
|
+
# gte: 1.0,
|
1396
|
+
# lte: 1.0,
|
1397
|
+
# eq: 1.0,
|
1398
|
+
# },
|
1399
|
+
# ],
|
1400
|
+
# title: [
|
1401
|
+
# {
|
1402
|
+
# value: "NonEmptyString",
|
1403
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
1404
|
+
# },
|
1405
|
+
# ],
|
1406
|
+
# description: [
|
1407
|
+
# {
|
1408
|
+
# value: "NonEmptyString",
|
1409
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
1410
|
+
# },
|
1411
|
+
# ],
|
1412
|
+
# source_url: [
|
1413
|
+
# {
|
1414
|
+
# value: "NonEmptyString",
|
1415
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
1416
|
+
# },
|
1417
|
+
# ],
|
1418
|
+
# product_name: [
|
1419
|
+
# {
|
1420
|
+
# value: "NonEmptyString",
|
1421
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
1422
|
+
# },
|
1423
|
+
# ],
|
1424
|
+
# company_name: [
|
1425
|
+
# {
|
1426
|
+
# value: "NonEmptyString",
|
1427
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
1428
|
+
# },
|
1429
|
+
# ],
|
1430
|
+
# severity_label: [
|
1431
|
+
# {
|
1432
|
+
# value: "NonEmptyString",
|
1433
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
1434
|
+
# },
|
1435
|
+
# ],
|
1436
|
+
# resource_type: [
|
1437
|
+
# {
|
1438
|
+
# value: "NonEmptyString",
|
1439
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
1440
|
+
# },
|
1441
|
+
# ],
|
1442
|
+
# resource_id: [
|
1443
|
+
# {
|
1444
|
+
# value: "NonEmptyString",
|
1445
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
1446
|
+
# },
|
1447
|
+
# ],
|
1448
|
+
# resource_partition: [
|
1449
|
+
# {
|
1450
|
+
# value: "NonEmptyString",
|
1451
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
1452
|
+
# },
|
1453
|
+
# ],
|
1454
|
+
# resource_region: [
|
1455
|
+
# {
|
1456
|
+
# value: "NonEmptyString",
|
1457
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
1458
|
+
# },
|
1459
|
+
# ],
|
1460
|
+
# resource_tags: [
|
1461
|
+
# {
|
1462
|
+
# key: "NonEmptyString",
|
1463
|
+
# value: "NonEmptyString",
|
1464
|
+
# comparison: "EQUALS", # accepts EQUALS, NOT_EQUALS
|
1465
|
+
# },
|
1466
|
+
# ],
|
1467
|
+
# resource_details_other: [
|
1468
|
+
# {
|
1469
|
+
# key: "NonEmptyString",
|
1470
|
+
# value: "NonEmptyString",
|
1471
|
+
# comparison: "EQUALS", # accepts EQUALS, NOT_EQUALS
|
1472
|
+
# },
|
1473
|
+
# ],
|
1474
|
+
# compliance_status: [
|
1475
|
+
# {
|
1476
|
+
# value: "NonEmptyString",
|
1477
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
1478
|
+
# },
|
1479
|
+
# ],
|
1480
|
+
# compliance_security_control_id: [
|
1481
|
+
# {
|
1482
|
+
# value: "NonEmptyString",
|
1483
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
1484
|
+
# },
|
1485
|
+
# ],
|
1486
|
+
# compliance_associated_standards_id: [
|
1487
|
+
# {
|
1488
|
+
# value: "NonEmptyString",
|
1489
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
1490
|
+
# },
|
1491
|
+
# ],
|
1492
|
+
# verification_state: [
|
1493
|
+
# {
|
1494
|
+
# value: "NonEmptyString",
|
1495
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
1496
|
+
# },
|
1497
|
+
# ],
|
1498
|
+
# workflow_status: [
|
1499
|
+
# {
|
1500
|
+
# value: "NonEmptyString",
|
1501
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
1502
|
+
# },
|
1503
|
+
# ],
|
1504
|
+
# record_state: [
|
1505
|
+
# {
|
1506
|
+
# value: "NonEmptyString",
|
1507
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
1508
|
+
# },
|
1509
|
+
# ],
|
1510
|
+
# related_findings_product_arn: [
|
1511
|
+
# {
|
1512
|
+
# value: "NonEmptyString",
|
1513
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
1514
|
+
# },
|
1515
|
+
# ],
|
1516
|
+
# related_findings_id: [
|
1517
|
+
# {
|
1518
|
+
# value: "NonEmptyString",
|
1519
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
1520
|
+
# },
|
1521
|
+
# ],
|
1522
|
+
# note_text: [
|
1523
|
+
# {
|
1524
|
+
# value: "NonEmptyString",
|
1525
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
1526
|
+
# },
|
1527
|
+
# ],
|
1528
|
+
# note_updated_at: [
|
1529
|
+
# {
|
1530
|
+
# start: "NonEmptyString",
|
1531
|
+
# end: "NonEmptyString",
|
1532
|
+
# date_range: {
|
1533
|
+
# value: 1,
|
1534
|
+
# unit: "DAYS", # accepts DAYS
|
1535
|
+
# },
|
1536
|
+
# },
|
1537
|
+
# ],
|
1538
|
+
# note_updated_by: [
|
1539
|
+
# {
|
1540
|
+
# value: "NonEmptyString",
|
1541
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
1542
|
+
# },
|
1543
|
+
# ],
|
1544
|
+
# user_defined_fields: [
|
1545
|
+
# {
|
1546
|
+
# key: "NonEmptyString",
|
1547
|
+
# value: "NonEmptyString",
|
1548
|
+
# comparison: "EQUALS", # accepts EQUALS, NOT_EQUALS
|
1549
|
+
# },
|
1550
|
+
# ],
|
1551
|
+
# },
|
1552
|
+
# actions: [
|
1553
|
+
# {
|
1554
|
+
# type: "FINDING_FIELDS_UPDATE", # accepts FINDING_FIELDS_UPDATE
|
1555
|
+
# finding_fields_update: {
|
1556
|
+
# note: {
|
1557
|
+
# text: "NonEmptyString", # required
|
1558
|
+
# updated_by: "NonEmptyString", # required
|
1559
|
+
# },
|
1560
|
+
# severity: {
|
1561
|
+
# normalized: 1,
|
1562
|
+
# product: 1.0,
|
1563
|
+
# label: "INFORMATIONAL", # accepts INFORMATIONAL, LOW, MEDIUM, HIGH, CRITICAL
|
1564
|
+
# },
|
1565
|
+
# verification_state: "UNKNOWN", # accepts UNKNOWN, TRUE_POSITIVE, FALSE_POSITIVE, BENIGN_POSITIVE
|
1566
|
+
# confidence: 1,
|
1567
|
+
# criticality: 1,
|
1568
|
+
# types: ["NonEmptyString"],
|
1569
|
+
# user_defined_fields: {
|
1570
|
+
# "NonEmptyString" => "NonEmptyString",
|
1571
|
+
# },
|
1572
|
+
# workflow: {
|
1573
|
+
# status: "NEW", # accepts NEW, NOTIFIED, RESOLVED, SUPPRESSED
|
1574
|
+
# },
|
1575
|
+
# related_findings: [
|
1576
|
+
# {
|
1577
|
+
# product_arn: "NonEmptyString", # required
|
1578
|
+
# id: "NonEmptyString", # required
|
1579
|
+
# },
|
1580
|
+
# ],
|
1581
|
+
# },
|
1582
|
+
# },
|
1583
|
+
# ],
|
1584
|
+
# },
|
1585
|
+
# ],
|
1586
|
+
# })
|
1587
|
+
#
|
1588
|
+
# @example Response structure
|
1589
|
+
#
|
1590
|
+
# resp.processed_automation_rules #=> Array
|
1591
|
+
# resp.processed_automation_rules[0] #=> String
|
1592
|
+
# resp.unprocessed_automation_rules #=> Array
|
1593
|
+
# resp.unprocessed_automation_rules[0].rule_arn #=> String
|
1594
|
+
# resp.unprocessed_automation_rules[0].error_code #=> Integer
|
1595
|
+
# resp.unprocessed_automation_rules[0].error_message #=> String
|
1596
|
+
#
|
1597
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/BatchUpdateAutomationRules AWS API Documentation
|
1598
|
+
#
|
1599
|
+
# @overload batch_update_automation_rules(params = {})
|
1600
|
+
# @param [Hash] params ({})
|
1601
|
+
def batch_update_automation_rules(params = {}, options = {})
|
1602
|
+
req = build_request(:batch_update_automation_rules, params)
|
1603
|
+
req.send_request(options)
|
1604
|
+
end
|
1605
|
+
|
924
1606
|
# Used by Security Hub customers to update information about their
|
925
1607
|
# investigation into a finding. Requested by administrator accounts or
|
926
1608
|
# member accounts. Administrator accounts can update findings for their
|
@@ -1125,170 +1807,577 @@ module Aws::SecurityHub
|
|
1125
1807
|
# workflow: {
|
1126
1808
|
# status: "NEW", # accepts NEW, NOTIFIED, RESOLVED, SUPPRESSED
|
1127
1809
|
# },
|
1128
|
-
# related_findings: [
|
1129
|
-
# {
|
1130
|
-
# product_arn: "NonEmptyString", # required
|
1131
|
-
# id: "NonEmptyString", # required
|
1132
|
-
# },
|
1133
|
-
# ],
|
1134
|
-
# })
|
1135
|
-
#
|
1136
|
-
# @example Response structure
|
1137
|
-
#
|
1138
|
-
# resp.processed_findings #=> Array
|
1139
|
-
# resp.processed_findings[0].id #=> String
|
1140
|
-
# resp.processed_findings[0].product_arn #=> String
|
1141
|
-
# resp.unprocessed_findings #=> Array
|
1142
|
-
# resp.unprocessed_findings[0].finding_identifier.id #=> String
|
1143
|
-
# resp.unprocessed_findings[0].finding_identifier.product_arn #=> String
|
1144
|
-
# resp.unprocessed_findings[0].error_code #=> String
|
1145
|
-
# resp.unprocessed_findings[0].error_message #=> String
|
1146
|
-
#
|
1147
|
-
# @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/BatchUpdateFindings AWS API Documentation
|
1148
|
-
#
|
1149
|
-
# @overload batch_update_findings(params = {})
|
1150
|
-
# @param [Hash] params ({})
|
1151
|
-
def batch_update_findings(params = {}, options = {})
|
1152
|
-
req = build_request(:batch_update_findings, params)
|
1153
|
-
req.send_request(options)
|
1154
|
-
end
|
1155
|
-
|
1156
|
-
# For a batch of security controls and standards, this operation updates
|
1157
|
-
# the enablement status of a control in a standard.
|
1158
|
-
#
|
1159
|
-
# @option params [required, Array<Types::StandardsControlAssociationUpdate>] :standards_control_association_updates
|
1160
|
-
# Updates the enablement status of a security control in a specified
|
1161
|
-
# standard.
|
1162
|
-
#
|
1163
|
-
# @return [Types::BatchUpdateStandardsControlAssociationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
1164
|
-
#
|
1165
|
-
# * {Types::BatchUpdateStandardsControlAssociationsResponse#unprocessed_association_updates #unprocessed_association_updates} => Array<Types::UnprocessedStandardsControlAssociationUpdate>
|
1166
|
-
#
|
1167
|
-
#
|
1168
|
-
# @example Example: To update enablement status of a batch of controls
|
1169
|
-
#
|
1170
|
-
# # The following example disables CloudWatch.12 in CIS AWS Foundations Benchmark v1.2.0. The example returns an error for
|
1171
|
-
# # CloudTrail.1 because an invalid standard ARN is provided.
|
1172
|
-
#
|
1173
|
-
# resp = client.batch_update_standards_control_associations({
|
1174
|
-
# standards_control_association_updates: [
|
1175
|
-
# {
|
1176
|
-
# association_status: "DISABLED",
|
1177
|
-
# security_control_id: "CloudTrail.1",
|
1178
|
-
# standards_arn: "arn:aws:securityhub:::ruleset/sample-standard/v/1.1.0",
|
1179
|
-
# updated_reason: "Not relevant to environment",
|
1180
|
-
# },
|
1181
|
-
# {
|
1182
|
-
# association_status: "DISABLED",
|
1183
|
-
# security_control_id: "CloudWatch.12",
|
1184
|
-
# standards_arn: "arn:aws:securityhub:::ruleset/cis-aws-foundations-benchmark/v/1.2.0",
|
1185
|
-
# updated_reason: "Not relevant to environment",
|
1186
|
-
# },
|
1187
|
-
# ],
|
1188
|
-
# })
|
1189
|
-
#
|
1190
|
-
# resp.to_h outputs the following:
|
1191
|
-
# {
|
1192
|
-
# unprocessed_association_updates: [
|
1193
|
-
# {
|
1194
|
-
# error_code: "INVALID_INPUT",
|
1195
|
-
# error_reason: "Invalid Standards Arn: 'arn:aws:securityhub:::ruleset/sample-standard/v/1.1.0'",
|
1196
|
-
# standards_control_association_update: {
|
1197
|
-
# association_status: "DISABLED",
|
1198
|
-
# security_control_id: "CloudTrail.1",
|
1199
|
-
# standards_arn: "arn:aws:securityhub:::ruleset/sample-standard/v/1.1.0",
|
1200
|
-
# updated_reason: "Test Reason",
|
1201
|
-
# },
|
1202
|
-
# },
|
1203
|
-
# ],
|
1204
|
-
# }
|
1205
|
-
#
|
1206
|
-
# @example Request syntax with placeholder values
|
1207
|
-
#
|
1208
|
-
# resp = client.batch_update_standards_control_associations({
|
1209
|
-
# standards_control_association_updates: [ # required
|
1810
|
+
# related_findings: [
|
1811
|
+
# {
|
1812
|
+
# product_arn: "NonEmptyString", # required
|
1813
|
+
# id: "NonEmptyString", # required
|
1814
|
+
# },
|
1815
|
+
# ],
|
1816
|
+
# })
|
1817
|
+
#
|
1818
|
+
# @example Response structure
|
1819
|
+
#
|
1820
|
+
# resp.processed_findings #=> Array
|
1821
|
+
# resp.processed_findings[0].id #=> String
|
1822
|
+
# resp.processed_findings[0].product_arn #=> String
|
1823
|
+
# resp.unprocessed_findings #=> Array
|
1824
|
+
# resp.unprocessed_findings[0].finding_identifier.id #=> String
|
1825
|
+
# resp.unprocessed_findings[0].finding_identifier.product_arn #=> String
|
1826
|
+
# resp.unprocessed_findings[0].error_code #=> String
|
1827
|
+
# resp.unprocessed_findings[0].error_message #=> String
|
1828
|
+
#
|
1829
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/BatchUpdateFindings AWS API Documentation
|
1830
|
+
#
|
1831
|
+
# @overload batch_update_findings(params = {})
|
1832
|
+
# @param [Hash] params ({})
|
1833
|
+
def batch_update_findings(params = {}, options = {})
|
1834
|
+
req = build_request(:batch_update_findings, params)
|
1835
|
+
req.send_request(options)
|
1836
|
+
end
|
1837
|
+
|
1838
|
+
# For a batch of security controls and standards, this operation updates
|
1839
|
+
# the enablement status of a control in a standard.
|
1840
|
+
#
|
1841
|
+
# @option params [required, Array<Types::StandardsControlAssociationUpdate>] :standards_control_association_updates
|
1842
|
+
# Updates the enablement status of a security control in a specified
|
1843
|
+
# standard.
|
1844
|
+
#
|
1845
|
+
# @return [Types::BatchUpdateStandardsControlAssociationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
1846
|
+
#
|
1847
|
+
# * {Types::BatchUpdateStandardsControlAssociationsResponse#unprocessed_association_updates #unprocessed_association_updates} => Array<Types::UnprocessedStandardsControlAssociationUpdate>
|
1848
|
+
#
|
1849
|
+
#
|
1850
|
+
# @example Example: To update enablement status of a batch of controls
|
1851
|
+
#
|
1852
|
+
# # The following example disables CloudWatch.12 in CIS AWS Foundations Benchmark v1.2.0. The example returns an error for
|
1853
|
+
# # CloudTrail.1 because an invalid standard ARN is provided.
|
1854
|
+
#
|
1855
|
+
# resp = client.batch_update_standards_control_associations({
|
1856
|
+
# standards_control_association_updates: [
|
1857
|
+
# {
|
1858
|
+
# association_status: "DISABLED",
|
1859
|
+
# security_control_id: "CloudTrail.1",
|
1860
|
+
# standards_arn: "arn:aws:securityhub:::ruleset/sample-standard/v/1.1.0",
|
1861
|
+
# updated_reason: "Not relevant to environment",
|
1862
|
+
# },
|
1863
|
+
# {
|
1864
|
+
# association_status: "DISABLED",
|
1865
|
+
# security_control_id: "CloudWatch.12",
|
1866
|
+
# standards_arn: "arn:aws:securityhub:::ruleset/cis-aws-foundations-benchmark/v/1.2.0",
|
1867
|
+
# updated_reason: "Not relevant to environment",
|
1868
|
+
# },
|
1869
|
+
# ],
|
1870
|
+
# })
|
1871
|
+
#
|
1872
|
+
# resp.to_h outputs the following:
|
1873
|
+
# {
|
1874
|
+
# unprocessed_association_updates: [
|
1875
|
+
# {
|
1876
|
+
# error_code: "INVALID_INPUT",
|
1877
|
+
# error_reason: "Invalid Standards Arn: 'arn:aws:securityhub:::ruleset/sample-standard/v/1.1.0'",
|
1878
|
+
# standards_control_association_update: {
|
1879
|
+
# association_status: "DISABLED",
|
1880
|
+
# security_control_id: "CloudTrail.1",
|
1881
|
+
# standards_arn: "arn:aws:securityhub:::ruleset/sample-standard/v/1.1.0",
|
1882
|
+
# updated_reason: "Test Reason",
|
1883
|
+
# },
|
1884
|
+
# },
|
1885
|
+
# ],
|
1886
|
+
# }
|
1887
|
+
#
|
1888
|
+
# @example Request syntax with placeholder values
|
1889
|
+
#
|
1890
|
+
# resp = client.batch_update_standards_control_associations({
|
1891
|
+
# standards_control_association_updates: [ # required
|
1892
|
+
# {
|
1893
|
+
# standards_arn: "NonEmptyString", # required
|
1894
|
+
# security_control_id: "NonEmptyString", # required
|
1895
|
+
# association_status: "ENABLED", # required, accepts ENABLED, DISABLED
|
1896
|
+
# updated_reason: "NonEmptyString",
|
1897
|
+
# },
|
1898
|
+
# ],
|
1899
|
+
# })
|
1900
|
+
#
|
1901
|
+
# @example Response structure
|
1902
|
+
#
|
1903
|
+
# resp.unprocessed_association_updates #=> Array
|
1904
|
+
# resp.unprocessed_association_updates[0].standards_control_association_update.standards_arn #=> String
|
1905
|
+
# resp.unprocessed_association_updates[0].standards_control_association_update.security_control_id #=> String
|
1906
|
+
# resp.unprocessed_association_updates[0].standards_control_association_update.association_status #=> String, one of "ENABLED", "DISABLED"
|
1907
|
+
# resp.unprocessed_association_updates[0].standards_control_association_update.updated_reason #=> String
|
1908
|
+
# resp.unprocessed_association_updates[0].error_code #=> String, one of "INVALID_INPUT", "ACCESS_DENIED", "NOT_FOUND", "LIMIT_EXCEEDED"
|
1909
|
+
# resp.unprocessed_association_updates[0].error_reason #=> String
|
1910
|
+
#
|
1911
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/BatchUpdateStandardsControlAssociations AWS API Documentation
|
1912
|
+
#
|
1913
|
+
# @overload batch_update_standards_control_associations(params = {})
|
1914
|
+
# @param [Hash] params ({})
|
1915
|
+
def batch_update_standards_control_associations(params = {}, options = {})
|
1916
|
+
req = build_request(:batch_update_standards_control_associations, params)
|
1917
|
+
req.send_request(options)
|
1918
|
+
end
|
1919
|
+
|
1920
|
+
# Creates a custom action target in Security Hub.
|
1921
|
+
#
|
1922
|
+
# You can use custom actions on findings and insights in Security Hub to
|
1923
|
+
# trigger target actions in Amazon CloudWatch Events.
|
1924
|
+
#
|
1925
|
+
# @option params [required, String] :name
|
1926
|
+
# The name of the custom action target. Can contain up to 20 characters.
|
1927
|
+
#
|
1928
|
+
# @option params [required, String] :description
|
1929
|
+
# The description for the custom action target.
|
1930
|
+
#
|
1931
|
+
# @option params [required, String] :id
|
1932
|
+
# The ID for the custom action target. Can contain up to 20 alphanumeric
|
1933
|
+
# characters.
|
1934
|
+
#
|
1935
|
+
# @return [Types::CreateActionTargetResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
1936
|
+
#
|
1937
|
+
# * {Types::CreateActionTargetResponse#action_target_arn #action_target_arn} => String
|
1938
|
+
#
|
1939
|
+
#
|
1940
|
+
# @example Example: To create a custom action target
|
1941
|
+
#
|
1942
|
+
# # The following example creates a custom action target in Security Hub. Custom actions on findings and insights
|
1943
|
+
# # automatically trigger actions in Amazon CloudWatch Events.
|
1944
|
+
#
|
1945
|
+
# resp = client.create_action_target({
|
1946
|
+
# description: "Action to send the finding for remediation tracking",
|
1947
|
+
# id: "Remediation",
|
1948
|
+
# name: "Send to remediation",
|
1949
|
+
# })
|
1950
|
+
#
|
1951
|
+
# resp.to_h outputs the following:
|
1952
|
+
# {
|
1953
|
+
# action_target_arn: "arn:aws:securityhub:us-west-1:123456789012:action/custom/Remediation",
|
1954
|
+
# }
|
1955
|
+
#
|
1956
|
+
# @example Request syntax with placeholder values
|
1957
|
+
#
|
1958
|
+
# resp = client.create_action_target({
|
1959
|
+
# name: "NonEmptyString", # required
|
1960
|
+
# description: "NonEmptyString", # required
|
1961
|
+
# id: "NonEmptyString", # required
|
1962
|
+
# })
|
1963
|
+
#
|
1964
|
+
# @example Response structure
|
1965
|
+
#
|
1966
|
+
# resp.action_target_arn #=> String
|
1967
|
+
#
|
1968
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/CreateActionTarget AWS API Documentation
|
1969
|
+
#
|
1970
|
+
# @overload create_action_target(params = {})
|
1971
|
+
# @param [Hash] params ({})
|
1972
|
+
def create_action_target(params = {}, options = {})
|
1973
|
+
req = build_request(:create_action_target, params)
|
1974
|
+
req.send_request(options)
|
1975
|
+
end
|
1976
|
+
|
1977
|
+
# Creates an automation rule based on input parameters.
|
1978
|
+
#
|
1979
|
+
# @option params [Hash<String,String>] :tags
|
1980
|
+
# User-defined tags that help you label the purpose of a rule.
|
1981
|
+
#
|
1982
|
+
# @option params [String] :rule_status
|
1983
|
+
# Whether the rule is active after it is created. If this parameter is
|
1984
|
+
# equal to `Enabled`, Security Hub will apply the rule to findings and
|
1985
|
+
# finding updates after the rule is created. To change the value of this
|
1986
|
+
# parameter after creating a rule, use `BatchUpdateAutomationRules`.
|
1987
|
+
#
|
1988
|
+
# @option params [required, Integer] :rule_order
|
1989
|
+
# An integer ranging from 1 to 1000 that represents the order in which
|
1990
|
+
# the rule action is applied to findings. Security Hub applies rules
|
1991
|
+
# with lower values for this parameter first.
|
1992
|
+
#
|
1993
|
+
# @option params [required, String] :rule_name
|
1994
|
+
# The name of the rule.
|
1995
|
+
#
|
1996
|
+
# @option params [required, String] :description
|
1997
|
+
# A description of the rule.
|
1998
|
+
#
|
1999
|
+
# @option params [Boolean] :is_terminal
|
2000
|
+
# Specifies whether a rule is the last to be applied with respect to a
|
2001
|
+
# finding that matches the rule criteria. This is useful when a finding
|
2002
|
+
# matches the criteria for multiple rules, and each rule has different
|
2003
|
+
# actions. If the value of this field is set to `true` for a rule,
|
2004
|
+
# Security Hub applies the rule action to a finding that matches the
|
2005
|
+
# rule criteria and won't evaluate other rules for the finding. The
|
2006
|
+
# default value of this field is `false`.
|
2007
|
+
#
|
2008
|
+
# @option params [required, Types::AutomationRulesFindingFilters] :criteria
|
2009
|
+
# A set of ASFF finding field attributes and corresponding expected
|
2010
|
+
# values that Security Hub uses to filter findings. If a finding matches
|
2011
|
+
# the conditions specified in this parameter, Security Hub applies the
|
2012
|
+
# rule action to the finding.
|
2013
|
+
#
|
2014
|
+
# @option params [required, Array<Types::AutomationRulesAction>] :actions
|
2015
|
+
# One or more actions to update finding fields if a finding matches the
|
2016
|
+
# conditions specified in `Criteria`.
|
2017
|
+
#
|
2018
|
+
# @return [Types::CreateAutomationRuleResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
2019
|
+
#
|
2020
|
+
# * {Types::CreateAutomationRuleResponse#rule_arn #rule_arn} => String
|
2021
|
+
#
|
2022
|
+
#
|
2023
|
+
# @example Example: To create an automation rule
|
2024
|
+
#
|
2025
|
+
# # The following example creates an automation rule.
|
2026
|
+
#
|
2027
|
+
# resp = client.create_automation_rule({
|
2028
|
+
# actions: [
|
2029
|
+
# {
|
2030
|
+
# finding_fields_update: {
|
2031
|
+
# note: {
|
2032
|
+
# text: "This is a critical S3 bucket, please look into this ASAP",
|
2033
|
+
# updated_by: "test-user",
|
2034
|
+
# },
|
2035
|
+
# severity: {
|
2036
|
+
# label: "CRITICAL",
|
2037
|
+
# },
|
2038
|
+
# },
|
2039
|
+
# type: "FINDING_FIELDS_UPDATE",
|
2040
|
+
# },
|
2041
|
+
# ],
|
2042
|
+
# criteria: {
|
2043
|
+
# compliance_status: [
|
2044
|
+
# {
|
2045
|
+
# comparison: "EQUALS",
|
2046
|
+
# value: "FAILED",
|
2047
|
+
# },
|
2048
|
+
# ],
|
2049
|
+
# product_name: [
|
2050
|
+
# {
|
2051
|
+
# comparison: "EQUALS",
|
2052
|
+
# value: "Security Hub",
|
2053
|
+
# },
|
2054
|
+
# ],
|
2055
|
+
# record_state: [
|
2056
|
+
# {
|
2057
|
+
# comparison: "EQUALS",
|
2058
|
+
# value: "ACTIVE",
|
2059
|
+
# },
|
2060
|
+
# ],
|
2061
|
+
# resource_id: [
|
2062
|
+
# {
|
2063
|
+
# comparison: "EQUALS",
|
2064
|
+
# value: "arn:aws:s3:::examplebucket/developers/design_info.doc",
|
2065
|
+
# },
|
2066
|
+
# ],
|
2067
|
+
# workflow_status: [
|
2068
|
+
# {
|
2069
|
+
# comparison: "EQUALS",
|
2070
|
+
# value: "NEW",
|
2071
|
+
# },
|
2072
|
+
# ],
|
2073
|
+
# },
|
2074
|
+
# description: "Elevate finding severity to Critical for important resources",
|
2075
|
+
# is_terminal: false,
|
2076
|
+
# rule_name: "Elevate severity for important resources",
|
2077
|
+
# rule_order: 1,
|
2078
|
+
# rule_status: "ENABLED",
|
2079
|
+
# tags: {
|
2080
|
+
# "important-resources-rule" => "s3-bucket",
|
2081
|
+
# },
|
2082
|
+
# })
|
2083
|
+
#
|
2084
|
+
# resp.to_h outputs the following:
|
2085
|
+
# {
|
2086
|
+
# rule_arn: "arn:aws:securityhub:us-east-1:123456789012:automation-rule/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
|
2087
|
+
# }
|
2088
|
+
#
|
2089
|
+
# @example Request syntax with placeholder values
|
2090
|
+
#
|
2091
|
+
# resp = client.create_automation_rule({
|
2092
|
+
# tags: {
|
2093
|
+
# "TagKey" => "TagValue",
|
2094
|
+
# },
|
2095
|
+
# rule_status: "ENABLED", # accepts ENABLED, DISABLED
|
2096
|
+
# rule_order: 1, # required
|
2097
|
+
# rule_name: "NonEmptyString", # required
|
2098
|
+
# description: "NonEmptyString", # required
|
2099
|
+
# is_terminal: false,
|
2100
|
+
# criteria: { # required
|
2101
|
+
# product_arn: [
|
2102
|
+
# {
|
2103
|
+
# value: "NonEmptyString",
|
2104
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
2105
|
+
# },
|
2106
|
+
# ],
|
2107
|
+
# aws_account_id: [
|
2108
|
+
# {
|
2109
|
+
# value: "NonEmptyString",
|
2110
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
2111
|
+
# },
|
2112
|
+
# ],
|
2113
|
+
# id: [
|
2114
|
+
# {
|
2115
|
+
# value: "NonEmptyString",
|
2116
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
2117
|
+
# },
|
2118
|
+
# ],
|
2119
|
+
# generator_id: [
|
2120
|
+
# {
|
2121
|
+
# value: "NonEmptyString",
|
2122
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
2123
|
+
# },
|
2124
|
+
# ],
|
2125
|
+
# type: [
|
2126
|
+
# {
|
2127
|
+
# value: "NonEmptyString",
|
2128
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
2129
|
+
# },
|
2130
|
+
# ],
|
2131
|
+
# first_observed_at: [
|
2132
|
+
# {
|
2133
|
+
# start: "NonEmptyString",
|
2134
|
+
# end: "NonEmptyString",
|
2135
|
+
# date_range: {
|
2136
|
+
# value: 1,
|
2137
|
+
# unit: "DAYS", # accepts DAYS
|
2138
|
+
# },
|
2139
|
+
# },
|
2140
|
+
# ],
|
2141
|
+
# last_observed_at: [
|
2142
|
+
# {
|
2143
|
+
# start: "NonEmptyString",
|
2144
|
+
# end: "NonEmptyString",
|
2145
|
+
# date_range: {
|
2146
|
+
# value: 1,
|
2147
|
+
# unit: "DAYS", # accepts DAYS
|
2148
|
+
# },
|
2149
|
+
# },
|
2150
|
+
# ],
|
2151
|
+
# created_at: [
|
2152
|
+
# {
|
2153
|
+
# start: "NonEmptyString",
|
2154
|
+
# end: "NonEmptyString",
|
2155
|
+
# date_range: {
|
2156
|
+
# value: 1,
|
2157
|
+
# unit: "DAYS", # accepts DAYS
|
2158
|
+
# },
|
2159
|
+
# },
|
2160
|
+
# ],
|
2161
|
+
# updated_at: [
|
2162
|
+
# {
|
2163
|
+
# start: "NonEmptyString",
|
2164
|
+
# end: "NonEmptyString",
|
2165
|
+
# date_range: {
|
2166
|
+
# value: 1,
|
2167
|
+
# unit: "DAYS", # accepts DAYS
|
2168
|
+
# },
|
2169
|
+
# },
|
2170
|
+
# ],
|
2171
|
+
# confidence: [
|
2172
|
+
# {
|
2173
|
+
# gte: 1.0,
|
2174
|
+
# lte: 1.0,
|
2175
|
+
# eq: 1.0,
|
2176
|
+
# },
|
2177
|
+
# ],
|
2178
|
+
# criticality: [
|
2179
|
+
# {
|
2180
|
+
# gte: 1.0,
|
2181
|
+
# lte: 1.0,
|
2182
|
+
# eq: 1.0,
|
2183
|
+
# },
|
2184
|
+
# ],
|
2185
|
+
# title: [
|
2186
|
+
# {
|
2187
|
+
# value: "NonEmptyString",
|
2188
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
2189
|
+
# },
|
2190
|
+
# ],
|
2191
|
+
# description: [
|
2192
|
+
# {
|
2193
|
+
# value: "NonEmptyString",
|
2194
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
2195
|
+
# },
|
2196
|
+
# ],
|
2197
|
+
# source_url: [
|
2198
|
+
# {
|
2199
|
+
# value: "NonEmptyString",
|
2200
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
2201
|
+
# },
|
2202
|
+
# ],
|
2203
|
+
# product_name: [
|
2204
|
+
# {
|
2205
|
+
# value: "NonEmptyString",
|
2206
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
2207
|
+
# },
|
2208
|
+
# ],
|
2209
|
+
# company_name: [
|
2210
|
+
# {
|
2211
|
+
# value: "NonEmptyString",
|
2212
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
2213
|
+
# },
|
2214
|
+
# ],
|
2215
|
+
# severity_label: [
|
2216
|
+
# {
|
2217
|
+
# value: "NonEmptyString",
|
2218
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
2219
|
+
# },
|
2220
|
+
# ],
|
2221
|
+
# resource_type: [
|
2222
|
+
# {
|
2223
|
+
# value: "NonEmptyString",
|
2224
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
2225
|
+
# },
|
2226
|
+
# ],
|
2227
|
+
# resource_id: [
|
2228
|
+
# {
|
2229
|
+
# value: "NonEmptyString",
|
2230
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
2231
|
+
# },
|
2232
|
+
# ],
|
2233
|
+
# resource_partition: [
|
2234
|
+
# {
|
2235
|
+
# value: "NonEmptyString",
|
2236
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
2237
|
+
# },
|
2238
|
+
# ],
|
2239
|
+
# resource_region: [
|
2240
|
+
# {
|
2241
|
+
# value: "NonEmptyString",
|
2242
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
2243
|
+
# },
|
2244
|
+
# ],
|
2245
|
+
# resource_tags: [
|
2246
|
+
# {
|
2247
|
+
# key: "NonEmptyString",
|
2248
|
+
# value: "NonEmptyString",
|
2249
|
+
# comparison: "EQUALS", # accepts EQUALS, NOT_EQUALS
|
2250
|
+
# },
|
2251
|
+
# ],
|
2252
|
+
# resource_details_other: [
|
2253
|
+
# {
|
2254
|
+
# key: "NonEmptyString",
|
2255
|
+
# value: "NonEmptyString",
|
2256
|
+
# comparison: "EQUALS", # accepts EQUALS, NOT_EQUALS
|
2257
|
+
# },
|
2258
|
+
# ],
|
2259
|
+
# compliance_status: [
|
2260
|
+
# {
|
2261
|
+
# value: "NonEmptyString",
|
2262
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
2263
|
+
# },
|
2264
|
+
# ],
|
2265
|
+
# compliance_security_control_id: [
|
2266
|
+
# {
|
2267
|
+
# value: "NonEmptyString",
|
2268
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
2269
|
+
# },
|
2270
|
+
# ],
|
2271
|
+
# compliance_associated_standards_id: [
|
2272
|
+
# {
|
2273
|
+
# value: "NonEmptyString",
|
2274
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
2275
|
+
# },
|
2276
|
+
# ],
|
2277
|
+
# verification_state: [
|
2278
|
+
# {
|
2279
|
+
# value: "NonEmptyString",
|
2280
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
2281
|
+
# },
|
2282
|
+
# ],
|
2283
|
+
# workflow_status: [
|
2284
|
+
# {
|
2285
|
+
# value: "NonEmptyString",
|
2286
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
2287
|
+
# },
|
2288
|
+
# ],
|
2289
|
+
# record_state: [
|
2290
|
+
# {
|
2291
|
+
# value: "NonEmptyString",
|
2292
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
2293
|
+
# },
|
2294
|
+
# ],
|
2295
|
+
# related_findings_product_arn: [
|
2296
|
+
# {
|
2297
|
+
# value: "NonEmptyString",
|
2298
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
2299
|
+
# },
|
2300
|
+
# ],
|
2301
|
+
# related_findings_id: [
|
2302
|
+
# {
|
2303
|
+
# value: "NonEmptyString",
|
2304
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
2305
|
+
# },
|
2306
|
+
# ],
|
2307
|
+
# note_text: [
|
2308
|
+
# {
|
2309
|
+
# value: "NonEmptyString",
|
2310
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
2311
|
+
# },
|
2312
|
+
# ],
|
2313
|
+
# note_updated_at: [
|
2314
|
+
# {
|
2315
|
+
# start: "NonEmptyString",
|
2316
|
+
# end: "NonEmptyString",
|
2317
|
+
# date_range: {
|
2318
|
+
# value: 1,
|
2319
|
+
# unit: "DAYS", # accepts DAYS
|
2320
|
+
# },
|
2321
|
+
# },
|
2322
|
+
# ],
|
2323
|
+
# note_updated_by: [
|
2324
|
+
# {
|
2325
|
+
# value: "NonEmptyString",
|
2326
|
+
# comparison: "EQUALS", # accepts EQUALS, PREFIX, NOT_EQUALS, PREFIX_NOT_EQUALS
|
2327
|
+
# },
|
2328
|
+
# ],
|
2329
|
+
# user_defined_fields: [
|
2330
|
+
# {
|
2331
|
+
# key: "NonEmptyString",
|
2332
|
+
# value: "NonEmptyString",
|
2333
|
+
# comparison: "EQUALS", # accepts EQUALS, NOT_EQUALS
|
2334
|
+
# },
|
2335
|
+
# ],
|
2336
|
+
# },
|
2337
|
+
# actions: [ # required
|
1210
2338
|
# {
|
1211
|
-
#
|
1212
|
-
#
|
1213
|
-
#
|
1214
|
-
#
|
2339
|
+
# type: "FINDING_FIELDS_UPDATE", # accepts FINDING_FIELDS_UPDATE
|
2340
|
+
# finding_fields_update: {
|
2341
|
+
# note: {
|
2342
|
+
# text: "NonEmptyString", # required
|
2343
|
+
# updated_by: "NonEmptyString", # required
|
2344
|
+
# },
|
2345
|
+
# severity: {
|
2346
|
+
# normalized: 1,
|
2347
|
+
# product: 1.0,
|
2348
|
+
# label: "INFORMATIONAL", # accepts INFORMATIONAL, LOW, MEDIUM, HIGH, CRITICAL
|
2349
|
+
# },
|
2350
|
+
# verification_state: "UNKNOWN", # accepts UNKNOWN, TRUE_POSITIVE, FALSE_POSITIVE, BENIGN_POSITIVE
|
2351
|
+
# confidence: 1,
|
2352
|
+
# criticality: 1,
|
2353
|
+
# types: ["NonEmptyString"],
|
2354
|
+
# user_defined_fields: {
|
2355
|
+
# "NonEmptyString" => "NonEmptyString",
|
2356
|
+
# },
|
2357
|
+
# workflow: {
|
2358
|
+
# status: "NEW", # accepts NEW, NOTIFIED, RESOLVED, SUPPRESSED
|
2359
|
+
# },
|
2360
|
+
# related_findings: [
|
2361
|
+
# {
|
2362
|
+
# product_arn: "NonEmptyString", # required
|
2363
|
+
# id: "NonEmptyString", # required
|
2364
|
+
# },
|
2365
|
+
# ],
|
2366
|
+
# },
|
1215
2367
|
# },
|
1216
2368
|
# ],
|
1217
2369
|
# })
|
1218
2370
|
#
|
1219
2371
|
# @example Response structure
|
1220
2372
|
#
|
1221
|
-
# resp.
|
1222
|
-
# resp.unprocessed_association_updates[0].standards_control_association_update.standards_arn #=> String
|
1223
|
-
# resp.unprocessed_association_updates[0].standards_control_association_update.security_control_id #=> String
|
1224
|
-
# resp.unprocessed_association_updates[0].standards_control_association_update.association_status #=> String, one of "ENABLED", "DISABLED"
|
1225
|
-
# resp.unprocessed_association_updates[0].standards_control_association_update.updated_reason #=> String
|
1226
|
-
# resp.unprocessed_association_updates[0].error_code #=> String, one of "INVALID_INPUT", "ACCESS_DENIED", "NOT_FOUND", "LIMIT_EXCEEDED"
|
1227
|
-
# resp.unprocessed_association_updates[0].error_reason #=> String
|
1228
|
-
#
|
1229
|
-
# @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/BatchUpdateStandardsControlAssociations AWS API Documentation
|
1230
|
-
#
|
1231
|
-
# @overload batch_update_standards_control_associations(params = {})
|
1232
|
-
# @param [Hash] params ({})
|
1233
|
-
def batch_update_standards_control_associations(params = {}, options = {})
|
1234
|
-
req = build_request(:batch_update_standards_control_associations, params)
|
1235
|
-
req.send_request(options)
|
1236
|
-
end
|
1237
|
-
|
1238
|
-
# Creates a custom action target in Security Hub.
|
1239
|
-
#
|
1240
|
-
# You can use custom actions on findings and insights in Security Hub to
|
1241
|
-
# trigger target actions in Amazon CloudWatch Events.
|
1242
|
-
#
|
1243
|
-
# @option params [required, String] :name
|
1244
|
-
# The name of the custom action target. Can contain up to 20 characters.
|
1245
|
-
#
|
1246
|
-
# @option params [required, String] :description
|
1247
|
-
# The description for the custom action target.
|
1248
|
-
#
|
1249
|
-
# @option params [required, String] :id
|
1250
|
-
# The ID for the custom action target. Can contain up to 20 alphanumeric
|
1251
|
-
# characters.
|
1252
|
-
#
|
1253
|
-
# @return [Types::CreateActionTargetResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
1254
|
-
#
|
1255
|
-
# * {Types::CreateActionTargetResponse#action_target_arn #action_target_arn} => String
|
1256
|
-
#
|
1257
|
-
#
|
1258
|
-
# @example Example: To create a custom action target
|
1259
|
-
#
|
1260
|
-
# # The following example creates a custom action target in Security Hub. Custom actions on findings and insights
|
1261
|
-
# # automatically trigger actions in Amazon CloudWatch Events.
|
1262
|
-
#
|
1263
|
-
# resp = client.create_action_target({
|
1264
|
-
# description: "Action to send the finding for remediation tracking",
|
1265
|
-
# id: "Remediation",
|
1266
|
-
# name: "Send to remediation",
|
1267
|
-
# })
|
1268
|
-
#
|
1269
|
-
# resp.to_h outputs the following:
|
1270
|
-
# {
|
1271
|
-
# action_target_arn: "arn:aws:securityhub:us-west-1:123456789012:action/custom/Remediation",
|
1272
|
-
# }
|
1273
|
-
#
|
1274
|
-
# @example Request syntax with placeholder values
|
1275
|
-
#
|
1276
|
-
# resp = client.create_action_target({
|
1277
|
-
# name: "NonEmptyString", # required
|
1278
|
-
# description: "NonEmptyString", # required
|
1279
|
-
# id: "NonEmptyString", # required
|
1280
|
-
# })
|
1281
|
-
#
|
1282
|
-
# @example Response structure
|
1283
|
-
#
|
1284
|
-
# resp.action_target_arn #=> String
|
2373
|
+
# resp.rule_arn #=> String
|
1285
2374
|
#
|
1286
|
-
# @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/
|
2375
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/CreateAutomationRule AWS API Documentation
|
1287
2376
|
#
|
1288
|
-
# @overload
|
2377
|
+
# @overload create_automation_rule(params = {})
|
1289
2378
|
# @param [Hash] params ({})
|
1290
|
-
def
|
1291
|
-
req = build_request(:
|
2379
|
+
def create_automation_rule(params = {}, options = {})
|
2380
|
+
req = build_request(:create_automation_rule, params)
|
1292
2381
|
req.send_request(options)
|
1293
2382
|
end
|
1294
2383
|
|
@@ -5156,6 +6245,90 @@ module Aws::SecurityHub
|
|
5156
6245
|
req.send_request(options)
|
5157
6246
|
end
|
5158
6247
|
|
6248
|
+
# A list of automation rules and their metadata for the calling account.
|
6249
|
+
#
|
6250
|
+
# @option params [String] :next_token
|
6251
|
+
# A token to specify where to start paginating the response. This is the
|
6252
|
+
# `NextToken` from a previously truncated response. On your first call
|
6253
|
+
# to the `ListAutomationRules` API, set the value of this parameter to
|
6254
|
+
# `NULL`.
|
6255
|
+
#
|
6256
|
+
# @option params [Integer] :max_results
|
6257
|
+
# The maximum number of rules to return in the response. This currently
|
6258
|
+
# ranges from 1 to 100.
|
6259
|
+
#
|
6260
|
+
# @return [Types::ListAutomationRulesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
6261
|
+
#
|
6262
|
+
# * {Types::ListAutomationRulesResponse#automation_rules_metadata #automation_rules_metadata} => Array<Types::AutomationRulesMetadata>
|
6263
|
+
# * {Types::ListAutomationRulesResponse#next_token #next_token} => String
|
6264
|
+
#
|
6265
|
+
#
|
6266
|
+
# @example Example: To list automation rules
|
6267
|
+
#
|
6268
|
+
# # The following example lists automation rules and rule metadata in the calling account.
|
6269
|
+
#
|
6270
|
+
# resp = client.list_automation_rules({
|
6271
|
+
# max_results: 2,
|
6272
|
+
# next_token: "example-token",
|
6273
|
+
# })
|
6274
|
+
#
|
6275
|
+
# resp.to_h outputs the following:
|
6276
|
+
# {
|
6277
|
+
# automation_rules_metadata: [
|
6278
|
+
# {
|
6279
|
+
# created_at: Time.parse("2022-08-31T01:52:33.250Z"),
|
6280
|
+
# created_by: "AROAJURBUYQQNL5OL2TIM:TEST-16MJ75L9VBK14",
|
6281
|
+
# description: "IAM.8 is a known issue and can be resolved",
|
6282
|
+
# rule_arn: "arn:aws:securityhub:us-east-1:123456789012:automation-rule/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
|
6283
|
+
# rule_name: "sample-rule-name-1",
|
6284
|
+
# rule_order: 1,
|
6285
|
+
# rule_status: "ENABLED",
|
6286
|
+
# updated_at: Time.parse("2022-08-31T01:52:33.250Z"),
|
6287
|
+
# },
|
6288
|
+
# {
|
6289
|
+
# created_at: Time.parse("2022-08-31T01:52:33.250Z"),
|
6290
|
+
# created_by: "AROAJURBUYQQNL5OL2TIM:TEST-16MJ75L9VBK14",
|
6291
|
+
# description: "Lambda.2 is a known issue and can be resolved",
|
6292
|
+
# rule_arn: "arn:aws:securityhub:us-east-1:123456789012:automation-rule/a1b2c3d4-5678-90ab-cdef-EXAMPLE22222",
|
6293
|
+
# rule_name: "sample-rule-name-2",
|
6294
|
+
# rule_order: 2,
|
6295
|
+
# rule_status: "ENABLED",
|
6296
|
+
# updated_at: Time.parse("2022-08-31T01:52:33.250Z"),
|
6297
|
+
# },
|
6298
|
+
# ],
|
6299
|
+
# next_token: "example-token",
|
6300
|
+
# }
|
6301
|
+
#
|
6302
|
+
# @example Request syntax with placeholder values
|
6303
|
+
#
|
6304
|
+
# resp = client.list_automation_rules({
|
6305
|
+
# next_token: "NextToken",
|
6306
|
+
# max_results: 1,
|
6307
|
+
# })
|
6308
|
+
#
|
6309
|
+
# @example Response structure
|
6310
|
+
#
|
6311
|
+
# resp.automation_rules_metadata #=> Array
|
6312
|
+
# resp.automation_rules_metadata[0].rule_arn #=> String
|
6313
|
+
# resp.automation_rules_metadata[0].rule_status #=> String, one of "ENABLED", "DISABLED"
|
6314
|
+
# resp.automation_rules_metadata[0].rule_order #=> Integer
|
6315
|
+
# resp.automation_rules_metadata[0].rule_name #=> String
|
6316
|
+
# resp.automation_rules_metadata[0].description #=> String
|
6317
|
+
# resp.automation_rules_metadata[0].is_terminal #=> Boolean
|
6318
|
+
# resp.automation_rules_metadata[0].created_at #=> Time
|
6319
|
+
# resp.automation_rules_metadata[0].updated_at #=> Time
|
6320
|
+
# resp.automation_rules_metadata[0].created_by #=> String
|
6321
|
+
# resp.next_token #=> String
|
6322
|
+
#
|
6323
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/ListAutomationRules AWS API Documentation
|
6324
|
+
#
|
6325
|
+
# @overload list_automation_rules(params = {})
|
6326
|
+
# @param [Hash] params ({})
|
6327
|
+
def list_automation_rules(params = {}, options = {})
|
6328
|
+
req = build_request(:list_automation_rules, params)
|
6329
|
+
req.send_request(options)
|
6330
|
+
end
|
6331
|
+
|
5159
6332
|
# Lists all findings-generating solutions (products) that you are
|
5160
6333
|
# subscribed to receive findings from in Security Hub.
|
5161
6334
|
#
|
@@ -7510,7 +8683,7 @@ module Aws::SecurityHub
|
|
7510
8683
|
params: params,
|
7511
8684
|
config: config)
|
7512
8685
|
context[:gem_name] = 'aws-sdk-securityhub'
|
7513
|
-
context[:gem_version] = '1.
|
8686
|
+
context[:gem_version] = '1.84.0'
|
7514
8687
|
Seahorse::Client::Request.new(handlers, context)
|
7515
8688
|
end
|
7516
8689
|
|