@aws-sdk/client-securityhub 3.454.0 → 3.459.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.
Files changed (109) hide show
  1. package/README.md +163 -67
  2. package/dist-cjs/SecurityHub.js +24 -0
  3. package/dist-cjs/commands/BatchGetConfigurationPolicyAssociationsCommand.js +51 -0
  4. package/dist-cjs/commands/CreateConfigurationPolicyCommand.js +51 -0
  5. package/dist-cjs/commands/DeleteConfigurationPolicyCommand.js +51 -0
  6. package/dist-cjs/commands/GetConfigurationPolicyAssociationCommand.js +51 -0
  7. package/dist-cjs/commands/GetConfigurationPolicyCommand.js +51 -0
  8. package/dist-cjs/commands/GetSecurityControlDefinitionCommand.js +51 -0
  9. package/dist-cjs/commands/ListConfigurationPoliciesCommand.js +51 -0
  10. package/dist-cjs/commands/ListConfigurationPolicyAssociationsCommand.js +51 -0
  11. package/dist-cjs/commands/StartConfigurationPolicyAssociationCommand.js +51 -0
  12. package/dist-cjs/commands/StartConfigurationPolicyDisassociationCommand.js +51 -0
  13. package/dist-cjs/commands/UpdateConfigurationPolicyCommand.js +51 -0
  14. package/dist-cjs/commands/UpdateSecurityControlCommand.js +51 -0
  15. package/dist-cjs/commands/index.js +12 -0
  16. package/dist-cjs/models/models_0.js +10 -1
  17. package/dist-cjs/models/models_2.js +104 -1
  18. package/dist-cjs/pagination/ListConfigurationPoliciesPaginator.js +29 -0
  19. package/dist-cjs/pagination/ListConfigurationPolicyAssociationsPaginator.js +29 -0
  20. package/dist-cjs/pagination/index.js +2 -0
  21. package/dist-cjs/protocols/Aws_restJson1.js +1283 -31
  22. package/dist-es/SecurityHub.js +24 -0
  23. package/dist-es/commands/BatchGetConfigurationPolicyAssociationsCommand.js +47 -0
  24. package/dist-es/commands/CreateConfigurationPolicyCommand.js +47 -0
  25. package/dist-es/commands/DeleteConfigurationPolicyCommand.js +47 -0
  26. package/dist-es/commands/GetConfigurationPolicyAssociationCommand.js +47 -0
  27. package/dist-es/commands/GetConfigurationPolicyCommand.js +47 -0
  28. package/dist-es/commands/GetSecurityControlDefinitionCommand.js +47 -0
  29. package/dist-es/commands/ListConfigurationPoliciesCommand.js +47 -0
  30. package/dist-es/commands/ListConfigurationPolicyAssociationsCommand.js +47 -0
  31. package/dist-es/commands/StartConfigurationPolicyAssociationCommand.js +47 -0
  32. package/dist-es/commands/StartConfigurationPolicyDisassociationCommand.js +47 -0
  33. package/dist-es/commands/UpdateConfigurationPolicyCommand.js +47 -0
  34. package/dist-es/commands/UpdateSecurityControlCommand.js +47 -0
  35. package/dist-es/commands/index.js +12 -0
  36. package/dist-es/models/models_0.js +9 -0
  37. package/dist-es/models/models_2.js +102 -0
  38. package/dist-es/pagination/ListConfigurationPoliciesPaginator.js +25 -0
  39. package/dist-es/pagination/ListConfigurationPolicyAssociationsPaginator.js +25 -0
  40. package/dist-es/pagination/index.js +2 -0
  41. package/dist-es/protocols/Aws_restJson1.js +1258 -31
  42. package/dist-types/SecurityHub.d.ts +84 -0
  43. package/dist-types/SecurityHubClient.d.ts +14 -2
  44. package/dist-types/commands/BatchDisableStandardsCommand.d.ts +3 -0
  45. package/dist-types/commands/BatchEnableStandardsCommand.d.ts +3 -0
  46. package/dist-types/commands/BatchGetAutomationRulesCommand.d.ts +7 -0
  47. package/dist-types/commands/BatchGetConfigurationPolicyAssociationsCommand.d.ts +128 -0
  48. package/dist-types/commands/BatchGetSecurityControlsCommand.d.ts +45 -2
  49. package/dist-types/commands/BatchImportFindingsCommand.d.ts +13 -3
  50. package/dist-types/commands/BatchUpdateAutomationRulesCommand.d.ts +7 -0
  51. package/dist-types/commands/BatchUpdateStandardsControlAssociationsCommand.d.ts +3 -0
  52. package/dist-types/commands/CreateAutomationRuleCommand.d.ts +7 -0
  53. package/dist-types/commands/CreateConfigurationPolicyCommand.d.ts +189 -0
  54. package/dist-types/commands/CreateInsightCommand.d.ts +17 -0
  55. package/dist-types/commands/CreateMembersCommand.d.ts +3 -0
  56. package/dist-types/commands/DeleteConfigurationPolicyCommand.d.ts +98 -0
  57. package/dist-types/commands/DescribeOrganizationConfigurationCommand.d.ts +7 -2
  58. package/dist-types/commands/DisableOrganizationAdminAccountCommand.d.ts +3 -0
  59. package/dist-types/commands/DisableSecurityHubCommand.d.ts +3 -0
  60. package/dist-types/commands/DisassociateMembersCommand.d.ts +3 -0
  61. package/dist-types/commands/EnableOrganizationAdminAccountCommand.d.ts +3 -0
  62. package/dist-types/commands/GetConfigurationPolicyAssociationCommand.d.ts +107 -0
  63. package/dist-types/commands/GetConfigurationPolicyCommand.d.ts +143 -0
  64. package/dist-types/commands/GetFindingsCommand.d.ts +30 -3
  65. package/dist-types/commands/GetInsightsCommand.d.ts +17 -0
  66. package/dist-types/commands/GetSecurityControlDefinitionCommand.d.ts +193 -0
  67. package/dist-types/commands/ListConfigurationPoliciesCommand.d.ts +104 -0
  68. package/dist-types/commands/ListConfigurationPolicyAssociationsCommand.d.ts +110 -0
  69. package/dist-types/commands/ListSecurityControlDefinitionsCommand.d.ts +65 -0
  70. package/dist-types/commands/StartConfigurationPolicyAssociationCommand.d.ts +108 -0
  71. package/dist-types/commands/StartConfigurationPolicyDisassociationCommand.d.ts +102 -0
  72. package/dist-types/commands/UpdateConfigurationPolicyCommand.d.ts +191 -0
  73. package/dist-types/commands/UpdateFindingsCommand.d.ts +17 -0
  74. package/dist-types/commands/UpdateInsightCommand.d.ts +17 -0
  75. package/dist-types/commands/UpdateOrganizationConfigurationCommand.d.ts +16 -2
  76. package/dist-types/commands/UpdateSecurityControlCommand.d.ts +141 -0
  77. package/dist-types/commands/UpdateSecurityHubConfigurationCommand.d.ts +3 -0
  78. package/dist-types/commands/UpdateStandardsControlCommand.d.ts +3 -0
  79. package/dist-types/commands/index.d.ts +12 -0
  80. package/dist-types/models/models_0.d.ts +101 -193
  81. package/dist-types/models/models_1.d.ts +221 -86
  82. package/dist-types/models/models_2.d.ts +2377 -394
  83. package/dist-types/pagination/ListConfigurationPoliciesPaginator.d.ts +7 -0
  84. package/dist-types/pagination/ListConfigurationPolicyAssociationsPaginator.d.ts +7 -0
  85. package/dist-types/pagination/index.d.ts +2 -0
  86. package/dist-types/protocols/Aws_restJson1.d.ts +108 -0
  87. package/dist-types/ts3.4/SecurityHub.d.ts +234 -0
  88. package/dist-types/ts3.4/SecurityHubClient.d.ts +72 -0
  89. package/dist-types/ts3.4/commands/BatchGetConfigurationPolicyAssociationsCommand.d.ts +42 -0
  90. package/dist-types/ts3.4/commands/CreateConfigurationPolicyCommand.d.ts +42 -0
  91. package/dist-types/ts3.4/commands/DeleteConfigurationPolicyCommand.d.ts +42 -0
  92. package/dist-types/ts3.4/commands/GetConfigurationPolicyAssociationCommand.d.ts +42 -0
  93. package/dist-types/ts3.4/commands/GetConfigurationPolicyCommand.d.ts +42 -0
  94. package/dist-types/ts3.4/commands/GetSecurityControlDefinitionCommand.d.ts +42 -0
  95. package/dist-types/ts3.4/commands/ListConfigurationPoliciesCommand.d.ts +42 -0
  96. package/dist-types/ts3.4/commands/ListConfigurationPolicyAssociationsCommand.d.ts +42 -0
  97. package/dist-types/ts3.4/commands/StartConfigurationPolicyAssociationCommand.d.ts +42 -0
  98. package/dist-types/ts3.4/commands/StartConfigurationPolicyDisassociationCommand.d.ts +42 -0
  99. package/dist-types/ts3.4/commands/UpdateConfigurationPolicyCommand.d.ts +42 -0
  100. package/dist-types/ts3.4/commands/UpdateSecurityControlCommand.d.ts +42 -0
  101. package/dist-types/ts3.4/commands/index.d.ts +12 -0
  102. package/dist-types/ts3.4/models/models_0.d.ts +23 -26
  103. package/dist-types/ts3.4/models/models_1.d.ts +37 -15
  104. package/dist-types/ts3.4/models/models_2.d.ts +602 -17
  105. package/dist-types/ts3.4/pagination/ListConfigurationPoliciesPaginator.d.ts +11 -0
  106. package/dist-types/ts3.4/pagination/ListConfigurationPolicyAssociationsPaginator.d.ts +11 -0
  107. package/dist-types/ts3.4/pagination/index.d.ts +2 -0
  108. package/dist-types/ts3.4/protocols/Aws_restJson1.d.ts +144 -0
  109. package/package.json +3 -3
@@ -1,7 +1,92 @@
1
1
  import { ExceptionOptionType as __ExceptionOptionType } from "@smithy/smithy-client";
2
- import { AccountDetails, Action, ActionTarget, Adjustment, AdminAccount, AssociationStatus, AutoEnableStandards, AutomationRulesAction, AutomationRulesConfig, AutomationRulesFindingFilters, AutomationRulesMetadata, AwsAmazonMqBrokerDetails, AwsApiGatewayRestApiDetails, AwsApiGatewayStageDetails, AwsApiGatewayV2ApiDetails, AwsApiGatewayV2StageDetails, AwsAppSyncGraphQlApiDetails, AwsAthenaWorkGroupDetails, AwsAutoScalingAutoScalingGroupDetails, AwsAutoScalingLaunchConfigurationDetails, AwsBackupBackupPlanDetails, AwsBackupBackupVaultDetails, AwsBackupRecoveryPointDetails, AwsCertificateManagerCertificateDetails, AwsCloudFormationStackDetails, AwsCloudFrontDistributionDetails, AwsCloudTrailTrailDetails, AwsCloudWatchAlarmDetails, AwsCodeBuildProjectDetails, AwsDmsEndpointDetails, AwsDmsReplicationInstanceDetails, AwsDmsReplicationTaskDetails, AwsDynamoDbTableDetails, AwsEc2EipDetails, AwsEc2InstanceDetails, AwsEc2LaunchTemplateDetails, AwsEc2NetworkAclDetails, AwsEc2NetworkInterfaceDetails, AwsEc2RouteTableDetails, AwsEc2SecurityGroupDetails, AwsEc2SubnetDetails, AwsEc2TransitGatewayDetails, AwsEc2VolumeDetails, AwsEc2VpcDetails, AwsEc2VpcEndpointServiceDetails, AwsEc2VpcPeeringConnectionDetails, AwsEc2VpnConnectionDetails, AwsEcrContainerImageDetails, AwsEcrRepositoryDetails, AwsEcsClusterDetails, AwsEcsContainerDetails, AwsEcsServiceDetails, AwsEcsTaskDefinitionDetails, DateFilter, MapFilter, NoteUpdate, NumberFilter, RelatedFinding, RuleStatus, SeverityLabel, SeverityUpdate, StringFilter, VerificationState, WorkflowStatus, WorkflowUpdate } from "./models_0";
3
- import { AwsEcsTaskDetails, AwsEfsAccessPointDetails, AwsEksClusterDetails, AwsElasticBeanstalkEnvironmentDetails, AwsElasticsearchDomainDetails, AwsElbLoadBalancerDetails, AwsElbv2LoadBalancerDetails, AwsEventSchemasRegistryDetails, AwsEventsEndpointDetails, AwsEventsEventbusDetails, AwsGuardDutyDetectorDetails, AwsIamAccessKeyDetails, AwsIamGroupDetails, AwsIamPolicyDetails, AwsIamRoleDetails, AwsIamUserDetails, AwsKinesisStreamDetails, AwsKmsKeyDetails, AwsLambdaFunctionDetails, AwsLambdaLayerVersionDetails, AwsMskClusterDetails, AwsNetworkFirewallFirewallDetails, AwsNetworkFirewallFirewallPolicyDetails, AwsNetworkFirewallRuleGroupDetails, AwsOpenSearchServiceDomainDetails, AwsRdsDbClusterDetails, AwsRdsDbClusterSnapshotDetails, AwsRdsDbInstanceDetails, AwsRdsDbSecurityGroupDetails, AwsRdsDbSnapshotDetails, AwsRdsEventSubscriptionDetails, AwsRedshiftClusterDetails, AwsRoute53HostedZoneDetails, AwsS3AccountPublicAccessBlockDetails, AwsS3BucketDetails, AwsS3ObjectDetails, AwsSageMakerNotebookInstanceDetails, AwsSecretsManagerSecretDetails, AwsSnsTopicDetails, AwsSqsQueueDetails, AwsSsmPatchComplianceDetails, AwsStepFunctionStateMachineDetails, AwsWafRateBasedRuleDetails, AwsWafRegionalRateBasedRuleDetails, AwsWafRegionalRuleDetails, AwsWafRegionalRuleGroupDetails, AwsWafRegionalWebAclDetails, AwsWafRuleDetails, AwsWafRuleGroupDetails, AwsWafv2ActionAllowDetails, AwsWafv2ActionBlockDetails, AwsWafv2RulesActionDetails, Compliance, DataClassificationDetails, FindingProviderFields, GeneratorDetails, Malware, Network, NetworkPathComponent, Note, PatchSummary, ProcessDetails, RecordState, Remediation } from "./models_1";
2
+ import { AccountDetails, Action, ActionTarget, Adjustment, AdminAccount, AssociationFilters, AssociationStatus, AssociationType, AutoEnableStandards, AutomationRulesAction, AutomationRulesConfig, AutomationRulesFindingFilters, AutomationRulesMetadata, AwsAmazonMqBrokerDetails, AwsApiGatewayRestApiDetails, AwsApiGatewayStageDetails, AwsApiGatewayV2ApiDetails, AwsApiGatewayV2StageDetails, AwsAppSyncGraphQlApiDetails, AwsAthenaWorkGroupDetails, AwsAutoScalingAutoScalingGroupDetails, AwsAutoScalingLaunchConfigurationDetails, AwsBackupBackupPlanDetails, AwsBackupBackupVaultDetails, AwsBackupRecoveryPointDetails, AwsCertificateManagerCertificateDetails, AwsCloudFormationStackDetails, AwsCloudFrontDistributionDetails, AwsCloudTrailTrailDetails, AwsCloudWatchAlarmDetails, AwsCodeBuildProjectDetails, AwsDmsEndpointDetails, AwsDmsReplicationInstanceDetails, AwsDmsReplicationTaskDetails, AwsDynamoDbTableDetails, AwsEc2EipDetails, AwsEc2InstanceDetails, AwsEc2LaunchTemplateDetails, AwsEc2NetworkAclDetails, AwsEc2NetworkInterfaceDetails, AwsEc2RouteTableDetails, AwsEc2SecurityGroupDetails, AwsEc2SubnetDetails, AwsEc2TransitGatewayDetails, AwsEc2VolumeDetails, AwsEc2VpcDetails, AwsEc2VpcEndpointServiceDetails, AwsEc2VpcPeeringConnectionDetails, AwsEc2VpnConnectionDetails, AwsEcrContainerImageDetails, AwsEcrRepositoryDetails, AwsEcsClusterDetails, AwsEcsContainerDetails, AwsEcsServiceDetails, ConfigurationPolicyAssociationStatus, DateFilter, MapFilter, NoteUpdate, NumberFilter, RelatedFinding, RuleStatus, SeverityLabel, SeverityUpdate, StringFilter, VerificationState, WorkflowStatus, WorkflowUpdate } from "./models_0";
3
+ import { AwsEcsTaskDefinitionDetails, AwsEcsTaskDetails, AwsEfsAccessPointDetails, AwsEksClusterDetails, AwsElasticBeanstalkEnvironmentDetails, AwsElasticsearchDomainDetails, AwsElbLoadBalancerDetails, AwsElbv2LoadBalancerDetails, AwsEventSchemasRegistryDetails, AwsEventsEndpointDetails, AwsEventsEventbusDetails, AwsGuardDutyDetectorDetails, AwsIamAccessKeyDetails, AwsIamGroupDetails, AwsIamPolicyDetails, AwsIamRoleDetails, AwsIamUserDetails, AwsKinesisStreamDetails, AwsKmsKeyDetails, AwsLambdaFunctionDetails, AwsLambdaLayerVersionDetails, AwsMskClusterDetails, AwsNetworkFirewallFirewallDetails, AwsNetworkFirewallFirewallPolicyDetails, AwsNetworkFirewallRuleGroupDetails, AwsOpenSearchServiceDomainDetails, AwsRdsDbClusterDetails, AwsRdsDbClusterSnapshotDetails, AwsRdsDbInstanceDetails, AwsRdsDbSecurityGroupDetails, AwsRdsDbSnapshotDetails, AwsRdsEventSubscriptionDetails, AwsRedshiftClusterDetails, AwsRoute53HostedZoneDetails, AwsS3AccountPublicAccessBlockDetails, AwsS3BucketDetails, AwsS3ObjectDetails, AwsSageMakerNotebookInstanceDetails, AwsSecretsManagerSecretDetails, AwsSnsTopicDetails, AwsSqsQueueDetails, AwsSsmPatchComplianceDetails, AwsStepFunctionStateMachineDetails, AwsWafRateBasedRuleDetails, AwsWafRegionalRateBasedRuleDetails, AwsWafRegionalRuleDetails, AwsWafRegionalRuleGroupDetails, AwsWafRegionalWebAclDetails, AwsWafRuleDetails, AwsWafRuleGroupDetails, AwsWafv2ActionAllowDetails, AwsWafv2CustomRequestHandlingDetails, AwsWafv2CustomResponseDetails, Compliance, DataClassificationDetails, FindingProviderFields, GeneratorDetails, Malware, Network, NetworkPathComponent, Note, PatchSummary, ProcessDetails, RecordState, Remediation } from "./models_1";
4
4
  import { SecurityHubServiceException as __BaseException } from "./SecurityHubServiceException";
