@aws-sdk/client-securityhub 3.470.0 → 3.471.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.
@@ -1,4 +1,426 @@
1
- import { AssociatedStandard, AvailabilityZone, AwsEcsContainerDetails, AwsEcsTaskDefinitionContainerDefinitionsDetails, AwsEcsTaskDefinitionInferenceAcceleratorsDetails, AwsEcsTaskDefinitionPlacementConstraintsDetails, AwsEcsTaskDefinitionProxyConfigurationDetails, AwsEcsTaskDefinitionVolumesDockerVolumeConfigurationDetails, AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationDetails, RelatedFinding, SeverityLabel } from "./models_0";
1
+ import { AssociatedStandard, AvailabilityZone, AwsEcsContainerDetails, AwsEcsTaskDefinitionContainerDefinitionsDependsOnDetails, AwsEcsTaskDefinitionContainerDefinitionsEnvironmentDetails, AwsEcsTaskDefinitionContainerDefinitionsEnvironmentFilesDetails, AwsEcsTaskDefinitionContainerDefinitionsExtraHostsDetails, AwsEcsTaskDefinitionContainerDefinitionsFirelensConfigurationDetails, AwsEcsTaskDefinitionContainerDefinitionsHealthCheckDetails, AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetails, AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationDetails, AwsEcsTaskDefinitionContainerDefinitionsMountPointsDetails, AwsEcsTaskDefinitionContainerDefinitionsPortMappingsDetails, AwsEcsTaskDefinitionContainerDefinitionsRepositoryCredentialsDetails, AwsEcsTaskDefinitionContainerDefinitionsResourceRequirementsDetails, AwsEcsTaskDefinitionContainerDefinitionsSecretsDetails, AwsEcsTaskDefinitionContainerDefinitionsSystemControlsDetails, AwsEcsTaskDefinitionContainerDefinitionsUlimitsDetails, RelatedFinding, SeverityLabel } from "./models_0";
2
+ /**
3
+ * @public
4
+ * <p>A data volume to mount from another container.</p>
5
+ */
6
+ export interface AwsEcsTaskDefinitionContainerDefinitionsVolumesFromDetails {
7
+ /**
8
+ * @public
9
+ * <p>Whether the container has read-only access to the volume.</p>
10
+ */
11
+ ReadOnly?: boolean;
12
+ /**
13
+ * @public
14
+ * <p>The name of another container within the same task definition from which to mount volumes.</p>
15
+ */
16
+ SourceContainer?: string;
17
+ }
18
+ /**
19
+ * @public
20
+ * <p>A container definition that describes a container in the task.</p>
21
+ */
22
+ export interface AwsEcsTaskDefinitionContainerDefinitionsDetails {
23
+ /**
24
+ * @public
25
+ * <p>The command that is passed to the container.</p>
26
+ */
27
+ Command?: string[];
28
+ /**
29
+ * @public
30
+ * <p>The number of CPU units reserved for the container.</p>
31
+ */
32
+ Cpu?: number;
33
+ /**
34
+ * @public
35
+ * <p>The dependencies that are defined for container startup and shutdown.</p>
36
+ */
37
+ DependsOn?: AwsEcsTaskDefinitionContainerDefinitionsDependsOnDetails[];
38
+ /**
39
+ * @public
40
+ * <p>Whether to disable networking within the container.</p>
41
+ */
42
+ DisableNetworking?: boolean;
43
+ /**
44
+ * @public
45
+ * <p>A list of DNS search domains that are presented to the container.</p>
46
+ */
47
+ DnsSearchDomains?: string[];
48
+ /**
49
+ * @public
50
+ * <p>A list of DNS servers that are presented to the container.</p>
51
+ */
52
+ DnsServers?: string[];
53
+ /**
54
+ * @public
55
+ * <p>A key-value map of labels to add to the container.</p>
56
+ */
57
+ DockerLabels?: Record<string, string>;
58
+ /**
59
+ * @public
60
+ * <p>A list of strings to provide custom labels for SELinux and AppArmor multi-level security systems.</p>
61
+ */
62
+ DockerSecurityOptions?: string[];
63
+ /**
64
+ * @public
65
+ * <p>The entry point that is passed to the container.</p>
66
+ */
67
+ EntryPoint?: string[];
68
+ /**
69
+ * @public
70
+ * <p>The environment variables to pass to a container.</p>
71
+ */
72
+ Environment?: AwsEcsTaskDefinitionContainerDefinitionsEnvironmentDetails[];
73
+ /**
74
+ * @public
75
+ * <p>A list of files containing the environment variables to pass to a container.</p>
76
+ */
77
+ EnvironmentFiles?: AwsEcsTaskDefinitionContainerDefinitionsEnvironmentFilesDetails[];
78
+ /**
79
+ * @public
80
+ * <p>Whether the container is essential. All tasks must have at least one essential container.</p>
81
+ */
82
+ Essential?: boolean;
83
+ /**
84
+ * @public
85
+ * <p>A list of hostnames and IP address mappings to append to the <b>/etc/hosts</b> file on the container.</p>
86
+ */
87
+ ExtraHosts?: AwsEcsTaskDefinitionContainerDefinitionsExtraHostsDetails[];
88
+ /**
89
+ * @public
90
+ * <p>The FireLens configuration for the container. Specifies and configures a log router for container logs.</p>
91
+ */
92
+ FirelensConfiguration?: AwsEcsTaskDefinitionContainerDefinitionsFirelensConfigurationDetails;
93
+ /**
94
+ * @public
95
+ * <p>The container health check command and associated configuration parameters for the container.</p>
96
+ */
97
+ HealthCheck?: AwsEcsTaskDefinitionContainerDefinitionsHealthCheckDetails;
98
+ /**
99
+ * @public
100
+ * <p>The hostname to use for the container.</p>
101
+ */
102
+ Hostname?: string;
103
+ /**
104
+ * @public
105
+ * <p>The image used to start the container.</p>
106
+ */
107
+ Image?: string;
108
+ /**
109
+ * @public
110
+ * <p>If set to true, then containerized applications can be deployed that require <code>stdin</code> or a <code>tty</code> to be allocated.</p>
111
+ */
112
+ Interactive?: boolean;
113
+ /**
114
+ * @public
115
+ * <p>A list of links for the container in the form <code>
116
+ * <i>container_name</i>:<i>alias</i>
117
+ * </code>. Allows containers to communicate with each other without the need for port mappings.</p>
118
+ */
119
+ Links?: string[];
120
+ /**
121
+ * @public
122
+ * <p>Linux-specific modifications that are applied to the container, such as Linux kernel capabilities.</p>
123
+ */
124
+ LinuxParameters?: AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetails;
125
+ /**
126
+ * @public
127
+ * <p>The log configuration specification for the container.</p>
128
+ */
129
+ LogConfiguration?: AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationDetails;
130
+ /**
131
+ * @public
132
+ * <p>The amount (in MiB) of memory to present to the container. If the container attempts to exceed the memory specified here, the container is shut down. The total amount of memory reserved for all containers within a task must be lower than the task memory value, if one is specified.</p>
133
+ */
134
+ Memory?: number;
135
+ /**
136
+ * @public
137
+ * <p>The soft limit (in MiB) of memory to reserve for the container.</p>
138
+ */
139
+ MemoryReservation?: number;
140
+ /**
141
+ * @public
142
+ * <p>The mount points for the data volumes in the container.</p>
143
+ */
144
+ MountPoints?: AwsEcsTaskDefinitionContainerDefinitionsMountPointsDetails[];
145
+ /**
146
+ * @public
147
+ * <p>The name of the container.</p>
148
+ */
149
+ Name?: string;
150
+ /**
151
+ * @public
152
+ * <p>The list of port mappings for the container.</p>
153
+ */
154
+ PortMappings?: AwsEcsTaskDefinitionContainerDefinitionsPortMappingsDetails[];
155
+ /**
156
+ * @public
157
+ * <p>Whether the container is given elevated privileges on the host container instance. The elevated privileges are similar to the root user.</p>
158
+ */
159
+ Privileged?: boolean;
160
+ /**
161
+ * @public
162
+ * <p>Whether to allocate a TTY to the container.</p>
163
+ */
164
+ PseudoTerminal?: boolean;
165
+ /**
166
+ * @public
167
+ * <p>Whether the container is given read-only access to its root file system.</p>
168
+ */
169
+ ReadonlyRootFilesystem?: boolean;
170
+ /**
171
+ * @public
172
+ * <p>The private repository authentication credentials to use.</p>
173
+ */
174
+ RepositoryCredentials?: AwsEcsTaskDefinitionContainerDefinitionsRepositoryCredentialsDetails;
175
+ /**
176
+ * @public
177
+ * <p>The type and amount of a resource to assign to a container. The only supported resource is a GPU.</p>
178
+ */
179
+ ResourceRequirements?: AwsEcsTaskDefinitionContainerDefinitionsResourceRequirementsDetails[];
180
+ /**
181
+ * @public
182
+ * <p>The secrets to pass to the container.</p>
183
+ */
184
+ Secrets?: AwsEcsTaskDefinitionContainerDefinitionsSecretsDetails[];
185
+ /**
186
+ * @public
187
+ * <p>The number of seconds to wait before giving up on resolving dependencies for a container. </p>
188
+ */
189
+ StartTimeout?: number;
190
+ /**
191
+ * @public
192
+ * <p>The number of seconds to wait before the container is stopped if it doesn't shut down normally on its own.</p>
193
+ */
194
+ StopTimeout?: number;
195
+ /**
196
+ * @public
197
+ * <p>A list of namespaced kernel parameters to set in the container.</p>
198
+ */
199
+ SystemControls?: AwsEcsTaskDefinitionContainerDefinitionsSystemControlsDetails[];
200
+ /**
201
+ * @public
202
+ * <p>A list of ulimits to set in the container. </p>
203
+ */
204
+ Ulimits?: AwsEcsTaskDefinitionContainerDefinitionsUlimitsDetails[];
205
+ /**
206
+ * @public
207
+ * <p>The user to use inside the container.</p>
208
+ * <p>The value can use one of the following formats.</p>
209
+ * <ul>
210
+ * <li>
211
+ * <p>
212
+ * <code>
213
+ * <i>user</i>
214
+ * </code>
215
+ * </p>
216
+ * </li>
217
+ * <li>
218
+ * <p>
219
+ * <code>
220
+ * <i>user</i>
221
+ * </code>:<code>
222
+ * <i>group</i>
223
+ * </code>
224
+ * </p>
225
+ * </li>
226
+ * <li>
227
+ * <p>
228
+ * <code>
229
+ * <i>uid</i>
230
+ * </code>
231
+ * </p>
232
+ * </li>
233
+ * <li>
234
+ * <p>
235
+ * <code>
236
+ * <i>uid</i>
237
+ * </code>:<code>
238
+ * <i>gid</i>
239
+ * </code>
240
+ * </p>
241
+ * </li>
242
+ * <li>
243
+ * <p>
244
+ * <code>
245
+ * <i>user</i>
246
+ * </code>:<code>
247
+ * <i>gid</i>
248
+ * </code>
249
+ * </p>
250
+ * </li>
251
+ * <li>
252
+ * <p>
253
+ * <code>
254
+ * <i>uid</i>
255
+ * </code>:<code>
256
+ * <i>group</i>
257
+ * </code>
258
+ * </p>
259
+ * </li>
260
+ * </ul>
261
+ */
262
+ User?: string;
263
+ /**
264
+ * @public
265
+ * <p>Data volumes to mount from another container.</p>
266
+ */
267
+ VolumesFrom?: AwsEcsTaskDefinitionContainerDefinitionsVolumesFromDetails[];
268
+ /**
269
+ * @public
270
+ * <p>The working directory in which to run commands inside the container.</p>
271
+ */
272
+ WorkingDirectory?: string;
273
+ }
274
+ /**
275
+ * @public
276
+ * <p>An Elastic Inference accelerator to use
277
+ * for the containers in the task.</p>
278
+ */
279
+ export interface AwsEcsTaskDefinitionInferenceAcceleratorsDetails {
280
+ /**
281
+ * @public
282
+ * <p>The Elastic Inference accelerator device name.</p>
283
+ */
284
+ DeviceName?: string;
285
+ /**
286
+ * @public
287
+ * <p>The Elastic Inference accelerator type to use.</p>
288
+ */
289
+ DeviceType?: string;
290
+ }
291
+ /**
292
+ * @public
293
+ * <p>A placement constraint object to use for tasks.</p>
294
+ */
295
+ export interface AwsEcsTaskDefinitionPlacementConstraintsDetails {
296
+ /**
297
+ * @public
298
+ * <p>A cluster query language expression to apply to the constraint.</p>
299
+ */
300
+ Expression?: string;
301
+ /**
302
+ * @public
303
+ * <p>The type of constraint.</p>
304
+ */
305
+ Type?: string;
306
+ }
307
+ /**
308
+ * @public
309
+ * <p>A network configuration parameter to provide to the Container Network Interface (CNI) plugin.</p>
310
+ */
311
+ export interface AwsEcsTaskDefinitionProxyConfigurationProxyConfigurationPropertiesDetails {
312
+ /**
313
+ * @public
314
+ * <p>The name of the property.</p>
315
+ */
316
+ Name?: string;
317
+ /**
318
+ * @public
319
+ * <p>The value of the property.</p>
320
+ */
321
+ Value?: string;
322
+ }
323
+ /**
324
+ * @public
325
+ * <p>The configuration details for the App Mesh
326
+ * proxy.</p>
327
+ */
328
+ export interface AwsEcsTaskDefinitionProxyConfigurationDetails {
329
+ /**
330
+ * @public
331
+ * <p>The name of the container that will serve as the App Mesh proxy.</p>
332
+ */
333
+ ContainerName?: string;
334
+ /**
335
+ * @public
336
+ * <p>The set of network configuration parameters to provide to the Container Network Interface (CNI) plugin, specified as key-value pairs.</p>
337
+ */
338
+ ProxyConfigurationProperties?: AwsEcsTaskDefinitionProxyConfigurationProxyConfigurationPropertiesDetails[];
339
+ /**
340
+ * @public
341
+ * <p>The proxy type.</p>
342
+ */
343
+ Type?: string;
344
+ }
345
+ /**
346
+ * @public
347
+ * <p>Information about a Docker volume.</p>
348
+ */
349
+ export interface AwsEcsTaskDefinitionVolumesDockerVolumeConfigurationDetails {
350
+ /**
351
+ * @public
352
+ * <p>Whether to create the Docker volume automatically if it does not already exist.</p>
353
+ */
354
+ Autoprovision?: boolean;
355
+ /**
356
+ * @public
357
+ * <p>The Docker volume driver to use.</p>
358
+ */
359
+ Driver?: string;
360
+ /**
361
+ * @public
362
+ * <p>A map of Docker driver-specific options that are passed through.</p>
363
+ */
364
+ DriverOpts?: Record<string, string>;
365
+ /**
366
+ * @public
367
+ * <p>Custom metadata to add to the Docker volume.</p>
368
+ */
369
+ Labels?: Record<string, string>;
370
+ /**
371
+ * @public
372
+ * <p>The scope for the Docker volume that determines its lifecycle. Docker volumes that are scoped to a task are provisioned
373
+ * automatically when the task starts and destroyed when the task stops. Docker volumes that are shared persist after the task stops. Valid values are <code>shared</code> or <code>task</code>.</p>
374
+ */
375
+ Scope?: string;
376
+ }
377
+ /**
378
+ * @public
379
+ * <p></p>
380
+ */
381
+ export interface AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationAuthorizationConfigDetails {
382
+ /**
383
+ * @public
384
+ * <p>The Amazon EFS access point identifier to use.</p>
385
+ */
386
+ AccessPointId?: string;
387
+ /**
388
+ * @public
389
+ * <p>Whether to use the Amazon ECS task IAM role defined in a task definition when mounting the Amazon EFS file system.</p>
390
+ */
391
+ Iam?: string;
392
+ }
393
+ /**
394
+ * @public
395
+ * <p>Information about the Amazon Elastic File System file system that is used for task storage.</p>
396
+ */
397
+ export interface AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationDetails {
398
+ /**
399
+ * @public
400
+ * <p>The authorization configuration details for the Amazon EFS file system.</p>
401
+ */
402
+ AuthorizationConfig?: AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationAuthorizationConfigDetails;
403
+ /**
404
+ * @public
405
+ * <p>The Amazon EFS file system identifier to use.</p>
406
+ */
407
+ FilesystemId?: string;
408
+ /**
409
+ * @public
410
+ * <p>The directory within the Amazon EFS file system to mount as the root directory inside the host.</p>
411
+ */
412
+ RootDirectory?: string;
413
+ /**
414
+ * @public
415
+ * <p>Whether to enable encryption for Amazon EFS data in transit between the Amazon ECS host and the Amazon EFS server. </p>
416
+ */
417
+ TransitEncryption?: string;
418
+ /**
419
+ * @public
420
+ * <p>The port to use when sending encrypted data between the Amazon ECS host and the Amazon EFS server.</p>
421
+ */
422
+ TransitEncryptionPort?: number;
423
+ }
2
424
  /**
3
425
  * @public
4
426
  * <p>Information about a bind mount host volume.</p>
@@ -3189,7 +3611,7 @@ export interface AwsMskClusterClusterInfoEncryptionInfoDetails {
3189
3611
  /**
3190
3612
  * @public
3191
3613
  * <p>
3192
- * Provide details about an Amazon MSK cluster.</p>
3614
+ * Provide details about an Amazon Managed Streaming for Apache Kafka (Amazon MSK) cluster.</p>
3193
3615
  */
3194
3616
  export interface AwsMskClusterClusterInfoDetails {
3195
3617
  /**
@@ -3202,7 +3624,7 @@ export interface AwsMskClusterClusterInfoDetails {
3202
3624
  /**
3203
3625
  * @public
3204
3626
  * <p>
3205
- * The current version of the MSK cluster.</p>
3627
+ * The current version of the cluster.</p>
3206
3628
  */
3207
3629
  CurrentVersion?: string;
3208
3630
  /**
@@ -3223,6 +3645,13 @@ export interface AwsMskClusterClusterInfoDetails {
3223
3645
  * Provides information for different modes of client authentication.</p>
3224
3646
  */
3225
3647
  ClientAuthentication?: AwsMskClusterClusterInfoClientAuthenticationDetails;
3648
+ /**
3649
+ * @public
3650
+ * <p>
3651
+ * Specifies the level of monitoring for the cluster.
3652
+ * </p>
3653
+ */
3654
+ EnhancedMonitoring?: string;
3226
3655
  }
3227
3656
  /**
3228
3657
  * @public
@@ -6662,6 +7091,84 @@ export interface AwsS3AccountPublicAccessBlockDetails {
6662
7091
  */
6663
7092
  RestrictPublicBuckets?: boolean;
6664
7093
  }