5
+ /**
6
+ * @public
7
+ * <p>
8
+ * Specifies that WAF should block the request and optionally defines additional custom handling for the response to the web request.
9
+ * </p>
10
+ */
11
+ export interface AwsWafv2ActionBlockDetails {
12
+ /**
13
+ * @public
14
+ * <p>
15
+ * Defines a custom response for the web request. For information, see
16
+ * <a href="https://docs.aws.amazon.com/waf/latest/developerguide/waf-custom-request-response.html">Customizing web requests and responses in WAF</a> in the <i>WAF Developer Guide.</i>.
17
+ * </p>
18
+ */
19
+ CustomResponse?: AwsWafv2CustomResponseDetails;
20
+ }
21
+ /**
22
+ * @public
23
+ * <p>
24
+ * Specifies that WAF should run a CAPTCHA check against the request.
25
+ * </p>
26
+ */
27
+ export interface AwsWafv2RulesActionCaptchaDetails {
28
+ /**
29
+ * @public
30
+ * <p>
31
+ * Defines custom handling for the web request, used when the CAPTCHA inspection determines that the request's token is valid and unexpired. For more information,
32
+ * see <a href="https://docs.aws.amazon.com/waf/latest/developerguide/waf-custom-request-response.html">Customizing web requests and responses in WAF</a> in the <i>WAF Developer Guide.</i>.
33
+ * </p>
34
+ */
35
+ CustomRequestHandling?: AwsWafv2CustomRequestHandlingDetails;
36
+ }
37
+ /**
38
+ * @public
39
+ * <p>
40
+ * Specifies that WAF should count the request.
41
+ * </p>
42
+ */
43
+ export interface AwsWafv2RulesActionCountDetails {
44
+ /**
45
+ * @public
46
+ * <p>
47
+ * Defines custom handling for the web request. For more information,
48
+ * see <a href="https://docs.aws.amazon.com/waf/latest/developerguide/waf-custom-request-response.html">Customizing web requests and responses in WAF</a> in the <i>WAF Developer Guide.</i>.
49
+ * </p>
50
+ */
51
+ CustomRequestHandling?: AwsWafv2CustomRequestHandlingDetails;
52
+ }
53
+ /**
54
+ * @public
55
+ * <p>
56
+ * The action that WAF should take on a web request when it matches a rule's statement.
57
+ * Settings at the web ACL level can override the rule action setting.
58
+ * </p>
59
+ */
60
+ export interface AwsWafv2RulesActionDetails {
61
+ /**
62
+ * @public
63
+ * <p>
64
+ * Instructs WAF to allow the web request.
65
+ * </p>
66
+ */
67
+ Allow?: AwsWafv2ActionAllowDetails;
68
+ /**
69
+ * @public
70
+ * <p>
71
+ * Instructs WAF to block the web request.
72
+ * </p>
73
+ */
74
+ Block?: AwsWafv2ActionBlockDetails;
75
+ /**
76
+ * @public
77
+ * <p>
78
+ * Instructs WAF to run a CAPTCHA check against the web request.
79
+ * </p>
80
+ */
81
+ Captcha?: AwsWafv2RulesActionCaptchaDetails;
82
+ /**
83
+ * @public
84
+ * <p>
85
+ * Instructs WAF to count the web request and then continue evaluating the request using the remaining rules in the web ACL.
86
+ * </p>
87
+ */
88
+ Count?: AwsWafv2RulesActionCountDetails;
89
+ }
5
90
  /**
6
91
  * @public
7
92
  * <p>
@@ -1135,6 +1220,20 @@ export interface Resource {
1135
1220
  * <p>Additional details about the resource related to a finding.</p>
1136
1221
  */
1137
1222
  Details?: ResourceDetails;
1223
+ /**
1224
+ * @public
1225
+ * <p>
1226
+ * The name of the application that is related to a finding.
1227
+ * </p>
1228
+ */
1229
+ ApplicationName?: string;
1230
+ /**
1231
+ * @public
1232
+ * <p>
1233
+ * The Amazon Resource Name (ARN) of the application that is related to a finding.
1234
+ * </p>
1235
+ */
1236
+ ApplicationArn?: string;
1138
1237
  }
1139
1238
  /**
1140
1239
  * @public
@@ -1150,7 +1249,7 @@ export interface Resource {
1150
1249
  export interface Severity {
1151
1250
  /**
1152
1251
  * @public
1153
- * <p>Deprecated. This attribute is being deprecated. Instead of providing
1252
+ * <p>Deprecated. This attribute isn't included in findings. Instead of providing
1154
1253
  * <code>Product</code>, provide <code>Original</code>.</p>
1155
1254
  * <p>The native severity as defined by the Amazon Web Services service or integrated partner product that
1156
1255
  * generated the finding.</p>
@@ -1210,7 +1309,7 @@ export interface Severity {
1210
1309
  Label?: SeverityLabel;
1211
1310
  /**
1212
1311
  * @public
1213
- * <p>Deprecated. The normalized severity of a finding. This attribute is being deprecated.
1312
+ * <p>Deprecated. The normalized severity of a finding.
1214
1313
  * Instead of providing <code>Normalized</code>, provide <code>Label</code>.</p>
1215
1314
  * <p>If you provide <code>Label</code> and do not provide <code>Normalized</code>, then
1216
1315
  * <code>Normalized</code> is set automatically as follows.</p>
@@ -2024,6 +2123,18 @@ export interface AwsSecurityFinding {
2024
2123
  * </p>
2025
2124
  */
2026
2125
  GeneratorDetails?: GeneratorDetails;
2126
+ /**
2127
+ * @public
2128
+ * <p>An ISO8601-formatted timestamp that indicates when Security Hub received a finding and begins to process it.</p>
2129
+ * <p>A correctly formatted example is <code>2020-05-21T20:16:34.724Z</code>. The value cannot contain spaces, and date and time should be separated by <code>T</code>. For more information, see <a href="https://www.rfc-editor.org/rfc/rfc3339#section-5.6">RFC 3339 section 5.6, Internet Date/Time Format</a>.</p>
2130
+ */
2131
+ ProcessedAt?: string;
2132
+ /**
2133
+ * @public
2134
+ * <p>The name of the Amazon Web Services account from which a finding was generated.
2135
+ * </p>
2136
+ */
2137
+ AwsAccountName?: string;
2027
2138
  }
2028
2139
  /**
2029
2140
  * @public
@@ -2060,9 +2171,8 @@ export interface BooleanFilter {
2060
2171
  }
2061
2172
  /**
2062
2173
  * @public
2063
- * <p>A collection of attributes that are applied to all active Security Hub-aggregated findings and
2064
- * that result in a subset of findings that are included in this insight.</p>
2065
- * <p>You can filter by up to 10 finding attributes. For each attribute, you can provide up to
2174
+ * <p>A collection of filters that are applied to all active findings aggregated by Security Hub.</p>
2175
+ * <p>You can filter by up to ten finding attributes. For each attribute, you can provide up to
2066
2176
  * 20 filter values.</p>
2067
2177
  */
2068
2178
  export interface AwsSecurityFindingFilters {
@@ -2075,7 +2185,7 @@ export interface AwsSecurityFindingFilters {
2075
2185
  ProductArn?: StringFilter[];
2076
2186
  /**
2077
2187
  * @public
2078
- * <p>The Amazon Web Services account ID that a finding is generated in.</p>
2188
+ * <p>The Amazon Web Services account ID in which a finding is generated.</p>
2079
2189
  */
2080
2190
  AwsAccountId?: StringFilter[];
2081
2191
  /**
@@ -2676,6 +2786,56 @@ export interface AwsSecurityFindingFilters {
2676
2786
  * </p>
2677
2787
  */
2678
2788
  ComplianceAssociatedStandardsId?: StringFilter[];
2789
+ /**
2790
+ * @public
2791
+ * <p>
2792
+ * Indicates whether a software vulnerability in your environment has a known exploit. You can filter findings by this
2793
+ * field only if you use Security Hub and Amazon Inspector.
2794
+ * </p>
2795
+ */
2796
+ VulnerabilitiesExploitAvailable?: StringFilter[];
2797
+ /**
2798
+ * @public
2799
+ * <p>
2800
+ * Indicates whether a vulnerability is fixed in a newer version of the affected software packages. You can filter
2801
+ * findings by this field only if you use Security Hub and Amazon Inspector.
2802
+ *
2803
+ * </p>
2804
+ */
2805
+ VulnerabilitiesFixAvailable?: StringFilter[];
2806
+ /**
2807
+ * @public
2808
+ * <p>
2809
+ * The name of a security control parameter.
2810
+ * </p>
2811
+ */
2812
+ ComplianceSecurityControlParametersName?: StringFilter[];
2813
+ /**
2814
+ * @public
2815
+ * <p>
2816
+ * The current value of a security control parameter.
2817
+ * </p>
2818
+ */
2819
+ ComplianceSecurityControlParametersValue?: StringFilter[];
2820
+ /**
2821
+ * @public
2822
+ * <p>The name of the Amazon Web Services account in which a finding is generated.</p>
2823
+ */
2824
+ AwsAccountName?: StringFilter[];
2825
+ /**
2826
+ * @public
2827
+ * <p>
2828
+ * The name of the application that is related to a finding.
2829
+ * </p>
2830
+ */
2831
+ ResourceApplicationName?: StringFilter[];
2832
+ /**
2833
+ * @public
2834
+ * <p>
2835
+ * The ARN of the application that is related to a finding.
2836
+ * </p>
2837
+ */
2838
+ ResourceApplicationArn?: StringFilter[];
2679
2839
  }
2680
2840
  /**
2681
2841
  * @public
@@ -2938,401 +3098,866 @@ export interface BatchGetAutomationRulesResponse {
2938
3098
  */
2939
3099
  UnprocessedAutomationRules?: UnprocessedAutomationRule[];
2940
3100
  }
3101
+ /**
3102
+ * @public
3103
+ * <p>
3104
+ * The target account, organizational unit, or the root that is associated with an Security Hub configuration. The configuration
3105
+ * can be a configuration policy or self-managed behavior.
3106
+ * </p>
3107
+ */
3108
+ export type Target = Target.AccountIdMember | Target.OrganizationalUnitIdMember | Target.RootIdMember | Target.$UnknownMember;
2941
3109
  /**
2942
3110
  * @public
2943
3111
  */