7094
+ /**
7095
+ * @public
7096
+ * <p>
7097
+ * The virtual private cloud (VPC) configuration for an Amazon S3 access point.
7098
+ * </p>
7099
+ */
7100
+ export interface AwsS3AccessPointVpcConfigurationDetails {
7101
+ /**
7102
+ * @public
7103
+ * <p>
7104
+ * If this field is specified, this access point will only allow connections from the specified VPC ID.
7105
+ * </p>
7106
+ */
7107
+ VpcId?: string;
7108
+ }
7109
+ /**
7110
+ * @public
7111
+ * <p>
7112
+ * Returns configuration information about the specified Amazon S3 access point. S3 access points are named
7113
+ * network endpoints that are attached to buckets that you can use to perform S3 object operations.
7114
+ * </p>
7115
+ */
7116
+ export interface AwsS3AccessPointDetails {
7117
+ /**
7118
+ * @public
7119
+ * <p>
7120
+ * The Amazon Resource Name (ARN) of the access point.
7121
+ * </p>
7122
+ */
7123
+ AccessPointArn?: string;
7124
+ /**
7125
+ * @public
7126
+ * <p>
7127
+ * The name or alias of the access point.
7128
+ * </p>
7129
+ */
7130
+ Alias?: string;
7131
+ /**
7132
+ * @public
7133
+ * <p>
7134
+ * The name of the S3 bucket associated with the specified access point.
7135
+ * </p>
7136
+ */
7137
+ Bucket?: string;
7138
+ /**
7139
+ * @public
7140
+ * <p>
7141
+ * The Amazon Web Services account ID associated with the S3 bucket associated with this access point.
7142
+ * </p>
7143
+ */
7144
+ BucketAccountId?: string;
7145
+ /**
7146
+ * @public
7147
+ * <p>
7148
+ * The name of the specified access point.
7149
+ * </p>
7150
+ */
7151
+ Name?: string;
7152
+ /**
7153
+ * @public
7154
+ * <p>
7155
+ * Indicates whether this access point allows access from the public internet.
7156
+ * </p>
7157
+ */
7158
+ NetworkOrigin?: string;
7159
+ /**
7160
+ * @public
7161
+ * <p>provides information about the Amazon S3 Public Access Block configuration for accounts.</p>
7162
+ */
7163
+ PublicAccessBlockConfiguration?: AwsS3AccountPublicAccessBlockDetails;
7164
+ /**
7165
+ * @public
7166
+ * <p>
7167
+ * Contains the virtual private cloud (VPC) configuration for the specified access point.
7168
+ * </p>
7169
+ */
7170
+ VpcConfiguration?: AwsS3AccessPointVpcConfigurationDetails;
7171
+ }
6665
7172
  /**
6666
7173
  * @public
6667
7174
  * <p>Information about what Amazon S3
@@ -7278,7 +7785,7 @@ export interface AwsS3BucketServerSideEncryptionConfiguration {
7278
7785
  }
7279
7786
  /**
7280
7787
  * @public
7281
- * <p>The details of an Amazon S3 bucket.</p>
7788
+ * <p>The details of an Amazon Simple Storage Service (Amazon S3) bucket.</p>
7282
7789
  */
7283
7790
  export interface AwsS3BucketDetails {
7284
7791
  /**
@@ -7311,7 +7818,7 @@ export interface AwsS3BucketDetails {
7311
7818
  ServerSideEncryptionConfiguration?: AwsS3BucketServerSideEncryptionConfiguration;
7312
7819
  /**
7313
7820
  * @public
7314
- * <p>The lifecycle configuration for objects in the S3 bucket.</p>
7821
+ * <p>The lifecycle configuration for objects in the specified bucket.</p>
7315
7822
  */
7316
7823
  BucketLifecycleConfiguration?: AwsS3BucketBucketLifecycleConfigurationDetails;
7317
7824
  /**
@@ -7347,10 +7854,17 @@ export interface AwsS3BucketDetails {
7347
7854
  /**
7348
7855
  * @public
7349
7856
  * <p>
7350
- * Specifies which rule Amazon S3 applies by default to every new object placed in the specified bucket.
7857
+ * Specifies which rule Amazon S3 applies by default to every new object placed in the bucket.
7351
7858
  * </p>
7352
7859
  */
7353
7860
  ObjectLockConfiguration?: AwsS3BucketObjectLockConfiguration;
7861
+ /**
7862
+ * @public
7863
+ * <p>
7864
+ * The name of the bucket.
7865
+ * </p>
7866
+ */
7867
+ Name?: string;
7354
7868
  }