2944
- export interface BatchGetSecurityControlsRequest {
3112
+ export declare namespace Target {
2945
3113
  /**
2946
3114
  * @public
2947
- * <p> A list of security controls (identified with <code>SecurityControlId</code>,
2948
- * <code>SecurityControlArn</code>, or a mix of both parameters). The security control ID
2949
- * or Amazon Resource Name (ARN) is the same across standards. </p>
3115
+ * <p>
3116
+ * The Amazon Web Services account ID of the target account.
3117
+ * </p>
2950
3118
  */
2951
- SecurityControlIds: string[] | undefined;
3119
+ interface AccountIdMember {
3120
+ AccountId: string;
3121
+ OrganizationalUnitId?: never;
3122
+ RootId?: never;
3123
+ $unknown?: never;
3124
+ }
3125
+ /**
3126
+ * @public
3127
+ * <p>
3128
+ * The organizational unit ID of the target organizational unit.
3129
+ * </p>
3130
+ */
3131
+ interface OrganizationalUnitIdMember {
3132
+ AccountId?: never;
3133
+ OrganizationalUnitId: string;
3134
+ RootId?: never;
3135
+ $unknown?: never;
3136
+ }
3137
+ /**
3138
+ * @public
3139
+ * <p>
3140
+ * The ID of the organization root.
3141
+ * </p>
3142
+ */
3143
+ interface RootIdMember {
3144
+ AccountId?: never;
3145
+ OrganizationalUnitId?: never;
3146
+ RootId: string;
3147
+ $unknown?: never;
3148
+ }
3149
+ /**
3150
+ * @public
3151
+ */
3152
+ interface $UnknownMember {
3153
+ AccountId?: never;
3154
+ OrganizationalUnitId?: never;
3155
+ RootId?: never;
3156
+ $unknown: [string, any];
3157
+ }
3158
+ interface Visitor<T> {
3159
+ AccountId: (value: string) => T;
3160
+ OrganizationalUnitId: (value: string) => T;
3161
+ RootId: (value: string) => T;
3162
+ _: (name: string, value: any) => T;
3163
+ }
3164
+ const visit: <T>(value: Target, visitor: Visitor<T>) => T;
2952
3165
  }
2953
3166
  /**
2954
3167
  * @public
2955
- * @enum
3168
+ * <p>
3169
+ * Provides details about the association between an Security Hub configuration and a target account, organizational unit, or
3170
+ * the root. An association can exist between a target and a configuration policy, or between a target and self-managed
3171
+ * behavior.
3172
+ * </p>
2956
3173
  */
2957
- export declare const ControlStatus: {
2958
- readonly DISABLED: "DISABLED";
2959
- readonly ENABLED: "ENABLED";
2960
- };
3174
+ export interface ConfigurationPolicyAssociation {
3175
+ /**
3176
+ * @public
3177
+ * <p>
3178
+ * The target account, organizational unit, or the root.
3179
+ * </p>
3180
+ */
3181
+ Target?: Target;
3182
+ }
2961
3183
  /**
2962
3184
  * @public
2963
3185
  */
2964
- export type ControlStatus = (typeof ControlStatus)[keyof typeof ControlStatus];
3186
+ export interface BatchGetConfigurationPolicyAssociationsRequest {
3187
+ /**
3188
+ * @public
3189
+ * <p>
3190
+ * Specifies one or more target account IDs, organizational unit (OU) IDs, or the root ID to retrieve associations for.
3191
+ * </p>
3192
+ */
3193
+ ConfigurationPolicyAssociationIdentifiers: ConfigurationPolicyAssociation[] | undefined;
3194
+ }
2965
3195
  /**
2966
3196
  * @public
2967
3197
  * @enum
2968
3198
  */
2969
- export declare const SeverityRating: {
2970
- readonly CRITICAL: "CRITICAL";
2971
- readonly HIGH: "HIGH";
2972
- readonly LOW: "LOW";
2973
- readonly MEDIUM: "MEDIUM";
3199
+ export declare const TargetType: {
3200
+ readonly ACCOUNT: "ACCOUNT";
3201
+ readonly ORGANIZATIONAL_UNIT: "ORGANIZATIONAL_UNIT";
2974
3202
  };
2975
3203
  /**
2976
3204
  * @public
2977
3205
  */
2978
- export type SeverityRating = (typeof SeverityRating)[keyof typeof SeverityRating];
3206
+ export type TargetType = (typeof TargetType)[keyof typeof TargetType];
2979
3207
  /**
2980
3208
  * @public
2981
3209
  * <p>
2982
- * A security control in Security Hub describes a security best practice related to a specific resource.
2983
- * </p>
3210
+ * An object that contains the details of a configuration policy association that’s returned in a
3211
+ * <code>ListConfigurationPolicyAssociations</code> request.
3212
+ * </p>
2984
3213
  */
2985
- export interface SecurityControl {
3214
+ export interface ConfigurationPolicyAssociationSummary {
2986
3215
  /**
2987
3216
  * @public
2988
3217
  * <p>
2989
- * The unique identifier of a security control across standards. Values for this field typically consist of an Amazon Web Service name and a
2990
- * number, such as APIGateway.3.
2991
- * </p>
3218
+ * The universally unique identifier (UUID) of the configuration policy.
3219
+ * </p>
2992
3220
  */
2993
- SecurityControlId: string | undefined;
3221
+ ConfigurationPolicyId?: string;
2994
3222
  /**
2995
3223
  * @public
2996
- * <p> The Amazon Resource Name (ARN) for a security control across standards, such as
2997
- * <code>arn:aws:securityhub:eu-central-1:123456789012:security-control/S3.1</code>. This
2998
- * parameter doesn't mention a specific standard. </p>
3224
+ * <p>
3225
+ * The identifier of the target account, organizational unit, or the root.
3226
+ * </p>
2999
3227
  */
3000
- SecurityControlArn: string | undefined;
3228
+ TargetId?: string;
3001
3229
  /**
3002
3230
  * @public
3003
- * <p>The title of a security control.
3004
- * </p>
3231
+ * <p>
3232
+ * Specifies whether the target is an Amazon Web Services account, organizational unit, or the root.
3233
+ * </p>
3005
3234
  */
3006
- Title: string | undefined;
3235
+ TargetType?: TargetType;
3007
3236
  /**
3008
3237
  * @public
3009
- * <p> The description of a security control across standards. This typically summarizes how
3010
- * Security Hub evaluates the control and the conditions under which it produces a
3011
- * failed finding. This parameter doesn't reference a specific standard. </p>
3238
+ * <p>
3239
+ * Indicates whether the association between the specified target and the configuration was directly applied by the
3240
+ * Security Hub delegated administrator or inherited from a parent.
3241
+ * </p>
3012
3242
  */
3013
- Description: string | undefined;
3243
+ AssociationType?: AssociationType;
3014
3244
  /**
3015
3245
  * @public
3016
3246
  * <p>
3017
- * A link to Security Hub documentation that explains how to remediate a failed finding for a security control.
3018
- * </p>
3247
+ * The date and time, in UTC and ISO 8601 format, that the configuration policy association was last updated.
3248
+ * </p>
3019
3249
  */
3020
- RemediationUrl: string | undefined;
3250
+ UpdatedAt?: Date;
3021
3251
  /**
3022
3252
  * @public
3023
3253
  * <p>
3024
- * The severity of a security control. For more information about how Security Hub determines control severity, see
3025
- * <a href="https://docs.aws.amazon.com/securityhub/latest/userguide/controls-findings-create-update.html#control-findings-severity">Assigning severity to control findings</a> in the
3026
- * <i>Security Hub User Guide</i>.
3027
- * </p>
3254
+ * The current status of the association between the specified target and the configuration.
3255
+ * </p>
3028
3256
  */
3029
- SeverityRating: SeverityRating | undefined;
3257
+ AssociationStatus?: ConfigurationPolicyAssociationStatus;
3030
3258
  /**
3031
3259
  * @public
3032
3260
  * <p>
3033
- * The enablement status of a security control in a specific standard.
3034
- * </p>
3261
+ * The explanation for a <code>FAILED</code> value for <code>AssociationStatus</code>.
3262
+ * </p>
3035
3263
  */
3036
- SecurityControlStatus: ControlStatus | undefined;
3264
+ AssociationStatusMessage?: string;
3037
3265
  }
3038
3266
  /**
3039
3267
  * @public
3040
- * @enum
3041
- */
3042
- export declare const UnprocessedErrorCode: {
3043
- readonly ACCESS_DENIED: "ACCESS_DENIED";
3044
- readonly INVALID_INPUT: "INVALID_INPUT";
3045
- readonly LIMIT_EXCEEDED: "LIMIT_EXCEEDED";
3046
- readonly NOT_FOUND: "NOT_FOUND";
3047
- };
3048
- /**
3049
- * @public
3050
- */
3051
- export type UnprocessedErrorCode = (typeof UnprocessedErrorCode)[keyof typeof UnprocessedErrorCode];
3052
- /**
3053
- * @public
3054
- * <p> Provides details about a security control for which a response couldn't be returned. </p>
3268
+ * <p>
3269
+ * An array of configuration policy associations, one for each configuration policy association identifier, that
3270
+ * was specified in a <code>BatchGetConfigurationPolicyAssociations</code> request but couldn’t be processed due
3271
+ * to an error.
3272
+ * </p>
3055
3273
  */
3056
- export interface UnprocessedSecurityControl {
3274
+ export interface UnprocessedConfigurationPolicyAssociation {
3057
3275
  /**
3058
3276
  * @public
3059
- * <p> The control (identified with <code>SecurityControlId</code>,
3060
- * <code>SecurityControlArn</code>, or a mix of both parameters) for which a response
3061
- * couldn't be returned. </p>
3277
+ * <p>
3278
+ * Configuration policy association identifiers that were specified in a <code>BatchGetConfigurationPolicyAssociations</code>
3279
+ * request but couldnt be processed due to an error.
3280
+ * </p>
3062
3281
  */
3063
- SecurityControlId: string | undefined;
3282
+ ConfigurationPolicyAssociationIdentifiers?: ConfigurationPolicyAssociation;
3064
3283
  /**
3065
3284
  * @public
3066
3285
  * <p>
3067
- * The error code for the unprocessed security control.
3068
- * </p>
3286
+ * An HTTP status code that identifies why the configuration policy association failed.
3287
+ * </p>
3069
3288
  */
3070
- ErrorCode: UnprocessedErrorCode | undefined;
3289
+ ErrorCode?: string;
3071
3290
  /**
3072
3291
  * @public
3073
3292
  * <p>
3074
- * The reason why the security control was unprocessed.
3075
- * </p>
3293
+ * A string that identifies why the configuration policy association failed.
3294
+ * </p>
3076
3295
  */
3077
3296
  ErrorReason?: string;
3078
3297
  }
3079
3298
  /**
3080
3299
  * @public
3081
3300
  */
3082
- export interface BatchGetSecurityControlsResponse {
3301
+ export interface BatchGetConfigurationPolicyAssociationsResponse {
3083
3302
  /**
3084
3303
  * @public
3085
3304
  * <p>
3086
- * An array that returns the identifier, Amazon Resource Name (ARN), and other details about a security control.
3087
- * The same information is returned whether the request includes <code>SecurityControlId</code> or <code>SecurityControlArn</code>.
3088
- * </p>
3305
+ * Describes associations for the target accounts, OUs, or the root.
3306
+ * </p>
3089
3307
  */
3090
- SecurityControls: SecurityControl[] | undefined;
3308
+ ConfigurationPolicyAssociations?: ConfigurationPolicyAssociationSummary[];
3091
3309
  /**
3092
3310
  * @public
3093
3311
  * <p>
3094
- * A security control (identified with <code>SecurityControlId</code>, <code>SecurityControlArn</code>, or a mix of both parameters) for which
3095
- * details cannot be returned.
3096
- * </p>
3312
+ * An array of configuration policy associations, one for each configuration policy association identifier, that was
3313
+ * specified in the request but couldn’t be processed due to an error.
3314
+ * </p>
3097
3315
  */
3098
- UnprocessedIds?: UnprocessedSecurityControl[];
3316
+ UnprocessedConfigurationPolicyAssociations?: UnprocessedConfigurationPolicyAssociation[];
3099
3317
  }
3100
3318
  /**
3101
3319
  * @public
3102
- * <p>
3103
- * An array with one or more objects that includes a security control (identified with <code>SecurityControlId</code>, <code>SecurityControlArn</code>, or a mix of both parameters)
3104
- * and the Amazon Resource Name (ARN) of a standard. The security control ID or ARN is the same across standards.
3105
- * </p>
3106
3320
  */
3107
- export interface StandardsControlAssociationId {
3321
+ export interface BatchGetSecurityControlsRequest {
3108
3322
  /**
3109
3323
  * @public
3110
- * <p>
3111
- * The unique identifier (identified with <code>SecurityControlId</code>, <code>SecurityControlArn</code>, or a mix of both parameters) of a security
3112
- * control across standards.
3113
- * </p>
3114
- */
3115
- SecurityControlId: string | undefined;
3116
- /**
3117
- * @public
3118
- * <p>
3119
- * The ARN of a standard.
3120
- * </p>
3324
+ * <p> A list of security controls (identified with <code>SecurityControlId</code>,
3325
+ * <code>SecurityControlArn</code>, or a mix of both parameters). The security control ID
3326
+ * or Amazon Resource Name (ARN) is the same across standards. </p>
3121
3327
  */
3122
- StandardsArn: string | undefined;
3328
+ SecurityControlIds: string[] | undefined;
3123
3329
  }
3124
3330
  /**
3125
3331
  * @public
3332
+ * <p>
3333
+ * An object that includes the data type of a security control parameter and its current value.
3334
+ * </p>
3126
3335
  */
3127
- export interface BatchGetStandardsControlAssociationsRequest {
3128
- /**
3129
- * @public
3130
- * <p>
3131
- * An array with one or more objects that includes a security control (identified with <code>SecurityControlId</code>, <code>SecurityControlArn</code>, or a mix of both parameters) and the Amazon Resource Name (ARN) of a standard.
3132
- * This field is used to query the enablement status of a control in a specified standard. The security control ID or ARN is the same across standards.
3133
- * </p>
3134
- */
3135
- StandardsControlAssociationIds: StandardsControlAssociationId[] | undefined;
3136
- }
3336
+ export type ParameterValue = ParameterValue.BooleanMember | ParameterValue.DoubleMember | ParameterValue.EnumMember | ParameterValue.EnumListMember | ParameterValue.IntegerMember | ParameterValue.IntegerListMember | ParameterValue.StringMember | ParameterValue.StringListMember | ParameterValue.$UnknownMember;
3137
3337
  /**
3138
3338
  * @public
3139
- * <p> Provides details about a control's enablement status in a specified standard. </p>
3140
3339
  */
3141
- export interface StandardsControlAssociationDetail {
3340
+ export declare namespace ParameterValue {
3142
3341
  /**
3143
3342
  * @public
3144
3343
  * <p>
3145
- * The Amazon Resource Name (ARN) of a security standard.
3146
- * </p>
3344
+ * A control parameter that is an integer.
3345
+ * </p>
3147
3346
  */
3148
- StandardsArn: string | undefined;
3347
+ interface IntegerMember {
3348
+ Integer: number;
3349
+ IntegerList?: never;
3350
+ Double?: never;
3351
+ String?: never;
3352
+ StringList?: never;
3353
+ Boolean?: never;
3354
+ Enum?: never;
3355
+ EnumList?: never;
3356
+ $unknown?: never;
3357
+ }
3149
3358
  /**
3150
3359
  * @public
3151
3360
  * <p>
3152
- * The unique identifier of a security control across standards. Values for this field typically consist of an Amazon Web Service
3153
- * name and a number, such as APIGateway.3.
3154
- * </p>
3361
+ * A control parameter that is a list of integers.
3362
+ * </p>
3155
3363
  */
3156
- SecurityControlId: string | undefined;
3364
+ interface IntegerListMember {
3365
+ Integer?: never;
3366
+ IntegerList: number[];
3367
+ Double?: never;
3368
+ String?: never;
3369
+ StringList?: never;
3370
+ Boolean?: never;
3371
+ Enum?: never;
3372
+ EnumList?: never;
3373
+ $unknown?: never;
3374
+ }
3157
3375
  /**
3158
3376
  * @public
3159
- * <p> The ARN of a security control across standards, such as
3160
- * <code>arn:aws:securityhub:eu-central-1:123456789012:security-control/S3.1</code>. This
3161
- * parameter doesn't mention a specific standard. </p>
3377
+ * <p>
3378
+ * A control parameter that is a double.
3379
+ * </p>
3162
3380
  */
3163
- SecurityControlArn: string | undefined;
3381
+ interface DoubleMember {
3382
+ Integer?: never;
3383
+ IntegerList?: never;
3384
+ Double: number;
3385
+ String?: never;
3386
+ StringList?: never;
3387
+ Boolean?: never;
3388
+ Enum?: never;
3389
+ EnumList?: never;
3390
+ $unknown?: never;
3391
+ }
3164
3392
  /**
3165
3393
  * @public
3166
3394
  * <p>
3167
- * Specifies whether a control is enabled or disabled in a specified standard.
3168
- * </p>
3395
+ * A control parameter that is a string.
3396
+ * </p>
3169
3397
  */
3170
- AssociationStatus: AssociationStatus | undefined;
3398
+ interface StringMember {
3399
+ Integer?: never;
3400
+ IntegerList?: never;
3401
+ Double?: never;
3402
+ String: string;
3403
+ StringList?: never;
3404
+ Boolean?: never;
3405
+ Enum?: never;
3406
+ EnumList?: never;
3407
+ $unknown?: never;
3408
+ }
3171
3409
  /**
3172
3410
  * @public
3173
3411
  * <p>
3174
- * The requirement that underlies a control in the compliance framework related to the standard.
3175
- * </p>
3412
+ * A control parameter that is a list of strings.
3413
+ * </p>
3176
3414
  */
3177
- RelatedRequirements?: string[];
3415
+ interface StringListMember {
3416
+ Integer?: never;
3417
+ IntegerList?: never;
3418
+ Double?: never;
3419
+ String?: never;
3420
+ StringList: string[];
3421
+ Boolean?: never;
3422
+ Enum?: never;
3423
+ EnumList?: never;
3424
+ $unknown?: never;
3425
+ }
3178
3426
  /**
3179
3427
  * @public
3180
3428
  * <p>
3181
- * The time at which the enablement status of the control in the specified standard was last updated.
3182
- * </p>
3429
+ * A control parameter that is a boolean.
3430
+ * </p>
3183
3431
  */
3184
- UpdatedAt?: Date;
3432
+ interface BooleanMember {
3433
+ Integer?: never;
3434
+ IntegerList?: never;
3435
+ Double?: never;
3436
+ String?: never;
3437
+ StringList?: never;
3438
+ Boolean: boolean;
3439
+ Enum?: never;
3440
+ EnumList?: never;
3441
+ $unknown?: never;
3442
+ }
3185
3443
  /**
3186
3444
  * @public
3187
3445
  * <p>
3188
- * The reason for updating the enablement status of a control in a specified standard.
3189
- * </p>
3446
+ * A control parameter that is an enum.
3447
+ * </p>
3190
3448
  */
3191
- UpdatedReason?: string;
3449
+ interface EnumMember {
3450
+ Integer?: never;
3451
+ IntegerList?: never;
3452
+ Double?: never;
3453
+ String?: never;
3454
+ StringList?: never;
3455
+ Boolean?: never;
3456
+ Enum: string;
3457
+ EnumList?: never;
3458
+ $unknown?: never;
3459
+ }
3192
3460
  /**
3193
3461
  * @public
3194
3462
  * <p>
3195
- * The title of a control. This field may reference a specific standard.
3196
- * </p>
3463
+ * A control parameter that is a list of enums.
3464
+ * </p>
3197
3465
  */
3198
- StandardsControlTitle?: string;
3466
+ interface EnumListMember {
3467
+ Integer?: never;
3468
+ IntegerList?: never;
3469
+ Double?: never;
3470
+ String?: never;
3471
+ StringList?: never;
3472
+ Boolean?: never;
3473
+ Enum?: never;
3474
+ EnumList: string[];
3475
+ $unknown?: never;
3476
+ }
3477
+ /**
3478
+ * @public
3479
+ */
3480
+ interface $UnknownMember {
3481
+ Integer?: never;
3482
+ IntegerList?: never;
3483
+ Double?: never;
3484
+ String?: never;
3485
+ StringList?: never;
3486
+ Boolean?: never;
3487
+ Enum?: never;
3488
+ EnumList?: never;
3489
+ $unknown: [string, any];
3490
+ }
3491
+ interface Visitor<T> {
3492
+ Integer: (value: number) => T;
3493
+ IntegerList: (value: number[]) => T;
3494
+ Double: (value: number) => T;
3495
+ String: (value: string) => T;
3496
+ StringList: (value: string[]) => T;
3497
+ Boolean: (value: boolean) => T;
3498
+ Enum: (value: string) => T;
3499
+ EnumList: (value: string[]) => T;
3500
+ _: (name: string, value: any) => T;
3501
+ }
3502
+ const visit: <T>(value: ParameterValue, visitor: Visitor<T>) => T;
3503
+ }
3504
+ /**
3505
+ * @public
3506
+ * @enum
3507
+ */
3508
+ export declare const ParameterValueType: {
3509
+ readonly CUSTOM: "CUSTOM";
3510
+ readonly DEFAULT: "DEFAULT";
3511
+ };
3512
+ /**
3513
+ * @public
3514
+ */
3515
+ export type ParameterValueType = (typeof ParameterValueType)[keyof typeof ParameterValueType];
3516
+ /**
3517
+ * @public
3518
+ * <p>
3519
+ * An object that provides the current value of a security control parameter and identifies whether it has been customized.
3520
+ * </p>
3521
+ */
3522
+ export interface ParameterConfiguration {
3199
3523
  /**
3200
3524
  * @public
3201
3525
  * <p>
3202
- * The description of a control. This typically summarizes how Security Hub evaluates the control and the
3203
- * conditions under which it produces a failed finding. This parameter may reference a specific standard.
3204
- * </p>
3526
+ * Identifies whether a control parameter uses a custom user-defined value or the Security Hub default value.
3527
+ * </p>
3205
3528
  */
3206
- StandardsControlDescription?: string;
3529
+ ValueType: ParameterValueType | undefined;
3207
3530
  /**
3208
3531
  * @public
3209
- * <p> Provides the input parameter that Security Hub uses to call the <a href="https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_UpdateStandardsControl.html">UpdateStandardsControl</a> API. This API can be used to enable or disable a control
3210
- * in a specified standard. </p>
3532
+ * <p>
3533
+ * The current value of a control parameter.
3534
+ * </p>
3211
3535
  */
3212
- StandardsControlArns?: string[];
3536
+ Value?: ParameterValue;
3213
3537
  }
3214
3538
  /**
3215
3539
  * @public
3216
- * <p> Provides details about which
3217
- * control's enablement status couldn't be retrieved in a specified standard when calling <a href="https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_BatchUpdateStandardsControlAssociations.html">BatchUpdateStandardsControlAssociations</a>. This parameter also provides details
3218
- * about why the request was unprocessed. </p>
3540
+ * @enum
3219
3541
  */
3220
- export interface UnprocessedStandardsControlAssociation {
3542
+ export declare const ControlStatus: {
3543
+ readonly DISABLED: "DISABLED";
3544
+ readonly ENABLED: "ENABLED";
3545
+ };
3546
+ /**
3547
+ * @public
3548
+ */
3549
+ export type ControlStatus = (typeof ControlStatus)[keyof typeof ControlStatus];
3550
+ /**
3551
+ * @public
3552
+ * @enum
3553
+ */
3554
+ export declare const SeverityRating: {
3555
+ readonly CRITICAL: "CRITICAL";
3556
+ readonly HIGH: "HIGH";
3557
+ readonly LOW: "LOW";
3558
+ readonly MEDIUM: "MEDIUM";
3559
+ };
3560
+ /**
3561
+ * @public
3562
+ */
3563
+ export type SeverityRating = (typeof SeverityRating)[keyof typeof SeverityRating];
3564
+ /**
3565
+ * @public
3566
+ * @enum
3567
+ */
3568
+ export declare const UpdateStatus: {
3569
+ readonly READY: "READY";
3570
+ readonly UPDATING: "UPDATING";
3571
+ };
3572
+ /**
3573
+ * @public
3574
+ */
3575
+ export type UpdateStatus = (typeof UpdateStatus)[keyof typeof UpdateStatus];
3576
+ /**
3577
+ * @public
3578
+ * <p>
3579
+ * A security control in Security Hub describes a security best practice related to a specific resource.
3580
+ * </p>
3581
+ */
3582
+ export interface SecurityControl {
3221
3583
  /**
3222
3584
  * @public
3223
- * <p> An array with one or more objects that includes a security control (identified with
3224
- * <code>SecurityControlId</code>, <code>SecurityControlArn</code>, or a mix of both
3225
- * parameters) and the Amazon Resource Name (ARN) of a standard. This parameter shows the
3226
- * specific controls for which the enablement status couldn't be retrieved in specified standards when
3227
- * calling <a href="https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_BatchUpdateStandardsControlAssociations.html">BatchUpdateStandardsControlAssociations</a>. </p>
3585
+ * <p>
3586
+ * The unique identifier of a security control across standards. Values for this field typically consist of an Amazon Web Service name and a
3587
+ * number, such as APIGateway.3.
3588
+ * </p>
3228
3589
  */
3229
- StandardsControlAssociationId: StandardsControlAssociationId | undefined;
3590
+ SecurityControlId: string | undefined;
3230
3591
  /**
3231
3592
  * @public
3232
- * <p>The error code for the unprocessed standard and control association.
3593
+ * <p> The Amazon Resource Name (ARN) for a security control across standards, such as
3594
+ * <code>arn:aws:securityhub:eu-central-1:123456789012:security-control/S3.1</code>. This
3595
+ * parameter doesn't mention a specific standard. </p>
3596
+ */
3597
+ SecurityControlArn: string | undefined;
3598
+ /**
3599
+ * @public
3600
+ * <p>The title of a security control.
3233
3601
  * </p>
3234
3602
  */
3235
- ErrorCode: UnprocessedErrorCode | undefined;
3603
+ Title: string | undefined;
3236
3604
  /**
3237
3605
  * @public
3238
- * <p>The reason why the standard and control association was unprocessed. </p>
3606
+ * <p> The description of a security control across standards. This typically summarizes how
3607
+ * Security Hub evaluates the control and the conditions under which it produces a
3608
+ * failed finding. This parameter doesn't reference a specific standard. </p>
3239
3609
  */
3240
- ErrorReason?: string;
3241
- }
3242
- /**
3243
- * @public
3244
- */
3245
- export interface BatchGetStandardsControlAssociationsResponse {
3610
+ Description: string | undefined;
3246
3611
  /**
3247
3612
  * @public
3248
- * <p>Provides the enablement status of a security control in a specified standard and other details for the control in relation to
3249
- * the specified standard.
3613
+ * <p>
3614
+ * A link to Security Hub documentation that explains how to remediate a failed finding for a security control.
3250
3615
  * </p>
3251
3616
  */
3252
- StandardsControlAssociationDetails: StandardsControlAssociationDetail[] | undefined;
3617
+ RemediationUrl: string | undefined;
3253
3618
  /**
3254
3619
  * @public
3255
3620
  * <p>
3256
- * A security control (identified with <code>SecurityControlId</code>, <code>SecurityControlArn</code>, or a mix of both parameters) whose enablement
3257
- * status in a specified standard cannot be returned.
3621
+ * The severity of a security control. For more information about how Security Hub determines control severity, see
3622
+ * <a href="https://docs.aws.amazon.com/securityhub/latest/userguide/controls-findings-create-update.html#control-findings-severity">Assigning severity to control findings</a> in the
3623
+ * <i>Security Hub User Guide</i>.
3258
3624
  * </p>
3259
3625
  */
3260
- UnprocessedAssociations?: UnprocessedStandardsControlAssociation[];
3261
- }
3262
- /**
3263
- * @public
3264
- */
3265
- export interface BatchImportFindingsRequest {
3626
+ SeverityRating: SeverityRating | undefined;
3266
3627
  /**
3267
3628
  * @public
3268
- * <p>A list of findings to import. To successfully import a finding, it must follow the
3269
- * <a href="https://docs.aws.amazon.com/securityhub/latest/userguide/securityhub-findings-format.html">Amazon Web Services Security Finding Format</a>. Maximum of 100 findings per request.</p>
3629
+ * <p>
3630
+ * The enablement status of a security control in a specific standard.
3631
+ * </p>
3270
3632
  */
3271
- Findings: AwsSecurityFinding[] | undefined;
3272
- }
3273
- /**
3274
- * @public
3275
- * <p>The list of the findings that cannot be imported. For each finding, the list provides
3276
- * the error.</p>
3277
- */
3278
- export interface ImportFindingsError {
3633
+ SecurityControlStatus: ControlStatus | undefined;
3279
3634
  /**
3280
3635
  * @public
3281
- * <p>The identifier of the finding that could not be updated.</p>
3636
+ * <p>
3637
+ * Identifies whether customizable properties of a security control are reflected in Security Hub findings. A status of
3638
+ * <code>READY</code> indicates findings include the current parameter values. A status of <code>UPDATING</code> indicates that
3639
+ * all findings may not include the current parameter values.
3640
+ * </p>
3282
3641
  */
3283
- Id: string | undefined;
3642
+ UpdateStatus?: UpdateStatus;
3284
3643
  /**
3285
3644
  * @public
3286
- * <p>The code of the error returned by the <code>BatchImportFindings</code> operation.</p>
3645
+ * <p>
3646
+ * An object that identifies the name of a control parameter, its current value, and whether it has been customized.
3647
+ * </p>
3287
3648
  */
3288
- ErrorCode: string | undefined;
3649
+ Parameters?: Record<string, ParameterConfiguration>;
3289
3650
  /**
3290
3651
  * @public
3291
- * <p>The message of the error returned by the <code>BatchImportFindings</code>
3292
- * operation.</p>
3652
+ * <p>
3653
+ * The most recent reason for updating the customizable properties of a security control. This differs from the
3654
+ * <code>UpdateReason</code> field of the <a href="https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_BatchUpdateStandardsControlAssociations.html">
3655
+ * <code>BatchUpdateStandardsControlAssociations</code>
3656
+ * </a> API, which tracks the
3657
+ * reason for updating the enablement status of a control. This field accepts alphanumeric
3658
+ * characters in addition to white spaces, dashes, and underscores.
3659
+ * </p>
3293
3660
  */
3294
- ErrorMessage: string | undefined;
3661
+ LastUpdateReason?: string;
3295
3662
  }
3296
3663
  /**
3297
3664
  * @public
3665
+ * @enum
3298
3666
  */
3299
- export interface BatchImportFindingsResponse {
3667
+ export declare const UnprocessedErrorCode: {
3668
+ readonly ACCESS_DENIED: "ACCESS_DENIED";
3669
+ readonly INVALID_INPUT: "INVALID_INPUT";
3670
+ readonly LIMIT_EXCEEDED: "LIMIT_EXCEEDED";
3671
+ readonly NOT_FOUND: "NOT_FOUND";
3672
+ };
3673
+ /**
3674
+ * @public
3675
+ */
3676
+ export type UnprocessedErrorCode = (typeof UnprocessedErrorCode)[keyof typeof UnprocessedErrorCode];
3677
+ /**
3678
+ * @public
3679
+ * <p> Provides details about a security control for which a response couldn't be returned. </p>
3680
+ */
3681
+ export interface UnprocessedSecurityControl {
3300
3682
  /**
3301
3683
  * @public
3302
- * <p>The number of findings that failed to import.</p>
3684
+ * <p> The control (identified with <code>SecurityControlId</code>,
3685
+ * <code>SecurityControlArn</code>, or a mix of both parameters) for which a response
3686
+ * couldn't be returned. </p>
3303
3687
  */
3304
- FailedCount: number | undefined;
3688
+ SecurityControlId: string | undefined;
3305
3689
  /**
3306
3690
  * @public
3307
- * <p>The number of findings that were successfully imported.</p>
3691
+ * <p>
3692
+ * The error code for the unprocessed security control.
3693
+ * </p>
3308
3694
  */
3309
- SuccessCount: number | undefined;
3695
+ ErrorCode: UnprocessedErrorCode | undefined;
3310
3696
  /**
3311
3697
  * @public
3312
- * <p>The list of findings that failed to import.</p>
3698
+ * <p>
3699
+ * The reason why the security control was unprocessed.
3700
+ * </p>
3313
3701
  */
3314
- FailedFindings?: ImportFindingsError[];
3702
+ ErrorReason?: string;
3315
3703
  }
3316
3704
  /**
3317
3705
  * @public
3318
- * <p>
3319
- * Specifies the parameters to update in an existing automation rule.
3320
- * </p>
3321
3706
  */
3322
- export interface UpdateAutomationRulesRequestItem {
3707
+ export interface BatchGetSecurityControlsResponse {
3323
3708
  /**
3324
3709
  * @public
3325
3710
  * <p>
3326
- * The Amazon Resource Name (ARN) for the rule.
3711
+ * An array that returns the identifier, Amazon Resource Name (ARN), and other details about a security control.
3712
+ * The same information is returned whether the request includes <code>SecurityControlId</code> or <code>SecurityControlArn</code>.
3327
3713
  * </p>
3328
3714
  */
3329
- RuleArn: string | undefined;
3715
+ SecurityControls: SecurityControl[] | undefined;
3330
3716
  /**
3331
3717
  * @public
3332
3718
  * <p>
3333
- * Whether the rule is active after it is created. If
3334
- * this parameter is equal to <code>ENABLED</code>, Security Hub starts applying the rule to findings
3335
- * and finding updates after the rule is created. To change the value of this
3719
+ * A security control (identified with <code>SecurityControlId</code>, <code>SecurityControlArn</code>, or a mix of both parameters) for which
3720
+ * details cannot be returned.
3721
+ * </p>
3722
+ */
3723
+ UnprocessedIds?: UnprocessedSecurityControl[];
3724
+ }
3725
+ /**
3726
+ * @public
3727
+ * <p>
3728
+ * An array with one or more objects that includes a security control (identified with <code>SecurityControlId</code>, <code>SecurityControlArn</code>, or a mix of both parameters)
3729
+ * and the Amazon Resource Name (ARN) of a standard. The security control ID or ARN is the same across standards.
3730
+ * </p>
3731
+ */
3732
+ export interface StandardsControlAssociationId {
3733
+ /**
3734
+ * @public
3735
+ * <p>
3736
+ * The unique identifier (identified with <code>SecurityControlId</code>, <code>SecurityControlArn</code>, or a mix of both parameters) of a security
3737
+ * control across standards.
3738
+ * </p>
3739
+ */
3740
+ SecurityControlId: string | undefined;
3741
+ /**
3742
+ * @public
3743
+ * <p>
3744
+ * The ARN of a standard.
3745
+ * </p>
3746
+ */
3747
+ StandardsArn: string | undefined;
3748
+ }
3749
+ /**
3750
+ * @public
3751
+ */
3752
+ export interface BatchGetStandardsControlAssociationsRequest {
3753
+ /**
3754
+ * @public
3755
+ * <p>
3756
+ * An array with one or more objects that includes a security control (identified with <code>SecurityControlId</code>, <code>SecurityControlArn</code>, or a mix of both parameters) and the Amazon Resource Name (ARN) of a standard.
3757
+ * This field is used to query the enablement status of a control in a specified standard. The security control ID or ARN is the same across standards.
3758
+ * </p>
3759
+ */
3760
+ StandardsControlAssociationIds: StandardsControlAssociationId[] | undefined;
3761
+ }
3762
+ /**
3763
+ * @public
3764
+ * <p> Provides details about a control's enablement status in a specified standard. </p>
3765
+ */
3766
+ export interface StandardsControlAssociationDetail {
3767
+ /**
3768
+ * @public
3769
+ * <p>
3770
+ * The Amazon Resource Name (ARN) of a security standard.
3771
+ * </p>
3772
+ */
3773
+ StandardsArn: string | undefined;
3774
+ /**
3775
+ * @public
3776
+ * <p>
3777
+ * The unique identifier of a security control across standards. Values for this field typically consist of an Amazon Web Service
3778
+ * name and a number, such as APIGateway.3.
3779
+ * </p>
3780
+ */
3781
+ SecurityControlId: string | undefined;
3782
+ /**
3783
+ * @public
3784
+ * <p> The ARN of a security control across standards, such as
3785
+ * <code>arn:aws:securityhub:eu-central-1:123456789012:security-control/S3.1</code>. This
3786
+ * parameter doesn't mention a specific standard. </p>
3787
+ */
3788
+ SecurityControlArn: string | undefined;
3789
+ /**
3790
+ * @public
3791
+ * <p>
3792
+ * Specifies whether a control is enabled or disabled in a specified standard.
3793
+ * </p>
3794
+ */
3795
+ AssociationStatus: AssociationStatus | undefined;
3796
+ /**
3797
+ * @public
3798
+ * <p>
3799
+ * The requirement that underlies a control in the compliance framework related to the standard.
3800
+ * </p>
3801
+ */
3802
+ RelatedRequirements?: string[];
3803
+ /**
3804
+ * @public
3805
+ * <p>
3806
+ * The time at which the enablement status of the control in the specified standard was last updated.
3807
+ * </p>
3808
+ */
3809
+ UpdatedAt?: Date;
3810
+ /**
3811
+ * @public
3812
+ * <p>
3813
+ * The reason for updating the enablement status of a control in a specified standard.
3814
+ * </p>
3815
+ */
3816
+ UpdatedReason?: string;
3817
+ /**
3818
+ * @public
3819
+ * <p>
3820
+ * The title of a control. This field may reference a specific standard.
3821
+ * </p>
3822
+ */
3823
+ StandardsControlTitle?: string;
3824
+ /**
3825
+ * @public
3826
+ * <p>
3827
+ * The description of a control. This typically summarizes how Security Hub evaluates the control and the
3828
+ * conditions under which it produces a failed finding. This parameter may reference a specific standard.
3829
+ * </p>
3830
+ */
3831
+ StandardsControlDescription?: string;
3832
+ /**
3833
+ * @public
3834
+ * <p> Provides the input parameter that Security Hub uses to call the <a href="https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_UpdateStandardsControl.html">UpdateStandardsControl</a> API. This API can be used to enable or disable a control
3835
+ * in a specified standard. </p>
3836
+ */
3837
+ StandardsControlArns?: string[];
3838
+ }
3839
+ /**
3840
+ * @public
3841
+ * <p> Provides details about which
3842
+ * control's enablement status couldn't be retrieved in a specified standard when calling <a href="https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_BatchUpdateStandardsControlAssociations.html">BatchUpdateStandardsControlAssociations</a>. This parameter also provides details
3843
+ * about why the request was unprocessed. </p>
3844
+ */
3845
+ export interface UnprocessedStandardsControlAssociation {
3846
+ /**
3847
+ * @public
3848
+ * <p> An array with one or more objects that includes a security control (identified with
3849
+ * <code>SecurityControlId</code>, <code>SecurityControlArn</code>, or a mix of both
3850
+ * parameters) and the Amazon Resource Name (ARN) of a standard. This parameter shows the
3851
+ * specific controls for which the enablement status couldn't be retrieved in specified standards when
3852
+ * calling <a href="https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_BatchUpdateStandardsControlAssociations.html">BatchUpdateStandardsControlAssociations</a>. </p>
3853
+ */
3854
+ StandardsControlAssociationId: StandardsControlAssociationId | undefined;
3855
+ /**
3856
+ * @public
3857
+ * <p>The error code for the unprocessed standard and control association.
3858
+ * </p>
3859
+ */
3860
+ ErrorCode: UnprocessedErrorCode | undefined;
3861
+ /**
3862
+ * @public
3863
+ * <p>The reason why the standard and control association was unprocessed. </p>
3864
+ */
3865
+ ErrorReason?: string;
3866
+ }
3867
+ /**
3868
+ * @public
3869
+ */
3870
+ export interface BatchGetStandardsControlAssociationsResponse {
3871
+ /**
3872
+ * @public
3873
+ * <p>Provides the enablement status of a security control in a specified standard and other details for the control in relation to
3874
+ * the specified standard.
3875
+ * </p>
3876
+ */
3877
+ StandardsControlAssociationDetails: StandardsControlAssociationDetail[] | undefined;
3878
+ /**
3879
+ * @public
3880
+ * <p>
3881
+ * A security control (identified with <code>SecurityControlId</code>, <code>SecurityControlArn</code>, or a mix of both parameters) whose enablement
3882
+ * status in a specified standard cannot be returned.
3883
+ * </p>
3884
+ */
3885
+ UnprocessedAssociations?: UnprocessedStandardsControlAssociation[];
3886
+ }
3887
+ /**
3888
+ * @public
3889
+ */
3890
+ export interface BatchImportFindingsRequest {
3891
+ /**
3892
+ * @public
3893
+ * <p>A list of findings to import. To successfully import a finding, it must follow the
3894
+ * <a href="https://docs.aws.amazon.com/securityhub/latest/userguide/securityhub-findings-format.html">Amazon Web Services Security Finding Format</a>. Maximum of 100 findings per request.</p>
3895
+ */
3896
+ Findings: AwsSecurityFinding[] | undefined;
3897
+ }
3898
+ /**
3899
+ * @public
3900
+ * <p>The list of the findings that cannot be imported. For each finding, the list provides
3901
+ * the error.</p>
3902
+ */
3903
+ export interface ImportFindingsError {
3904
+ /**
3905
+ * @public
3906
+ * <p>The identifier of the finding that could not be updated.</p>
3907
+ */
3908
+ Id: string | undefined;
3909
+ /**
3910
+ * @public
3911
+ * <p>The code of the error returned by the <code>BatchImportFindings</code> operation.</p>
3912
+ */
3913
+ ErrorCode: string | undefined;
3914
+ /**
3915
+ * @public
3916
+ * <p>The message of the error returned by the <code>BatchImportFindings</code>
3917
+ * operation.</p>
3918
+ */
3919
+ ErrorMessage: string | undefined;
3920
+ }
3921
+ /**
3922
+ * @public
3923
+ */
3924
+ export interface BatchImportFindingsResponse {
3925
+ /**
3926
+ * @public
3927
+ * <p>The number of findings that failed to import.</p>
3928
+ */
3929
+ FailedCount: number | undefined;
3930
+ /**
3931
+ * @public
3932
+ * <p>The number of findings that were successfully imported.</p>
3933
+ */
3934
+ SuccessCount: number | undefined;
3935
+ /**
3936
+ * @public
3937
+ * <p>The list of findings that failed to import.</p>
3938
+ */
3939
+ FailedFindings?: ImportFindingsError[];
3940
+ }
3941
+ /**
3942
+ * @public
3943
+ * <p>
3944
+ * Specifies the parameters to update in an existing automation rule.
3945
+ * </p>
3946
+ */
3947
+ export interface UpdateAutomationRulesRequestItem {
3948
+ /**
3949
+ * @public
3950
+ * <p>
3951
+ * The Amazon Resource Name (ARN) for the rule.
3952
+ * </p>
3953
+ */
3954
+ RuleArn: string | undefined;
3955
+ /**
3956
+ * @public
3957
+ * <p>
3958
+ * Whether the rule is active after it is created. If
3959
+ * this parameter is equal to <code>ENABLED</code>, Security Hub starts applying the rule to findings
3960
+ * and finding updates after the rule is created. To change the value of this
3336
3961
  * parameter after creating a rule, use <a href="https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_BatchUpdateAutomationRules.html">
3337
3962
  * <code>BatchUpdateAutomationRules</code>
3338
3963
  * </a>.
@@ -3708,15 +4333,468 @@ export interface BatchUpdateStandardsControlAssociationsResponse {
3708
4333
  }
3709
4334
  /**
3710
4335
  * @public
3711
- * @enum
4336
+ * <p>
4337
+ * The options for customizing a security control parameter with a boolean. For a boolean parameter, the options are
4338
+ * <code>true</code> and <code>false</code>.
4339
+ * </p>
3712
4340
  */
3713
- export declare const ControlFindingGenerator: {
3714
- readonly SECURITY_CONTROL: "SECURITY_CONTROL";
3715
- readonly STANDARD_CONTROL: "STANDARD_CONTROL";
3716
- };
4341
+ export interface BooleanConfigurationOptions {
4342
+ /**
4343
+ * @public
4344
+ * <p>
4345
+ * The Security Hub default value for a boolean parameter.
4346
+ * </p>
4347
+ */
4348
+ DefaultValue?: boolean;
4349
+ }
3717
4350
  /**
3718
4351
  * @public
3719
- */
4352
+ * <p>
4353
+ * The options for customizing a security control parameter that is a double.
4354
+ * </p>
4355
+ */
4356
+ export interface DoubleConfigurationOptions {
4357
+ /**
4358
+ * @public
4359
+ * <p>
4360
+ * The Security Hub default value for a control parameter that is a double.
4361
+ * </p>
4362
+ */
4363
+ DefaultValue?: number;
4364
+ /**
4365
+ * @public
4366
+ * <p>
4367
+ * The minimum valid value for a control parameter that is a double.
4368
+ * </p>
4369
+ */
4370
+ Min?: number;
4371
+ /**
4372
+ * @public
4373
+ * <p>
4374
+ * The maximum valid value for a control parameter that is a double.
4375
+ * </p>
4376
+ */
4377
+ Max?: number;
4378
+ }
4379
+ /**
4380
+ * @public
4381
+ * <p>
4382
+ * The options for customizing a security control parameter that is an enum.
4383
+ * </p>
4384
+ */
4385
+ export interface EnumConfigurationOptions {
4386
+ /**
4387
+ * @public
4388
+ * <p>
4389
+ * The Security Hub default value for a control parameter that is an enum.
4390
+ * </p>
4391
+ */
4392
+ DefaultValue?: string;
4393
+ /**
4394
+ * @public
4395
+ * <p>
4396
+ * The valid values for a control parameter that is an enum.
4397
+ * </p>
4398
+ */
4399
+ AllowedValues?: string[];
4400
+ }
4401
+ /**
4402
+ * @public
4403
+ * <p>
4404
+ * The options for customizing a security control parameter that is a list of enums.
4405
+ * </p>
4406
+ */
4407
+ export interface EnumListConfigurationOptions {
4408
+ /**
4409
+ * @public
4410
+ * <p>
4411
+ * The Security Hub default value for a control parameter that is a list of enums.
4412
+ * </p>
4413
+ */
4414
+ DefaultValue?: string[];
4415
+ /**
4416
+ * @public
4417
+ * <p>
4418
+ * The maximum number of list items that an enum list control parameter can accept.
4419
+ * </p>
4420
+ */
4421
+ MaxItems?: number;
4422
+ /**
4423
+ * @public
4424
+ * <p>
4425
+ * The valid values for a control parameter that is a list of enums.
4426
+ * </p>
4427
+ */
4428
+ AllowedValues?: string[];
4429
+ }
4430
+ /**
4431
+ * @public
4432
+ * <p>
4433
+ * The options for customizing a security control parameter that is an integer.
4434
+ * </p>
4435
+ */
4436
+ export interface IntegerConfigurationOptions {
4437
+ /**
4438
+ * @public
4439
+ * <p>
4440
+ * The Security Hub default value for a control parameter that is an integer.
4441
+ * </p>
4442
+ */
4443
+ DefaultValue?: number;
4444
+ /**
4445
+ * @public
4446
+ * <p>
4447
+ * The minimum valid value for a control parameter that is an integer.
4448
+ * </p>
4449
+ */
4450
+ Min?: number;
4451
+ /**
4452
+ * @public
4453
+ * <p>
4454
+ * The maximum valid value for a control parameter that is an integer.
4455
+ * </p>
4456
+ */
4457
+ Max?: number;
4458
+ }
4459
+ /**
4460
+ * @public
4461
+ * <p>
4462
+ * The options for customizing a security control parameter that is a list of integers.
4463
+ * </p>
4464
+ */
4465
+ export interface IntegerListConfigurationOptions {
4466
+ /**
4467
+ * @public
4468
+ * <p>
4469
+ * The Security Hub default value for a control parameter that is a list of integers.
4470
+ * </p>
4471
+ */
4472
+ DefaultValue?: number[];
4473
+ /**
4474
+ * @public
4475
+ * <p>
4476
+ * The minimum valid value for a control parameter that is a list of integers.
4477
+ * </p>
4478
+ */
4479
+ Min?: number;
4480
+ /**
4481
+ * @public
4482
+ * <p>
4483
+ * The maximum valid value for a control parameter that is a list of integers.
4484
+ * </p>
4485
+ */
4486
+ Max?: number;
4487
+ /**
4488
+ * @public
4489
+ * <p>
4490
+ * The maximum number of list items that an interger list control parameter can accept.
4491
+ * </p>
4492
+ */
4493
+ MaxItems?: number;
4494
+ }
4495
+ /**
4496
+ * @public
4497
+ * <p>
4498
+ * The options for customizing a security control parameter that is a string.
4499
+ * </p>
4500
+ */
4501
+ export interface StringConfigurationOptions {
4502
+ /**
4503
+ * @public
4504
+ * <p>
4505
+ * The Security Hub default value for a control parameter that is a string.
4506
+ * </p>
4507
+ */
4508
+ DefaultValue?: string;
4509
+ /**
4510
+ * @public
4511
+ * <p>
4512
+ * An RE2 regular expression that Security Hub uses to validate a user-provided control parameter string.
4513
+ * </p>
4514
+ */
4515
+ Re2Expression?: string;
4516
+ /**
4517
+ * @public
4518
+ * <p>
4519
+ * The description of the RE2 regular expression.
4520
+ * </p>
4521
+ */
4522
+ ExpressionDescription?: string;
4523
+ }
4524
+ /**
4525
+ * @public
4526
+ * <p>
4527
+ * The options for customizing a security control parameter that is a list of strings.
4528
+ * </p>
4529
+ */
4530
+ export interface StringListConfigurationOptions {
4531
+ /**
4532
+ * @public
4533
+ * <p>
4534
+ * The Security Hub default value for a control parameter that is a list of strings.
4535
+ * </p>
4536
+ */
4537
+ DefaultValue?: string[];
4538
+ /**
4539
+ * @public
4540
+ * <p>
4541
+ * An RE2 regular expression that Security Hub uses to validate a user-provided list of strings for a control
4542
+ * parameter.
4543
+ * </p>
4544
+ */
4545
+ Re2Expression?: string;
4546
+ /**
4547
+ * @public
4548
+ * <p>
4549
+ * The maximum number of list items that a string list control parameter can accept.
4550
+ * </p>
4551
+ */
4552
+ MaxItems?: number;
4553
+ /**
4554
+ * @public
4555
+ * <p>
4556
+ * The description of the RE2 regular expression.
4557
+ * </p>
4558
+ */
4559
+ ExpressionDescription?: string;
4560
+ }
4561
+ /**
4562
+ * @public
4563
+ * <p>
4564
+ * The options for customizing a security control parameter.
4565
+ * </p>
4566
+ */
4567
+ export type ConfigurationOptions = ConfigurationOptions.BooleanMember | ConfigurationOptions.DoubleMember | ConfigurationOptions.EnumMember | ConfigurationOptions.EnumListMember | ConfigurationOptions.IntegerMember | ConfigurationOptions.IntegerListMember | ConfigurationOptions.StringMember | ConfigurationOptions.StringListMember | ConfigurationOptions.$UnknownMember;
4568
+ /**
4569
+ * @public
4570
+ */
4571
+ export declare namespace ConfigurationOptions {
4572
+ /**
4573
+ * @public
4574
+ * <p>
4575
+ * The options for customizing a security control parameter that is an integer.
4576
+ * </p>
4577
+ */
4578
+ interface IntegerMember {
4579
+ Integer: IntegerConfigurationOptions;
4580
+ IntegerList?: never;
4581
+ Double?: never;
4582
+ String?: never;
4583
+ StringList?: never;
4584
+ Boolean?: never;
4585
+ Enum?: never;
4586
+ EnumList?: never;
4587
+ $unknown?: never;
4588
+ }
4589
+ /**
4590
+ * @public
4591
+ * <p>
4592
+ * The options for customizing a security control parameter that is a list of integers.
4593
+ * </p>
4594
+ */
4595
+ interface IntegerListMember {
4596
+ Integer?: never;
4597
+ IntegerList: IntegerListConfigurationOptions;
4598
+ Double?: never;
4599
+ String?: never;
4600
+ StringList?: never;
4601
+ Boolean?: never;
4602
+ Enum?: never;
4603
+ EnumList?: never;
4604
+ $unknown?: never;
4605
+ }
4606
+ /**
4607
+ * @public
4608
+ * <p>
4609
+ * The options for customizing a security control parameter that is a double.
4610
+ * </p>
4611
+ */
4612
+ interface DoubleMember {
4613
+ Integer?: never;
4614
+ IntegerList?: never;
4615
+ Double: DoubleConfigurationOptions;
4616
+ String?: never;
4617
+ StringList?: never;
4618
+ Boolean?: never;
4619
+ Enum?: never;
4620
+ EnumList?: never;
4621
+ $unknown?: never;
4622
+ }
4623
+ /**
4624
+ * @public
4625
+ * <p>
4626
+ * The options for customizing a security control parameter that is a string data type.
4627
+ * </p>
4628
+ */
4629
+ interface StringMember {
4630
+ Integer?: never;
4631
+ IntegerList?: never;
4632
+ Double?: never;
4633
+ String: StringConfigurationOptions;
4634
+ StringList?: never;
4635
+ Boolean?: never;
4636
+ Enum?: never;
4637
+ EnumList?: never;
4638
+ $unknown?: never;
4639
+ }
4640
+ /**
4641
+ * @public
4642
+ * <p>
4643
+ * The options for customizing a security control parameter that is a list of strings.
4644
+ * </p>
4645
+ */
4646
+ interface StringListMember {
4647
+ Integer?: never;
4648
+ IntegerList?: never;
4649
+ Double?: never;
4650
+ String?: never;
4651
+ StringList: StringListConfigurationOptions;
4652
+ Boolean?: never;
4653
+ Enum?: never;
4654
+ EnumList?: never;
4655
+ $unknown?: never;
4656
+ }
4657
+ /**
4658
+ * @public
4659
+ * <p>
4660
+ * The options for customizing a security control parameter that is a boolean. For a boolean parameter, the options are
4661
+ * <code>true</code> and <code>false</code>.
4662
+ * </p>
4663
+ */
4664
+ interface BooleanMember {
4665
+ Integer?: never;
4666
+ IntegerList?: never;
4667
+ Double?: never;
4668
+ String?: never;
4669
+ StringList?: never;
4670
+ Boolean: BooleanConfigurationOptions;
4671
+ Enum?: never;
4672
+ EnumList?: never;
4673
+ $unknown?: never;
4674
+ }
4675
+ /**
4676
+ * @public
4677
+ * <p>
4678
+ * The options for customizing a security control parameter that is an enum.
4679
+ * </p>
4680
+ */
4681
+ interface EnumMember {
4682
+ Integer?: never;
4683
+ IntegerList?: never;
4684
+ Double?: never;
4685
+ String?: never;
4686
+ StringList?: never;
4687
+ Boolean?: never;
4688
+ Enum: EnumConfigurationOptions;
4689
+ EnumList?: never;
4690
+ $unknown?: never;
4691
+ }
4692
+ /**
4693
+ * @public
4694
+ * <p>
4695
+ * The options for customizing a security control parameter that is a list of enums.
4696
+ * </p>
4697
+ */
4698
+ interface EnumListMember {
4699
+ Integer?: never;
4700
+ IntegerList?: never;
4701
+ Double?: never;
4702
+ String?: never;
4703
+ StringList?: never;
4704
+ Boolean?: never;
4705
+ Enum?: never;
4706
+ EnumList: EnumListConfigurationOptions;
4707
+ $unknown?: never;
4708
+ }
4709
+ /**
4710
+ * @public
4711
+ */
4712
+ interface $UnknownMember {
4713
+ Integer?: never;
4714
+ IntegerList?: never;
4715
+ Double?: never;
4716
+ String?: never;
4717
+ StringList?: never;
4718
+ Boolean?: never;
4719
+ Enum?: never;
4720
+ EnumList?: never;
4721
+ $unknown: [string, any];
4722
+ }
4723
+ interface Visitor<T> {
4724
+ Integer: (value: IntegerConfigurationOptions) => T;
4725
+ IntegerList: (value: IntegerListConfigurationOptions) => T;
4726
+ Double: (value: DoubleConfigurationOptions) => T;
4727
+ String: (value: StringConfigurationOptions) => T;
4728
+ StringList: (value: StringListConfigurationOptions) => T;
4729
+ Boolean: (value: BooleanConfigurationOptions) => T;
4730
+ Enum: (value: EnumConfigurationOptions) => T;
4731
+ EnumList: (value: EnumListConfigurationOptions) => T;
4732
+ _: (name: string, value: any) => T;
4733
+ }
4734
+ const visit: <T>(value: ConfigurationOptions, visitor: Visitor<T>) => T;
4735
+ }
4736
+ /**
4737
+ * @public
4738
+ * <p>
4739
+ * An object that contains the details of an Security Hub configuration policy that’s returned in a
4740
+ * <code>ListConfigurationPolicies</code> request.
4741
+ * </p>
4742
+ */
4743
+ export interface ConfigurationPolicySummary {
4744
+ /**
4745
+ * @public
4746
+ * <p>
4747
+ * The Amazon Resource Name (ARN) of the configuration policy.
4748
+ * </p>
4749
+ */
4750
+ Arn?: string;
4751
+ /**
4752
+ * @public
4753
+ * <p>
4754
+ * The universally unique identifier (UUID) of the configuration policy.
4755
+ * </p>
4756
+ */
4757
+ Id?: string;
4758
+ /**
4759
+ * @public
4760
+ * <p>
4761
+ * The name of the configuration policy.
4762
+ * </p>
4763
+ */
4764
+ Name?: string;
4765
+ /**
4766
+ * @public
4767
+ * <p>
4768
+ * The description of the configuration policy.
4769
+ * </p>
4770
+ */
4771
+ Description?: string;
4772
+ /**
4773
+ * @public
4774
+ * <p>
4775
+ * The date and time, in UTC and ISO 8601 format, that the configuration policy was last updated.
4776
+ * </p>
4777
+ */
4778
+ UpdatedAt?: Date;
4779
+ /**
4780
+ * @public
4781
+ * <p>
4782
+ * Indicates whether the service that the configuration policy applies to is enabled in the policy.
4783
+ * </p>
4784
+ */
4785
+ ServiceEnabled?: boolean;
4786
+ }
4787
+ /**
4788
+ * @public
4789
+ * @enum
4790
+ */
4791
+ export declare const ControlFindingGenerator: {
4792
+ readonly SECURITY_CONTROL: "SECURITY_CONTROL";
4793
+ readonly STANDARD_CONTROL: "STANDARD_CONTROL";
4794
+ };
4795
+ /**
4796
+ * @public
4797
+ */
3720
4798
  export type ControlFindingGenerator = (typeof ControlFindingGenerator)[keyof typeof ControlFindingGenerator];
3721
4799
  /**
3722
4800
  * @public
@@ -3744,105 +4822,330 @@ export interface CreateActionTargetRequest {
3744
4822
  export interface CreateActionTargetResponse {
3745
4823
  /**
3746
4824
  * @public
3747
- * <p>The Amazon Resource Name (ARN) for the custom action target.</p>
4825
+ * <p>The Amazon Resource Name (ARN) for the custom action target.</p>
4826
+ */
4827
+ ActionTargetArn: string | undefined;
4828
+ }
4829
+ /**
4830
+ * @public
4831
+ * <p>The resource specified in the request conflicts with an existing resource.</p>
4832
+ */
4833
+ export declare class ResourceConflictException extends __BaseException {
4834
+ readonly name: "ResourceConflictException";
4835
+ readonly $fault: "client";
4836
+ Message?: string;
4837
+ Code?: string;
4838
+ /**
4839
+ * @internal
4840
+ */
4841
+ constructor(opts: __ExceptionOptionType<ResourceConflictException, __BaseException>);
4842
+ }
4843
+ /**
4844
+ * @public
4845
+ */
4846
+ export interface CreateAutomationRuleRequest {
4847
+ /**
4848
+ * @public
4849
+ * <p>
4850
+ * User-defined tags associated with an automation rule.
4851
+ * </p>
4852
+ */
4853
+ Tags?: Record<string, string>;
4854
+ /**
4855
+ * @public
4856
+ * <p>
4857
+ * Whether the rule is active after it is created. If
4858
+ * this parameter is equal to <code>ENABLED</code>, Security Hub starts applying the rule to findings
4859
+ * and finding updates after the rule is created. To change the value of this
4860
+ * parameter after creating a rule, use <a href="https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_BatchUpdateAutomationRules.html">
4861
+ * <code>BatchUpdateAutomationRules</code>
4862
+ * </a>.
4863
+ * </p>
4864
+ */
4865
+ RuleStatus?: RuleStatus;
4866
+ /**
4867
+ * @public
4868
+ * <p>An integer ranging from 1 to 1000 that represents the order in which the rule action is
4869
+ * applied to findings. Security Hub applies rules with lower values for this parameter
4870
+ * first. </p>
4871
+ */
4872
+ RuleOrder: number | undefined;
4873
+ /**
4874
+ * @public
4875
+ * <p>
4876
+ * The name of the rule.
4877
+ * </p>
4878
+ */
4879
+ RuleName: string | undefined;
4880
+ /**
4881
+ * @public
4882
+ * <p>
4883
+ * A description of the rule.
4884
+ * </p>
4885
+ */
4886
+ Description: string | undefined;
4887
+ /**
4888
+ * @public
4889
+ * <p>Specifies whether a rule is the last to be applied with respect to a finding that matches the rule criteria. This is useful when a finding
4890
+ * matches the criteria for multiple rules, and each rule has different actions. If a rule is terminal, Security Hub applies the rule action to a finding that matches
4891
+ * the rule criteria and doesn't evaluate other rules for the finding. By default, a rule isn't terminal.
4892
+ * </p>
4893
+ */
4894
+ IsTerminal?: boolean;
4895
+ /**
4896
+ * @public
4897
+ * <p>
4898
+ * A set of ASFF finding field attributes and corresponding expected values that
4899
+ * Security Hub uses to filter findings. If a rule is enabled and a finding matches the conditions specified in
4900
+ * this parameter, Security Hub applies the rule action to the finding.
4901
+ * </p>
4902
+ */
4903
+ Criteria: AutomationRulesFindingFilters | undefined;
4904
+ /**
4905
+ * @public
4906
+ * <p>
4907
+ * One or more actions to update finding fields if a finding matches the conditions
4908
+ * specified in <code>Criteria</code>.
4909
+ * </p>
4910
+ */
4911
+ Actions: AutomationRulesAction[] | undefined;
4912
+ }
4913
+ /**
4914
+ * @public
4915
+ */
4916
+ export interface CreateAutomationRuleResponse {
4917
+ /**
4918
+ * @public
4919
+ * <p>
4920
+ * The Amazon Resource Name (ARN) of the automation rule that you created.
4921
+ * </p>
4922
+ */
4923
+ RuleArn?: string;
4924
+ }
4925
+ /**
4926
+ * @public
4927
+ * <p>
4928
+ * A list of security controls and control parameter values that are included in a configuration policy.
4929
+ * </p>
4930
+ */
4931
+ export interface SecurityControlCustomParameter {
4932
+ /**
4933
+ * @public
4934
+ * <p>
4935
+ * The ID of the security control.
4936
+ * </p>
4937
+ */
4938
+ SecurityControlId?: string;
4939
+ /**
4940
+ * @public
4941
+ * <p>
4942
+ * An object that specifies parameter values for a control in a configuration policy.
4943
+ * </p>
4944
+ */
4945
+ Parameters?: Record<string, ParameterConfiguration>;
4946
+ }
4947
+ /**
4948
+ * @public
4949
+ * <p>
4950
+ * An object that defines which security controls are enabled in an Security Hub configuration policy.
4951
+ * The enablement status of a control is aligned across all of the enabled standards in an account.
4952
+ * </p>
4953
+ */
4954
+ export interface SecurityControlsConfiguration {
4955
+ /**
4956
+ * @public
4957
+ * <p>
4958
+ * A list of security controls that are enabled in the configuration policy. Security Hub disables all other
4959
+ * controls (including newly released controls) other than the listed controls.
4960
+ * </p>
4961
+ */
4962
+ EnabledSecurityControlIdentifiers?: string[];
4963
+ /**
4964
+ * @public
4965
+ * <p>
4966
+ * A list of security controls that are disabled in the configuration policy. Security Hub enables all other
4967
+ * controls (including newly released controls) other than the listed controls.
4968
+ * </p>
4969
+ */
4970
+ DisabledSecurityControlIdentifiers?: string[];
4971
+ /**
4972
+ * @public
4973
+ * <p>
4974
+ * A list of security controls and control parameter values that are included in a configuration policy.
4975
+ * </p>
4976
+ */
4977
+ SecurityControlCustomParameters?: SecurityControlCustomParameter[];
4978
+ }
4979
+ /**
4980
+ * @public
4981
+ * <p>
4982
+ * An object that defines how Security Hub is configured. The configuration policy includes whether
4983
+ * Security Hub is enabled or disabled, a list of enabled security standards, a list of enabled or
4984
+ * disabled security controls, and a list of custom parameter values for specified controls. If you provide a list of security controls that are enabled in the configuration
4985
+ * policy, Security Hub disables all other controls (including newly released controls). If you provide a
4986
+ * list of security controls that are disabled in the configuration policy, Security Hub enables all other
4987
+ * controls (including newly released controls).
4988
+ * </p>
4989
+ */
4990
+ export interface SecurityHubPolicy {
4991
+ /**
4992
+ * @public
4993
+ * <p>
4994
+ * Indicates whether Security Hub is enabled in the policy.
4995
+ * </p>
4996
+ */
4997
+ ServiceEnabled?: boolean;
4998
+ /**
4999
+ * @public
5000
+ * <p>
5001
+ * A list that defines which security standards are enabled in the configuration policy.
5002
+ * </p>
5003
+ */
5004
+ EnabledStandardIdentifiers?: string[];
5005
+ /**
5006
+ * @public
5007
+ * <p>
5008
+ * An object that defines which security controls are enabled in the configuration policy. The enablement status
5009
+ * of a control is aligned across all of the enabled standards in an account.
5010
+ * </p>
5011
+ */
5012
+ SecurityControlsConfiguration?: SecurityControlsConfiguration;
5013
+ }
5014
+ /**
5015
+ * @public
5016
+ * <p>
5017
+ * An object that defines how Security Hub is configured. It includes whether Security Hub is
5018
+ * enabled or disabled, a list of enabled security standards, a list of enabled or disabled security controls, and a list of custom parameter values for specified controls.
5019
+ * If you provide a list of security controls that are enabled in the configuration policy, Security Hub
5020
+ * disables all other controls (including newly released controls). If you provide a list of security controls that
5021
+ * are disabled in the configuration policy, Security Hub enables all other controls (including newly
5022
+ * released controls).
5023
+ * </p>
5024
+ */
5025
+ export type Policy = Policy.SecurityHubMember | Policy.$UnknownMember;
5026
+ /**
5027
+ * @public
5028
+ */
5029
+ export declare namespace Policy {
5030
+ /**
5031
+ * @public
5032
+ * <p>
5033
+ * The Amazon Web Service that the configuration policy applies to.
5034
+ * </p>
5035
+ */
5036
+ interface SecurityHubMember {
5037
+ SecurityHub: SecurityHubPolicy;
5038
+ $unknown?: never;
5039
+ }
5040
+ /**
5041
+ * @public
3748
5042
  */
3749
- ActionTargetArn: string | undefined;
5043
+ interface $UnknownMember {
5044
+ SecurityHub?: never;
5045
+ $unknown: [string, any];
5046
+ }
5047
+ interface Visitor<T> {
5048
+ SecurityHub: (value: SecurityHubPolicy) => T;
5049
+ _: (name: string, value: any) => T;
5050
+ }
5051
+ const visit: <T>(value: Policy, visitor: Visitor<T>) => T;
3750
5052
  }
3751
5053
  /**
3752
5054
  * @public
3753
- * <p>The resource specified in the request conflicts with an existing resource.</p>
3754
5055
  */
3755
- export declare class ResourceConflictException extends __BaseException {
3756
- readonly name: "ResourceConflictException";
3757
- readonly $fault: "client";
3758
- Message?: string;
3759
- Code?: string;
5056
+ export interface CreateConfigurationPolicyRequest {
3760
5057
  /**
3761
- * @internal
5058
+ * @public
5059
+ * <p>
5060
+ * The name of the configuration policy.
5061
+ * </p>
3762
5062
  */
3763
- constructor(opts: __ExceptionOptionType<ResourceConflictException, __BaseException>);
3764
- }
3765
- /**
3766
- * @public
3767
- */
3768
- export interface CreateAutomationRuleRequest {
5063
+ Name: string | undefined;
3769
5064
  /**
3770
5065
  * @public
3771
5066
  * <p>
3772
- * User-defined tags that help you label the purpose of a rule.
5067
+ * The description of the configuration policy.
3773
5068
  * </p>
3774
5069
  */
3775
- Tags?: Record<string, string>;
5070
+ Description?: string;
3776
5071
  /**
3777
5072
  * @public
3778
5073
  * <p>
3779
- * Whether the rule is active after it is created. If
3780
- * this parameter is equal to <code>ENABLED</code>, Security Hub starts applying the rule to findings
3781
- * and finding updates after the rule is created. To change the value of this
3782
- * parameter after creating a rule, use <a href="https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_BatchUpdateAutomationRules.html">
3783
- * <code>BatchUpdateAutomationRules</code>
3784
- * </a>.
3785
- * </p>
5074
+ * An object that defines how Security Hub is configured. It includes whether Security Hub is enabled or
5075
+ * disabled, a list of enabled security standards, a list of enabled or disabled security controls, and a list of custom parameter values for specified controls.
5076
+ * If you provide a list of security controls that are enabled in the configuration policy, Security Hub disables all other controls (including newly
5077
+ * released controls). If you provide a list of security controls that are disabled in the configuration policy, Security Hub
5078
+ * enables all other controls (including newly released controls).
5079
+ * </p>
3786
5080
  */
3787
- RuleStatus?: RuleStatus;
5081
+ ConfigurationPolicy: Policy | undefined;
3788
5082
  /**
3789
5083
  * @public
3790
- * <p>An integer ranging from 1 to 1000 that represents the order in which the rule action is
3791
- * applied to findings. Security Hub applies rules with lower values for this parameter
3792
- * first. </p>
5084
+ * <p>
5085
+ * User-defined tags associated with a configuration policy. For more information, see
5086
+ * <a href="https://docs.aws.amazon.com/securityhub/latest/userguide/tagging-resources.html">Tagging Security Hub resources</a>
5087
+ * in the <i>Security Hub user guide</i>.
5088
+ * </p>
3793
5089
  */
3794
- RuleOrder: number | undefined;
5090
+ Tags?: Record<string, string>;
5091
+ }
5092
+ /**
5093
+ * @public
5094
+ */
5095
+ export interface CreateConfigurationPolicyResponse {
3795
5096
  /**
3796
5097
  * @public
3797
5098
  * <p>
3798
- * The name of the rule.
3799
- * </p>
5099
+ * The Amazon Resource Name (ARN) of the configuration policy.
5100
+ * </p>
3800
5101
  */
3801
- RuleName: string | undefined;
5102
+ Arn?: string;
3802
5103
  /**
3803
5104
  * @public
3804
5105
  * <p>
3805
- * A description of the rule.
3806
- * </p>
5106
+ * The universally unique identifier (UUID) of the configuration policy.
5107
+ * </p>
3807
5108
  */
3808
- Description: string | undefined;
5109
+ Id?: string;
3809
5110
  /**
3810
5111
  * @public
3811
- * <p>Specifies whether a rule is the last to be applied with respect to a finding that matches the rule criteria. This is useful when a finding
3812
- * matches the criteria for multiple rules, and each rule has different actions. If a rule is terminal, Security Hub applies the rule action to a finding that matches
3813
- * the rule criteria and doesn't evaluate other rules for the finding. By default, a rule isn't terminal.
5112
+ * <p>
5113
+ * The name of the configuration policy.
3814
5114
  * </p>
3815
5115
  */
3816
- IsTerminal?: boolean;
5116
+ Name?: string;
3817
5117
  /**
3818
5118
  * @public
3819
5119
  * <p>
3820
- * A set of ASFF finding field attributes and corresponding expected values that
3821
- * Security Hub uses to filter findings. If a rule is enabled and a finding matches the conditions specified in
3822
- * this parameter, Security Hub applies the rule action to the finding.
3823
- * </p>
5120
+ * The description of the configuration policy.
5121
+ * </p>
3824
5122
  */
3825
- Criteria: AutomationRulesFindingFilters | undefined;
5123
+ Description?: string;
3826
5124
  /**
3827
5125
  * @public
3828
5126
  * <p>
3829
- * One or more actions to update finding fields if a finding matches the conditions
3830
- * specified in <code>Criteria</code>.
3831
- * </p>
5127
+ * The date and time, in UTC and ISO 8601 format, that the configuration policy was last updated.
5128
+ * </p>
3832
5129
  */
3833
- Actions: AutomationRulesAction[] | undefined;
3834
- }
3835
- /**
3836
- * @public
3837
- */
3838
- export interface CreateAutomationRuleResponse {
5130
+ UpdatedAt?: Date;
3839
5131
  /**
3840
5132
  * @public
3841
5133
  * <p>
3842
- * The Amazon Resource Name (ARN) of the automation rule that you created.
3843
- * </p>
5134
+ * The date and time, in UTC and ISO 8601 format, that the configuration policy was created.
5135
+ * </p>
3844
5136
  */
3845
- RuleArn?: string;
5137
+ CreatedAt?: Date;
5138
+ /**
5139
+ * @public
5140
+ * <p>
5141
+ * An object that defines how Security Hub is configured. It includes whether Security Hub is enabled or disabled, a
5142
+ * list of enabled security standards, a list of enabled or disabled security controls, and a list of custom parameter values for specified controls.
5143
+ * If the request included a list of security controls that are enabled in the configuration policy, Security Hub disables all other controls (including newly
5144
+ * released controls). If the request included a list of security controls that are disabled in the configuration policy,
5145
+ * Security Hub enables all other controls (including newly released controls).
5146
+ * </p>
5147
+ */
5148
+ ConfigurationPolicy?: Policy;
3846
5149
  }
3847
5150
  /**
3848
5151
  * @public
@@ -3977,6 +5280,17 @@ export interface CreateMembersResponse {
3977
5280
  */
3978
5281
  UnprocessedAccounts?: Result[];
3979
5282
  }
5283
+ /**
5284
+ * @public
5285
+ * @enum
5286
+ */
5287
+ export declare const SecurityControlProperty: {
5288
+ readonly Parameters: "Parameters";
5289
+ };
5290
+ /**
5291
+ * @public
5292
+ */
5293
+ export type SecurityControlProperty = (typeof SecurityControlProperty)[keyof typeof SecurityControlProperty];
3980
5294
  /**
3981
5295
  * @public
3982
5296
  */
@@ -4018,6 +5332,23 @@ export interface DeleteActionTargetResponse {
4018
5332
  */
4019
5333
  ActionTargetArn: string | undefined;
4020
5334
  }
5335
+ /**
5336
+ * @public
5337
+ */
5338
+ export interface DeleteConfigurationPolicyRequest {
5339
+ /**
5340
+ * @public
5341
+ * <p>
5342
+ * The Amazon Resource Name (ARN) or universally unique identifier (UUID) of the configuration policy.
5343
+ * </p>
5344
+ */
5345
+ Identifier: string | undefined;
5346
+ }
5347
+ /**
5348
+ * @public
5349
+ */
5350
+ export interface DeleteConfigurationPolicyResponse {
5351
+ }
4021
5352
  /**
4022
5353
  * @public
4023
5354
  */
@@ -4187,15 +5518,88 @@ export interface DescribeHubResponse {
4187
5518
  */
4188
5519
  export interface DescribeOrganizationConfigurationRequest {
4189
5520
  }
5521
+ /**
5522
+ * @public
5523
+ * @enum
5524
+ */
5525
+ export declare const OrganizationConfigurationConfigurationType: {
5526
+ readonly CENTRAL: "CENTRAL";
5527
+ readonly LOCAL: "LOCAL";
5528
+ };
5529
+ /**
5530
+ * @public
5531
+ */
5532
+ export type OrganizationConfigurationConfigurationType = (typeof OrganizationConfigurationConfigurationType)[keyof typeof OrganizationConfigurationConfigurationType];
5533
+ /**
5534
+ * @public
5535
+ * @enum
5536
+ */
5537
+ export declare const OrganizationConfigurationStatus: {
5538
+ readonly ENABLED: "ENABLED";
5539
+ readonly FAILED: "FAILED";
5540
+ readonly PENDING: "PENDING";
5541
+ };
5542
+ /**
5543
+ * @public
5544
+ */
5545
+ export type OrganizationConfigurationStatus = (typeof OrganizationConfigurationStatus)[keyof typeof OrganizationConfigurationStatus];
5546
+ /**
5547
+ * @public
5548
+ * <p>
5549
+ * Provides information about the way an organization is configured in Security Hub.
5550
+ * </p>
5551
+ */
5552
+ export interface OrganizationConfiguration {
5553
+ /**
5554
+ * @public
5555
+ * <p>
5556
+ * Indicates whether the organization uses local or central configuration.
5557
+ * </p>
5558
+ * <p>If you use local configuration, the
5559
+ * Security Hub delegated administrator can set <code>AutoEnable</code> to <code>true</code> and
5560
+ * <code>AutoEnableStandards</code> to <code>DEFAULT</code>. This automatically enables Security Hub and
5561
+ * default security standards in new organization accounts. These new account settings must be set separately in
5562
+ * each Amazon Web Services Region, and settings may be different in each Region.
5563
+ * </p>
5564
+ * <p>
5565
+ * If you use central configuration, the delegated administrator can create configuration policies. Configuration
5566
+ * policies can be used to configure Security Hub, security standards, and security controls in multiple
5567
+ * accounts and Regions. If you want new organization accounts to use a specific configuration, you can create a
5568
+ * configuration policy and associate it with the root or specific organizational units (OUs). New accounts will
5569
+ * inherit the policy from the root or their assigned OU.
5570
+ * </p>
5571
+ */
5572
+ ConfigurationType?: OrganizationConfigurationConfigurationType;
5573
+ /**
5574
+ * @public
5575
+ * <p>
5576
+ * Describes whether central configuration could be enabled as the <code>ConfigurationType</code> for the
5577
+ * organization. If your <code>ConfigurationType</code> is local configuration, then the value of <code>Status</code>
5578
+ * is always <code>ENABLED</code>.
5579
+ * </p>
5580
+ */
5581
+ Status?: OrganizationConfigurationStatus;
5582
+ /**
5583
+ * @public
5584
+ * <p>
5585
+ * Provides an explanation if the value of <code>Status</code> is equal to <code>FAILED</code> when <code>ConfigurationType</code>
5586
+ * is equal to <code>CENTRAL</code>.
5587
+ * </p>
5588
+ */
5589
+ StatusMessage?: string;
5590
+ }
4190
5591
  /**
4191
5592
  * @public
4192
5593
  */
4193
5594
  export interface DescribeOrganizationConfigurationResponse {
4194
5595
  /**
4195
5596
  * @public
4196
- * <p>Whether to automatically enable Security Hub for new accounts in the organization.</p>
4197
- * <p>If set to <code>true</code>, then Security Hub is enabled for new accounts. If set to false,
4198
- * then new accounts are not added automatically.</p>
5597
+ * <p>Whether to automatically enable Security Hub in new member accounts when they join the organization.</p>
5598
+ * <p>If set to <code>true</code>, then Security Hub is automatically enabled in new accounts. If set to <code>false</code>,
5599
+ * then Security Hub isn't enabled in new accounts automatically. The default value is <code>false</code>.</p>
5600
+ * <p>If the <code>ConfigurationType</code> of your organization is set to <code>CENTRAL</code>, then this field is set
5601
+ * to <code>false</code> and can't be changed in the home Region and linked Regions. However, in that case, the delegated administrator can create a configuration
5602
+ * policy in which Security Hub is enabled and associate the policy with new organization accounts.</p>
4199
5603
  */
4200
5604
  AutoEnable?: boolean;
4201
5605
  /**
@@ -4207,13 +5611,22 @@ export interface DescribeOrganizationConfigurationResponse {
4207
5611
  /**
4208
5612
  * @public
4209
5613
  * <p>Whether to automatically enable Security Hub <a href="https://docs.aws.amazon.com/securityhub/latest/userguide/securityhub-standards-enable-disable.html">default standards</a>
4210
- * for new member accounts in the organization.</p>
4211
- * <p>The default value of this parameter is equal to <code>DEFAULT</code>.</p>
5614
+ * in new member accounts when they join the organization.</p>
4212
5615
  * <p>If equal to <code>DEFAULT</code>, then Security Hub default standards are automatically enabled for new member
4213
5616
  * accounts. If equal to <code>NONE</code>, then default standards are not automatically enabled for new member
4214
- * accounts.</p>
5617
+ * accounts. The default value of this parameter is equal to <code>DEFAULT</code>.</p>
5618
+ * <p>If the <code>ConfigurationType</code> of your organization is set to <code>CENTRAL</code>, then this field is set
5619
+ * to <code>NONE</code> and can't be changed in the home Region and linked Regions. However, in that case, the delegated administrator can create a configuration
5620
+ * policy in which specific security standards are enabled and associate the policy with new organization accounts.</p>
4215
5621
  */
4216
5622
  AutoEnableStandards?: AutoEnableStandards;
5623
+ /**
5624
+ * @public
5625
+ * <p>
5626
+ * Provides information about the way an organization is configured in Security Hub.
5627
+ * </p>
5628
+ */
5629
+ OrganizationConfiguration?: OrganizationConfiguration;
4217
5630
  }
4218
5631
  /**
4219
5632
  * @public
@@ -4858,7 +6271,145 @@ export interface GetAdministratorAccountResponse {
4858
6271
  * @public
4859
6272
  * <p>Details about an invitation.</p>
4860
6273
  */
4861
- Administrator?: Invitation;
6274
+ Administrator?: Invitation;
6275
+ }
6276
+ /**
6277
+ * @public
6278
+ */
6279
+ export interface GetConfigurationPolicyRequest {
6280
+ /**
6281
+ * @public
6282
+ * <p>
6283
+ * The Amazon Resource Name (ARN) or universally unique identifier (UUID) of the configuration policy.
6284
+ * </p>
6285
+ */
6286
+ Identifier: string | undefined;
6287
+ }
6288
+ /**
6289
+ * @public
6290
+ */
6291
+ export interface GetConfigurationPolicyResponse {
6292
+ /**
6293
+ * @public
6294
+ * <p>
6295
+ * The ARN of the configuration policy.
6296
+ * </p>
6297
+ */
6298
+ Arn?: string;
6299
+ /**
6300
+ * @public
6301
+ * <p>
6302
+ * The UUID of the configuration policy.
6303
+ * </p>
6304
+ */
6305
+ Id?: string;
6306
+ /**
6307
+ * @public
6308
+ * <p>
6309
+ * The name of the configuration policy.
6310
+ * </p>
6311
+ */
6312
+ Name?: string;
6313
+ /**
6314
+ * @public
6315
+ * <p>
6316
+ * The description of the configuration policy.
6317
+ * </p>
6318
+ */
6319
+ Description?: string;
6320
+ /**
6321
+ * @public
6322
+ * <p>
6323
+ * The date and time, in UTC and ISO 8601 format, that the configuration policy was last updated.
6324
+ * </p>
6325
+ */
6326
+ UpdatedAt?: Date;
6327
+ /**
6328
+ * @public
6329
+ * <p>
6330
+ * The date and time, in UTC and ISO 8601 format, that the configuration policy was created.
6331
+ * </p>
6332
+ */
6333
+ CreatedAt?: Date;
6334
+ /**
6335
+ * @public
6336
+ * <p>
6337
+ * An object that defines how Security Hub is configured. It includes whether Security Hub is enabled or
6338
+ * disabled, a list of enabled security standards, a list of enabled or disabled security controls, and a list of custom parameter values for specified controls.
6339
+ * If the policy includes a list of security controls that are enabled, Security Hub disables all other controls (including newly released controls).
6340
+ * If the policy includes a list of security controls that are disabled, Security Hub enables all other controls (including
6341
+ * newly released controls).
6342
+ * </p>
6343
+ */
6344
+ ConfigurationPolicy?: Policy;
6345
+ }
6346
+ /**
6347
+ * @public
6348
+ */
6349
+ export interface GetConfigurationPolicyAssociationRequest {
6350
+ /**
6351
+ * @public
6352
+ * <p>
6353
+ * The target account ID, organizational unit ID, or the root ID to retrieve the association for.
6354
+ * </p>
6355
+ */
6356
+ Target: Target | undefined;
6357
+ }
6358
+ /**
6359
+ * @public
6360
+ */
6361
+ export interface GetConfigurationPolicyAssociationResponse {
6362
+ /**
6363
+ * @public
6364
+ * <p>
6365
+ * The universally unique identifier (UUID) of a configuration policy. For self-managed behavior, the value is
6366
+ * <code>SELF_MANAGED_SECURITY_HUB</code>.
6367
+ * </p>
6368
+ */
6369
+ ConfigurationPolicyId?: string;
6370
+ /**
6371
+ * @public
6372
+ * <p>
6373
+ * The target account ID, organizational unit ID, or the root ID for which the association is retrieved.
6374
+ * </p>
6375
+ */
6376
+ TargetId?: string;
6377
+ /**
6378
+ * @public
6379
+ * <p>
6380
+ * Specifies whether the target is an Amazon Web Services account, organizational unit, or the organization root.
6381
+ * </p>
6382
+ */
6383
+ TargetType?: TargetType;
6384
+ /**
6385
+ * @public
6386
+ * <p>
6387
+ * Indicates whether the association between the specified target and the configuration was directly applied by the
6388
+ * Security Hub delegated administrator or inherited from a parent.
6389
+ * </p>
6390
+ */
6391
+ AssociationType?: AssociationType;
6392
+ /**
6393
+ * @public
6394
+ * <p>
6395
+ * The date and time, in UTC and ISO 8601 format, that the configuration policy association was last updated.
6396
+ * </p>
6397
+ */
6398
+ UpdatedAt?: Date;
6399
+ /**
6400
+ * @public
6401
+ * <p>
6402
+ * The current status of the association between the specified target and the configuration.
6403
+ * </p>
6404
+ */
6405
+ AssociationStatus?: ConfigurationPolicyAssociationStatus;
6406
+ /**
6407
+ * @public
6408
+ * <p>
6409
+ * The explanation for a <code>FAILED</code> value for <code>AssociationStatus</code>.
6410
+ * </p>
6411
+ */
6412
+ AssociationStatusMessage?: string;
4862
6413
  }
4863
6414
  /**
4864
6415
  * @public
@@ -5369,6 +6920,137 @@ export interface GetMembersResponse {
5369
6920
  */
5370
6921
  UnprocessedAccounts?: Result[];
5371
6922
  }
6923
+ /**
6924
+ * @public
6925
+ */
6926
+ export interface GetSecurityControlDefinitionRequest {
6927
+ /**
6928
+ * @public
6929
+ * <p>
6930
+ * The ID of the security control to retrieve the definition for. This field doesn’t accept an Amazon Resource Name (ARN).
6931
+ * </p>
6932
+ */
6933
+ SecurityControlId: string | undefined;
6934
+ }
6935
+ /**
6936
+ * @public
6937
+ * @enum
6938
+ */
6939
+ export declare const RegionAvailabilityStatus: {
6940
+ readonly AVAILABLE: "AVAILABLE";
6941
+ readonly UNAVAILABLE: "UNAVAILABLE";
6942
+ };
6943
+ /**
6944
+ * @public
6945
+ */
6946
+ export type RegionAvailabilityStatus = (typeof RegionAvailabilityStatus)[keyof typeof RegionAvailabilityStatus];
6947
+ /**
6948
+ * @public
6949
+ * <p>
6950
+ * An object that describes a security control parameter and the options for customizing it.
6951
+ * </p>
6952
+ */
6953
+ export interface ParameterDefinition {
6954
+ /**
6955
+ * @public
6956
+ * <p>
6957
+ * Description of a control parameter.
6958
+ * </p>
6959
+ */
6960
+ Description: string | undefined;
6961
+ /**
6962
+ * @public
6963
+ * <p>
6964
+ * The options for customizing a control parameter. Customization options vary based on the data type of the parameter.
6965
+ * </p>
6966
+ */
6967
+ ConfigurationOptions: ConfigurationOptions | undefined;
6968
+ }
6969
+ /**
6970
+ * @public
6971
+ * <p>
6972
+ * Provides metadata for a security control, including its unique standard-agnostic identifier, title, description,
6973
+ * severity, availability in Amazon Web Services Regions, and a link to remediation steps.
6974
+ * </p>
6975
+ */
6976
+ export interface SecurityControlDefinition {
6977
+ /**
6978
+ * @public
6979
+ * <p>
6980
+ * The unique identifier of a security control across standards. Values for this field typically consist of an
6981
+ * Amazon Web Service name and a number (for example, APIGateway.3). This parameter differs from
6982
+ * <code>SecurityControlArn</code>, which is a unique Amazon Resource Name (ARN) assigned to a control. The
6983
+ * ARN references the security control ID (for example, arn:aws:securityhub:eu-central-1:123456789012:security-control/APIGateway.3).
6984
+ * </p>
6985
+ */
6986
+ SecurityControlId: string | undefined;
6987
+ /**
6988
+ * @public
6989
+ * <p>
6990
+ * The title of a security control.
6991
+ * </p>
6992
+ */
6993
+ Title: string | undefined;
6994
+ /**
6995
+ * @public
6996
+ * <p> The description of a security control across standards. This typically summarizes how
6997
+ * Security Hub evaluates the control and the conditions under which it produces a
6998
+ * failed finding. This parameter doesn't reference a specific standard. </p>
6999
+ */
7000
+ Description: string | undefined;
7001
+ /**
7002
+ * @public
7003
+ * <p>
7004
+ * A link to Security Hub documentation that explains how to remediate a failed finding for a security control.
7005
+ * </p>
7006
+ */
7007
+ RemediationUrl: string | undefined;
7008
+ /**
7009
+ * @public
7010
+ * <p>
7011
+ * The severity of a security control. For more information about how Security Hub determines control severity,
7012
+ * see <a href="https://docs.aws.amazon.com/securityhub/latest/userguide/controls-findings-create-update.html#control-findings-severity">Assigning severity to control findings</a> in the
7013
+ * <i>Security Hub User Guide</i>.
7014
+ * </p>
7015
+ */
7016
+ SeverityRating: SeverityRating | undefined;
7017
+ /**
7018
+ * @public
7019
+ * <p>
7020
+ * Specifies whether a security control is available in the current Amazon Web Services Region.
7021
+ * </p>
7022
+ */
7023
+ CurrentRegionAvailability: RegionAvailabilityStatus | undefined;
7024
+ /**
7025
+ * @public
7026
+ * <p>
7027
+ * Security control properties that you can customize. Currently, only parameter customization is supported for select
7028
+ * controls. An empty array is returned for controls that don’t support custom properties.
7029
+ * </p>
7030
+ */
7031
+ CustomizableProperties?: SecurityControlProperty[];
7032
+ /**
7033
+ * @public
7034
+ * <p>
7035
+ * An object that provides a security control parameter name, description, and the options for customizing it. This
7036
+ * object is excluded for a control that doesn't support custom parameters.
7037
+ * </p>
7038
+ */
7039
+ ParameterDefinitions?: Record<string, ParameterDefinition>;
7040
+ }
7041
+ /**
7042
+ * @public
7043
+ */
7044
+ export interface GetSecurityControlDefinitionResponse {
7045
+ /**
7046
+ * @public
7047
+ * <p>
7048
+ * Provides metadata for a security control, including its unique standard-agnostic identifier, title, description,
7049
+ * severity, availability in Amazon Web Services Regions, and a link to remediation steps.
7050
+ * </p>
7051
+ */
7052
+ SecurityControlDefinition: SecurityControlDefinition | undefined;
7053
+ }
5372
7054
  /**
5373
7055
  * @public
5374
7056
  */
@@ -5430,6 +7112,110 @@ export interface ListAutomationRulesResponse {
5430
7112
  */
5431
7113
  NextToken?: string;
5432
7114
  }
7115
+ /**
7116
+ * @public
7117
+ */
7118
+ export interface ListConfigurationPoliciesRequest {
7119
+ /**
7120
+ * @public
7121
+ * <p>
7122
+ * The NextToken value that's returned from a previous paginated <code>ListConfigurationPolicies</code> request where
7123
+ * <code>MaxResults</code> was used but the results exceeded the value of that parameter. Pagination continues from the
7124
+ * <code>MaxResults</code> was used but the results exceeded the value of that parameter. Pagination continues from the
7125
+ * end of the previous response that returned the <code>NextToken</code> value. This value is <code>null</code> when
7126
+ * there are no more results to return.
7127
+ * </p>
7128
+ */
7129
+ NextToken?: string;
7130
+ /**
7131
+ * @public
7132
+ * <p>
7133
+ * The maximum number of results that's returned by <code>ListConfigurationPolicies</code> in each page of the response.
7134
+ * When this parameter is used, <code>ListConfigurationPolicies</code> returns the specified number of results in a
7135
+ * single page and a <code>NextToken</code> response element. You can see the remaining results of the initial request
7136
+ * by sending another <code>ListConfigurationPolicies</code> request with the returned <code>NextToken</code> value. A
7137
+ * valid range for <code>MaxResults</code> is between 1 and 100.
7138
+ * </p>
7139
+ */
7140
+ MaxResults?: number;
7141
+ }
7142
+ /**
7143
+ * @public
7144
+ */
7145
+ export interface ListConfigurationPoliciesResponse {
7146
+ /**
7147
+ * @public
7148
+ * <p>
7149
+ * Provides metadata for each of your configuration policies.
7150
+ * </p>
7151
+ */
7152
+ ConfigurationPolicySummaries?: ConfigurationPolicySummary[];
7153
+ /**
7154
+ * @public
7155
+ * <p>
7156
+ * The <code>NextToken</code> value to include in the next <code>ListConfigurationPolicies</code> request. When the
7157
+ * results of a <code>ListConfigurationPolicies</code> request exceed <code>MaxResults</code>, this value can be used to
7158
+ * retrieve the next page of results. This value is <code>null</code> when there are no more results to return.
7159
+ * </p>
7160
+ */
7161
+ NextToken?: string;
7162
+ }
7163
+ /**
7164
+ * @public
7165
+ */
7166
+ export interface ListConfigurationPolicyAssociationsRequest {
7167
+ /**
7168
+ * @public
7169
+ * <p>
7170
+ * The <code>NextToken</code> value that's returned from a previous paginated <code>ListConfigurationPolicyAssociations</code>
7171
+ * request where <code>MaxResults</code> was used but the results exceeded the value of that parameter. Pagination
7172
+ * continues from the end of the previous response that returned the <code>NextToken</code> value. This value is <code>null</code>
7173
+ * when there are no more results to return.
7174
+ * </p>
7175
+ */
7176
+ NextToken?: string;
7177
+ /**
7178
+ * @public
7179
+ * <p>
7180
+ * The maximum number of results that's returned by <code>ListConfigurationPolicies</code> in each page of the response.
7181
+ * When this parameter is used, <code>ListConfigurationPolicyAssociations</code> returns the specified number of results
7182
+ * in a single page and a <code>NextToken</code> response element. You can see the remaining results of the initial
7183
+ * request by sending another <code>ListConfigurationPolicyAssociations</code> request with the returned <code>NextToken</code>
7184
+ * value. A valid range for <code>MaxResults</code> is between 1 and 100.
7185
+ * </p>
7186
+ */
7187
+ MaxResults?: number;
7188
+ /**
7189
+ * @public
7190
+ * <p>
7191
+ * Options for filtering the <code>ListConfigurationPolicyAssociations</code> response. You can filter by the Amazon Resource Name (ARN) or
7192
+ * universally unique identifier (UUID) of a configuration, <code>AssociationType</code>, or <code>AssociationStatus</code>.
7193
+ * </p>
7194
+ */
7195
+ Filters?: AssociationFilters;
7196
+ }
7197
+ /**
7198
+ * @public
7199
+ */
7200
+ export interface ListConfigurationPolicyAssociationsResponse {
7201
+ /**
7202
+ * @public
7203
+ * <p>
7204
+ * An object that contains the details of each configuration policy association that’s returned in a
7205
+ * <code>ListConfigurationPolicyAssociations</code> request.
7206
+ * </p>
7207
+ */
7208
+ ConfigurationPolicyAssociationSummaries?: ConfigurationPolicyAssociationSummary[];
7209
+ /**
7210
+ * @public
7211
+ * <p>
7212
+ * The <code>NextToken</code> value to include in the next <code>ListConfigurationPolicyAssociations</code> request. When
7213
+ * the results of a <code>ListConfigurationPolicyAssociations</code> request exceed <code>MaxResults</code>, this value
7214
+ * can be used to retrieve the next page of results. This value is <code>null</code> when there are no more results to return.
7215
+ * </p>
7216
+ */
7217
+ NextToken?: string;
7218
+ }
5433
7219
  /**
5434
7220
  * @public
5435
7221
  */
@@ -5577,131 +7363,63 @@ export interface ListMembersResponse {
5577
7363
  /**
5578
7364
  * @public
5579
7365
  */
5580
- export interface ListOrganizationAdminAccountsRequest {
5581
- /**
5582
- * @public
5583
- * <p>The maximum number of items to return in the response.</p>
5584
- */
5585
- MaxResults?: number;
5586
- /**
5587
- * @public
5588
- * <p>The token that is required for pagination. On your first call to the
5589
- * <code>ListOrganizationAdminAccounts</code> operation, set the value of this parameter to
5590
- * <code>NULL</code>. For subsequent calls to the operation, to continue listing data, set
5591
- * the value of this parameter to the value returned from the previous response. </p>
5592
- */
5593
- NextToken?: string;
5594
- }
5595
- /**
5596
- * @public
5597
- */
5598
- export interface ListOrganizationAdminAccountsResponse {
5599
- /**
5600
- * @public
5601
- * <p>The list of Security Hub administrator accounts.</p>
5602
- */
5603
- AdminAccounts?: AdminAccount[];
5604
- /**
5605
- * @public
5606
- * <p>The pagination token to use to request the next page of results.</p>
5607
- */
5608
- NextToken?: string;
5609
- }
5610
- /**
5611
- * @public
5612
- */
5613
- export interface ListSecurityControlDefinitionsRequest {
5614
- /**
5615
- * @public
5616
- * <p>
5617
- * The Amazon Resource Name (ARN) of the standard that you want to view controls for.
5618
- * </p>
5619
- */
5620
- StandardsArn?: string;
5621
- /**
5622
- * @public
5623
- * <p>
5624
- * Optional pagination parameter.
5625
- * </p>
5626
- */
5627
- NextToken?: string;
5628
- /**
5629
- * @public
5630
- * <p> An optional parameter that limits the total results of the API response to the
5631
- * specified number. If this parameter isn't provided in the request, the results include the
5632
- * first 25 security controls that apply to the specified standard. The results also include a
5633
- * <code>NextToken</code> parameter that you can use in a subsequent API call to get the
5634
- * next 25 controls. This repeats until all controls for the standard are returned. </p>
5635
- */
5636
- MaxResults?: number;
5637
- }
5638
- /**
5639
- * @public
5640
- * @enum
5641
- */
5642
- export declare const RegionAvailabilityStatus: {
5643
- readonly AVAILABLE: "AVAILABLE";
5644
- readonly UNAVAILABLE: "UNAVAILABLE";
5645
- };
5646
- /**
5647
- * @public
5648
- */
5649
- export type RegionAvailabilityStatus = (typeof RegionAvailabilityStatus)[keyof typeof RegionAvailabilityStatus];
5650
- /**
5651
- * @public
5652
- * <p>
5653
- * Provides metadata for a security control, including its unique standard-agnostic identifier, title, description,
5654
- * severity, availability in Amazon Web Services Regions, and a link to remediation steps.
5655
- * </p>
5656
- */
5657
- export interface SecurityControlDefinition {
7366
+ export interface ListOrganizationAdminAccountsRequest {
5658
7367
  /**
5659
7368
  * @public
5660
- * <p>
5661
- * The unique identifier of a security control across standards. Values for this field typically consist of an
5662
- * Amazon Web Service name and a number (for example, APIGateway.3). This parameter differs from
5663
- * <code>SecurityControlArn</code>, which is a unique Amazon Resource Name (ARN) assigned to a control. The
5664
- * ARN references the security control ID (for example, arn:aws:securityhub:eu-central-1:123456789012:security-control/APIGateway.3).
5665
- * </p>
7369
+ * <p>The maximum number of items to return in the response.</p>
5666
7370
  */
5667
- SecurityControlId: string | undefined;
7371
+ MaxResults?: number;
5668
7372
  /**
5669
7373
  * @public
5670
- * <p>
5671
- * The title of a security control.
5672
- * </p>
7374
+ * <p>The token that is required for pagination. On your first call to the
7375
+ * <code>ListOrganizationAdminAccounts</code> operation, set the value of this parameter to
7376
+ * <code>NULL</code>. For subsequent calls to the operation, to continue listing data, set
7377
+ * the value of this parameter to the value returned from the previous response. </p>
5673
7378
  */
5674
- Title: string | undefined;
7379
+ NextToken?: string;
7380
+ }
7381
+ /**
7382
+ * @public
7383
+ */
7384
+ export interface ListOrganizationAdminAccountsResponse {
5675
7385
  /**
5676
7386
  * @public
5677
- * <p> The description of a security control across standards. This typically summarizes how
5678
- * Security Hub evaluates the control and the conditions under which it produces a
5679
- * failed finding. This parameter doesn't reference a specific standard. </p>
7387
+ * <p>The list of Security Hub administrator accounts.</p>
5680
7388
  */
5681
- Description: string | undefined;
7389
+ AdminAccounts?: AdminAccount[];
5682
7390
  /**
5683
7391
  * @public
5684
- * <p>
5685
- * A link to Security Hub documentation that explains how to remediate a failed finding for a security control.
5686
- * </p>
7392
+ * <p>The pagination token to use to request the next page of results.</p>
5687
7393
  */
5688
- RemediationUrl: string | undefined;
7394
+ NextToken?: string;
7395
+ }
7396
+ /**
7397
+ * @public
7398
+ */
7399
+ export interface ListSecurityControlDefinitionsRequest {
5689
7400
  /**
5690
7401
  * @public
5691
7402
  * <p>
5692
- * The severity of a security control. For more information about how Security Hub determines control severity,
5693
- * see <a href="https://docs.aws.amazon.com/securityhub/latest/userguide/controls-findings-create-update.html#control-findings-severity">Assigning severity to control findings</a> in the
5694
- * <i>Security Hub User Guide</i>.
7403
+ * The Amazon Resource Name (ARN) of the standard that you want to view controls for.
5695
7404
  * </p>
5696
7405
  */
5697
- SeverityRating: SeverityRating | undefined;
7406
+ StandardsArn?: string;
5698
7407
  /**
5699
7408
  * @public
5700
7409
  * <p>
5701
- * Specifies whether a security control is available in the current Amazon Web Services Region.
7410
+ * Optional pagination parameter.
5702
7411
  * </p>
5703
7412
  */
5704
- CurrentRegionAvailability: RegionAvailabilityStatus | undefined;
7413
+ NextToken?: string;
7414
+ /**
7415
+ * @public
7416
+ * <p> An optional parameter that limits the total results of the API response to the
7417
+ * specified number. If this parameter isn't provided in the request, the results include the
7418
+ * first 25 security controls that apply to the specified standard. The results also include a
7419
+ * <code>NextToken</code> parameter that you can use in a subsequent API call to get the
7420
+ * next 25 controls. This repeats until all controls for the standard are returned. </p>
7421
+ */
7422
+ MaxResults?: number;
5705
7423
  }
5706
7424
  /**
5707
7425
  * @public
@@ -5796,12 +7514,12 @@ export interface StandardsControlAssociationSummary {
5796
7514
  RelatedRequirements?: string[];
5797
7515
  /**
5798
7516
  * @public
5799
- * <p> The last time that a control's enablement status in a specified standard was updated. </p>
7517
+ * <p>The last time that a control's enablement status in a specified standard was updated.</p>
5800
7518
  */
5801
7519
  UpdatedAt?: Date;
5802
7520
  /**
5803
7521
  * @public
5804
- * <p> The reason for updating the control's enablement status in a specified standard. </p>
7522
+ * <p>The reason for updating a control's enablement status in a specified standard.</p>
5805
7523
  */
5806
7524
  UpdatedReason?: string;
5807
7525
  /**
@@ -5857,6 +7575,121 @@ export interface ListTagsForResourceResponse {
5857
7575
  */
5858
7576
  Tags?: Record<string, string>;
5859
7577
  }
7578
+ /**
7579
+ * @public
7580
+ * <p>
7581
+ * The request was rejected because it conflicts with the resource's availability. For example, you tried
7582
+ * to update a security control that's currently in the <code>UPDATING</code> state.
7583
+ * </p>
7584
+ */
7585
+ export declare class ResourceInUseException extends __BaseException {
7586
+ readonly name: "ResourceInUseException";
7587
+ readonly $fault: "client";
7588
+ Message?: string;
7589
+ Code?: string;
7590
+ /**
7591
+ * @internal
7592
+ */
7593
+ constructor(opts: __ExceptionOptionType<ResourceInUseException, __BaseException>);
7594
+ }
7595
+ /**
7596
+ * @public
7597
+ */
7598
+ export interface StartConfigurationPolicyAssociationRequest {
7599
+ /**
7600
+ * @public
7601
+ * <p>
7602
+ * The Amazon Resource Name (ARN) or universally unique identifier (UUID) of the configuration policy.
7603
+ * </p>
7604
+ */
7605
+ ConfigurationPolicyIdentifier: string | undefined;
7606
+ /**
7607
+ * @public
7608
+ * <p>
7609
+ * The identifier of the target account, organizational unit, or the root to associate with the specified configuration.
7610
+ * </p>
7611
+ */
7612
+ Target: Target | undefined;
7613
+ }
7614
+ /**
7615
+ * @public
7616
+ */
7617
+ export interface StartConfigurationPolicyAssociationResponse {
7618
+ /**
7619
+ * @public
7620
+ * <p>
7621
+ * The UUID of the configuration policy.
7622
+ * </p>
7623
+ */
7624
+ ConfigurationPolicyId?: string;
7625
+ /**
7626
+ * @public
7627
+ * <p>
7628
+ * The identifier of the target account, organizational unit, or the organization root with which the configuration is associated.
7629
+ * </p>
7630
+ */
7631
+ TargetId?: string;
7632
+ /**
7633
+ * @public
7634
+ * <p>
7635
+ * Indicates whether the target is an Amazon Web Services account, organizational unit, or the organization root.
7636
+ * </p>
7637
+ */
7638
+ TargetType?: TargetType;
7639
+ /**
7640
+ * @public
7641
+ * <p>
7642
+ * Indicates whether the association between the specified target and the configuration was directly applied by the
7643
+ * Security Hub delegated administrator or inherited from a parent.
7644
+ * </p>
7645
+ */
7646
+ AssociationType?: AssociationType;
7647
+ /**
7648
+ * @public
7649
+ * <p>
7650
+ * The date and time, in UTC and ISO 8601 format, that the configuration policy association was last updated.
7651
+ * </p>
7652
+ */
7653
+ UpdatedAt?: Date;
7654
+ /**
7655
+ * @public
7656
+ * <p>
7657
+ * The current status of the association between the specified target and the configuration.
7658
+ * </p>
7659
+ */
7660
+ AssociationStatus?: ConfigurationPolicyAssociationStatus;
7661
+ /**
7662
+ * @public
7663
+ * <p>
7664
+ * An explanation for a <code>FAILED</code> value for <code>AssociationStatus</code>.
7665
+ * </p>
7666
+ */
7667
+ AssociationStatusMessage?: string;
7668
+ }
7669
+ /**
7670
+ * @public
7671
+ */
7672
+ export interface StartConfigurationPolicyDisassociationRequest {
7673
+ /**
7674
+ * @public
7675
+ * <p>
7676
+ * The identifier of the target account, organizational unit, or the root to disassociate from the specified configuration.
7677
+ * </p>
7678
+ */
7679
+ Target?: Target;
7680
+ /**
7681
+ * @public
7682
+ * <p>
7683
+ * The Amazon Resource Name (ARN) or universally unique identifier (UUID) of the configuration policy.
7684
+ * </p>
7685
+ */
7686
+ ConfigurationPolicyIdentifier: string | undefined;
7687
+ }
7688
+ /**
7689
+ * @public
7690
+ */
7691
+ export interface StartConfigurationPolicyDisassociationResponse {
7692
+ }
5860
7693
  /**
5861
7694
  * @public
5862
7695
  */
@@ -5922,6 +7755,110 @@ export interface UpdateActionTargetRequest {
5922
7755
  */
5923
7756
  export interface UpdateActionTargetResponse {
5924
7757
  }
7758
+ /**
7759
+ * @public
7760
+ */
7761
+ export interface UpdateConfigurationPolicyRequest {
7762
+ /**
7763
+ * @public
7764
+ * <p>
7765
+ * The Amazon Resource Name (ARN) or universally unique identifier (UUID) of the configuration policy.
7766
+ * </p>
7767
+ */
7768
+ Identifier: string | undefined;
7769
+ /**
7770
+ * @public
7771
+ * <p>
7772
+ * The name of the configuration policy.
7773
+ * </p>
7774
+ */
7775
+ Name?: string;
7776
+ /**
7777
+ * @public
7778
+ * <p>
7779
+ * The description of the configuration policy.
7780
+ * </p>
7781
+ */
7782
+ Description?: string;
7783
+ /**
7784
+ * @public
7785
+ * <p>
7786
+ * The reason for updating the configuration policy.
7787
+ * </p>
7788
+ */
7789
+ UpdatedReason?: string;
7790
+ /**
7791
+ * @public
7792
+ * <p>
7793
+ * An object that defines how Security Hub is configured. It includes whether Security Hub is enabled or
7794
+ * disabled, a list of enabled security standards, a list of enabled or disabled security controls, and a list of custom parameter values for specified controls.
7795
+ * If you provide a list of security controls that are enabled in the configuration policy, Security Hub disables all other controls (including newly
7796
+ * released controls). If you provide a list of security controls that are disabled in the configuration policy, Security Hub
7797
+ * enables all other controls (including newly released controls).
7798
+ * </p>
7799
+ * <p>When updating a configuration policy, provide a complete list of standards that you want to enable and a complete list
7800
+ * of controls that you want to enable or disable. The updated configuration replaces the current configuration.</p>
7801
+ */
7802
+ ConfigurationPolicy?: Policy;
7803
+ }
7804
+ /**
7805
+ * @public
7806
+ */
7807
+ export interface UpdateConfigurationPolicyResponse {
7808
+ /**
7809
+ * @public
7810
+ * <p>
7811
+ * The ARN of the configuration policy.
7812
+ * </p>
7813
+ */
7814
+ Arn?: string;
7815
+ /**
7816
+ * @public
7817
+ * <p>
7818
+ * The UUID of the configuration policy.
7819
+ * </p>
7820
+ */
7821
+ Id?: string;
7822
+ /**
7823
+ * @public
7824
+ * <p>
7825
+ * The name of the configuration policy.
7826
+ * </p>
7827
+ */
7828
+ Name?: string;
7829
+ /**
7830
+ * @public
7831
+ * <p>
7832
+ * The description of the configuration policy.
7833
+ * </p>
7834
+ */
7835
+ Description?: string;
7836
+ /**
7837
+ * @public
7838
+ * <p>
7839
+ * The date and time, in UTC and ISO 8601 format, that the configuration policy was last updated.
7840
+ * </p>
7841
+ */
7842
+ UpdatedAt?: Date;
7843
+ /**
7844
+ * @public
7845
+ * <p>
7846
+ * The date and time, in UTC and ISO 8601 format, that the configuration policy was created.
7847
+ * </p>
7848
+ */
7849
+ CreatedAt?: Date;
7850
+ /**
7851
+ * @public
7852
+ * <p>
7853
+ * An object that defines how Security Hub is configured. It includes whether Security Hub is enabled or
7854
+ * disabled, a list of enabled security standards, a list of enabled or disabled security controls, and a list of custom parameter values for specified controls. If the request included a
7855
+ * list of security controls that are enabled in the configuration policy, Security Hub disables all other controls (including
7856
+ * newly released controls). If the request included a list of security controls that are disabled in the configuration policy,
7857
+ * Security Hub enables all other controls (including newly released controls).
7858
+ * </p>
7859
+ */
7860
+ ConfigurationPolicy?: Policy;
7861
+ }
5925
7862
  /**
5926
7863
  * @public
5927
7864
  */
@@ -6048,26 +7985,72 @@ export interface UpdateInsightResponse {
6048
7985
  export interface UpdateOrganizationConfigurationRequest {
6049
7986
  /**
6050
7987
  * @public
6051
- * <p>Whether to automatically enable Security Hub for new accounts in the organization.</p>
6052
- * <p>By default, this is <code>false</code>, and new accounts are not added
6053
- * automatically.</p>
6054
- * <p>To automatically enable Security Hub for new accounts, set this to <code>true</code>.</p>
7988
+ * <p>Whether to automatically enable Security Hub in new member accounts when they join the organization.</p>
7989
+ * <p>If set to <code>true</code>, then Security Hub is automatically enabled in new accounts. If set to <code>false</code>,
7990
+ * then Security Hub isn't enabled in new accounts automatically. The default value is <code>false</code>.</p>
7991
+ * <p>If the <code>ConfigurationType</code> of your organization is set to <code>CENTRAL</code>, then this field is set
7992
+ * to <code>false</code> and can't be changed in the home Region and linked Regions. However, in that case, the delegated administrator can create a configuration
7993
+ * policy in which Security Hub is enabled and associate the policy with new organization accounts.</p>
6055
7994
  */
6056
7995
  AutoEnable: boolean | undefined;
6057
7996
  /**
6058
7997
  * @public
6059
7998
  * <p>Whether to automatically enable Security Hub <a href="https://docs.aws.amazon.com/securityhub/latest/userguide/securityhub-standards-enable-disable.html">default standards</a>
6060
- * for new member accounts in the organization.</p>
6061
- * <p>By default, this parameter is equal to <code>DEFAULT</code>, and new member accounts are automatically enabled with default Security Hub standards.</p>
6062
- * <p>To opt out of enabling default standards for new member accounts, set this parameter equal to <code>NONE</code>.</p>
7999
+ * in new member accounts when they join the organization.</p>
8000
+ * <p>The default value of this parameter is equal to <code>DEFAULT</code>.</p>
8001
+ * <p>If equal to <code>DEFAULT</code>, then Security Hub default standards are automatically enabled for new member
8002
+ * accounts. If equal to <code>NONE</code>, then default standards are not automatically enabled for new member
8003
+ * accounts.</p>
8004
+ * <p>If the <code>ConfigurationType</code> of your organization is set to <code>CENTRAL</code>, then this field is set
8005
+ * to <code>NONE</code> and can't be changed in the home Region and linked Regions. However, in that case, the delegated administrator can create a configuration
8006
+ * policy in which specific security standards are enabled and associate the policy with new organization accounts.</p>
6063
8007
  */
6064
8008
  AutoEnableStandards?: AutoEnableStandards;
8009
+ /**
8010
+ * @public
8011
+ * <p>
8012
+ * Provides information about the way an organization is configured in Security Hub.
8013
+ * </p>
8014
+ */
8015
+ OrganizationConfiguration?: OrganizationConfiguration;
6065
8016
  }
6066
8017
  /**
6067
8018
  * @public
6068
8019
  */
6069
8020
  export interface UpdateOrganizationConfigurationResponse {
6070
8021
  }
8022
+ /**
8023
+ * @public
8024
+ */
8025
+ export interface UpdateSecurityControlRequest {
8026
+ /**
8027
+ * @public
8028
+ * <p>
8029
+ * The Amazon Resource Name (ARN) or ID of the control to update.
8030
+ * </p>
8031
+ */
8032
+ SecurityControlId: string | undefined;
8033
+ /**
8034
+ * @public
8035
+ * <p>
8036
+ * An object that specifies which security control parameters to update.
8037
+ * </p>
8038
+ */
8039
+ Parameters: Record<string, ParameterConfiguration> | undefined;
8040
+ /**
8041
+ * @public
8042
+ * <p>
8043
+ * The most recent reason for updating the properties of the security control. This field accepts alphanumeric
8044
+ * characters in addition to white spaces, dashes, and underscores.
8045
+ * </p>
8046
+ */
8047
+ LastUpdateReason?: string;
8048
+ }
8049
+ /**
8050
+ * @public
8051
+ */
8052
+ export interface UpdateSecurityControlResponse {
8053
+ }
6071
8054
  /**
6072
8055
  * @public
6073
8056
  */