7355
7869
  /**
7356
7870
  * @public
@@ -9295,302 +9809,3 @@ export interface AwsWafRegionalWebAclRulesListOverrideActionDetails {
9295
9809
  */
9296
9810
  Type?: string;
9297
9811
  }
9298
- /**
9299
- * @public
9300
- * <p>A combination of <code>ByteMatchSet</code>, <code>IPSet</code>, and/or <code>SqlInjectionMatchSet</code>
9301
- * objects that identify the web requests that you want to allow, block, or count.
9302
- * </p>
9303
- */
9304
- export interface AwsWafRegionalWebAclRulesListDetails {
9305
- /**
9306
- * @public
9307
- * <p>The action that WAF takes when a web request matches all conditions in the rule, such as allow,
9308
- * block, or count the request.
9309
- * </p>
9310
- */
9311
- Action?: AwsWafRegionalWebAclRulesListActionDetails;
9312
- /**
9313
- * @public
9314
- * <p>Overrides the rule evaluation result in the rule group.
9315
- * </p>
9316
- */
9317
- OverrideAction?: AwsWafRegionalWebAclRulesListOverrideActionDetails;
9318
- /**
9319
- * @public
9320
- * <p>The order in which WAF evaluates the rules in a web ACL.
9321
- * </p>
9322
- */
9323
- Priority?: number;
9324
- /**
9325
- * @public
9326
- * <p>The ID of an WAF Regional rule to associate with a web ACL. </p>
9327
- */
9328
- RuleId?: string;
9329
- /**
9330
- * @public
9331
- * <p>For actions that are associated with a rule, the action that WAF takes when a web
9332
- * request matches all conditions in a rule.
9333
- * </p>
9334
- */
9335
- Type?: string;
9336
- }
9337
- /**
9338
- * @public
9339
- * <p>Provides information about the web access control list (web ACL). The web ACL contains the rules that identify the requests that you
9340
- * want to allow, block, or count. </p>
9341
- */
9342
- export interface AwsWafRegionalWebAclDetails {
9343
- /**
9344
- * @public
9345
- * <p>The action to perform if none of the rules contained in the web ACL match.
9346
- * </p>
9347
- */
9348
- DefaultAction?: string;
9349
- /**
9350
- * @public
9351
- * <p>A name for the metrics for this web ACL.
9352
- * </p>
9353
- */
9354
- MetricName?: string;
9355
- /**
9356
- * @public
9357
- * <p>A descriptive name for the web ACL.
9358
- * </p>
9359
- */
9360
- Name?: string;
9361
- /**
9362
- * @public
9363
- * <p>An array that contains the action for each rule in a web ACL, the priority of the rule, and the ID of
9364
- * the rule.
9365
- * </p>
9366
- */
9367
- RulesList?: AwsWafRegionalWebAclRulesListDetails[];
9368
- /**
9369
- * @public
9370
- * <p>The ID of the web ACL.
9371
- * </p>
9372
- */
9373
- WebAclId?: string;
9374
- }
9375
- /**
9376
- * @public
9377
- * <p>Provides details about the <code>ByteMatchSet</code>, <code>IPSet</code>, <code>SqlInjectionMatchSet</code>, <code>XssMatchSet</code>,
9378
- * <code>RegexMatchSet</code>, <code>GeoMatchSet</code>, and <code>SizeConstraintSet</code> objects that you want to add to a rule and,
9379
- * for each object, indicates whether you want to negate the settings.
9380
- * </p>
9381
- */
9382
- export interface AwsWafRulePredicateListDetails {
9383
- /**
9384
- * @public
9385
- * <p>A unique identifier for a predicate in a rule, such as <code>ByteMatchSetId</code> or <code>IPSetId</code>.
9386
- * </p>
9387
- */
9388
- DataId?: string;
9389
- /**
9390
- * @public
9391
- * <p>Specifies if you want WAF to allow, block, or count requests based on the settings in the
9392
- * <code>ByteMatchSet</code>, <code>IPSet</code>, <code>SqlInjectionMatchSet</code>, <code>XssMatchSet</code>,
9393
- * <code>RegexMatchSet</code>, <code>GeoMatchSet</code>, or <code>SizeConstraintSet</code>.
9394
- * </p>
9395
- */
9396
- Negated?: boolean;
9397
- /**
9398
- * @public
9399
- * <p>The type of predicate in a rule, such as <code>ByteMatch</code> or <code>IPSet</code>.
9400
- * </p>
9401
- */
9402
- Type?: string;
9403
- }
9404
- /**
9405
- * @public
9406
- * <p>Provides information about a WAF rule. This rule specifies the web requests that you want to allow, block, or count.
9407
- * </p>
9408
- */
9409
- export interface AwsWafRuleDetails {
9410
- /**
9411
- * @public
9412
- * <p>The name of the metrics for this rule.
9413
- * </p>
9414
- */
9415
- MetricName?: string;
9416
- /**
9417
- * @public
9418
- * <p>A descriptive name for the rule.
9419
- * </p>
9420
- */
9421
- Name?: string;
9422
- /**
9423
- * @public
9424
- * <p>Specifies the <code>ByteMatchSet</code>, <code>IPSet</code>, <code>SqlInjectionMatchSet</code>, <code>XssMatchSet</code>,
9425
- * <code>RegexMatchSet</code>, <code>GeoMatchSet</code>, and <code>SizeConstraintSet</code> objects that you want to add to a rule and,
9426
- * for each object, indicates whether you want to negate the settings.
9427
- * </p>
9428
- */
9429
- PredicateList?: AwsWafRulePredicateListDetails[];
9430
- /**
9431
- * @public
9432
- * <p>The ID of the WAF rule.
9433
- * </p>
9434
- */
9435
- RuleId?: string;
9436
- }
9437
- /**
9438
- * @public
9439
- * <p>Provides information about what action WAF should take on a web request when it matches the criteria defined in the rule.
9440
- * </p>
9441
- */
9442
- export interface AwsWafRuleGroupRulesActionDetails {
9443
- /**
9444
- * @public
9445
- * <p>The action that WAF should take on a web request when it matches the rule's
9446
- * statement.</p>
9447
- */
9448
- Type?: string;
9449
- }
9450
- /**
9451
- * @public
9452
- * <p>Provides information about the rules attached to the rule group. These rules identify the web requests that you want to
9453
- * allow, block, or count.
9454
- * </p>
9455
- */
9456
- export interface AwsWafRuleGroupRulesDetails {
9457
- /**
9458
- * @public
9459
- * <p>Provides information about what action WAF should take on a web request when it matches the criteria defined in the rule.
9460
- * </p>
9461
- */
9462
- Action?: AwsWafRuleGroupRulesActionDetails;
9463
- /**
9464
- * @public
9465
- * <p>If you define more than one rule in a web ACL, WAF evaluates each request against the rules in order
9466
- * based on the value of <code>Priority</code>.</p>
9467
- */
9468
- Priority?: number;
9469
- /**
9470
- * @public
9471
- * <p>The rule ID for a rule.
9472
- * </p>
9473
- */
9474
- RuleId?: string;
9475
- /**
9476
- * @public
9477
- * <p>The type of rule.
9478
- * </p>
9479
- */
9480
- Type?: string;
9481
- }
9482
- /**
9483
- * @public
9484
- * <p>Provides information about an WAF rule group. A rule group is a collection of rules for inspecting and controlling web requests.
9485
- * </p>
9486
- */
9487
- export interface AwsWafRuleGroupDetails {
9488
- /**
9489
- * @public
9490
- * <p>The name of the metrics for this rule group.
9491
- * </p>
9492
- */
9493
- MetricName?: string;
9494
- /**
9495
- * @public
9496
- * <p>The name of the rule group.
9497
- * </p>
9498
- */
9499
- Name?: string;
9500
- /**
9501
- * @public
9502
- * <p>The ID of the rule group.
9503
- * </p>
9504
- */
9505
- RuleGroupId?: string;
9506
- /**
9507
- * @public
9508
- * <p>Provides information about the rules attached to the rule group. These rules identify the web requests that you want to
9509
- * allow, block, or count.
9510
- * </p>
9511
- */
9512
- Rules?: AwsWafRuleGroupRulesDetails[];
9513
- }
9514
- /**
9515
- * @public
9516
- * <p>
9517
- * A custom header for custom request and response handling.
9518
- * </p>
9519
- */
9520
- export interface AwsWafv2CustomHttpHeader {
9521
- /**
9522
- * @public
9523
- * <p>
9524
- * The name of the custom header.
9525
- * </p>
9526
- */
9527
- Name?: string;
9528
- /**
9529
- * @public
9530
- * <p>
9531
- * The value of the custom header.
9532
- * </p>
9533
- */
9534
- Value?: string;
9535
- }
9536
- /**
9537
- * @public
9538
- * <p>
9539
- * Custom request handling behavior that inserts custom headers into a web request. WAF uses custom request handling when the rule action doesn't block the request.
9540
- * </p>
9541
- */
9542
- export interface AwsWafv2CustomRequestHandlingDetails {
9543
- /**
9544
- * @public
9545
- * <p>
9546
- * The HTTP headers to insert into the request.
9547
- * </p>
9548
- */
9549
- InsertHeaders?: AwsWafv2CustomHttpHeader[];
9550
- }
9551
- /**
9552
- * @public
9553
- * <p>
9554
- * Specifies that WAF should allow the request and optionally defines additional custom handling for the request.
9555
- * </p>
9556
- */
9557
- export interface AwsWafv2ActionAllowDetails {
9558
- /**
9559
- * @public
9560
- * <p>
9561
- * Defines custom handling for the web request. For information about customizing web requests and responses, see
9562
- * <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>.
9563
- * </p>
9564
- */
9565
- CustomRequestHandling?: AwsWafv2CustomRequestHandlingDetails;
9566
- }
9567
- /**
9568
- * @public
9569
- * <p>
9570
- * A custom response to send to the client. You can define a custom response for rule actions and default web ACL actions that are set to block.
9571
- * </p>
9572
- */
9573
- export interface AwsWafv2CustomResponseDetails {
9574
- /**
9575
- * @public
9576
- * <p>
9577
- * References the response body that you want WAF to return to the web request client. You can define a custom response for a rule action or a default web ACL action that is set to block.
9578
- * </p>
9579
- */
9580
- CustomResponseBodyKey?: string;
9581
- /**
9582
- * @public
9583
- * <p>
9584
- * The HTTP status code to return to the client. For a list of status codes that you can use in your custom responses, see
9585
- * <a href="https://docs.aws.amazon.com/waf/latest/developerguide/customizing-the-response-status-codes.html">Supported status codes for custom response</a> in the <i>WAF Developer Guide.</i>
9586
- * </p>
9587
- */
9588
- ResponseCode?: number;
9589
- /**
9590
- * @public
9591
- * <p>
9592
- * The HTTP headers to use in the response.
9593
- * </p>
9594
- */
9595
- ResponseHeaders?: AwsWafv2CustomHttpHeader[];
9596
- }