@aws-sdk/client-wafv2 3.437.0 → 3.441.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,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.defaultEndpointResolver = void 0;
4
- const util_endpoints_1 = require("@aws-sdk/util-endpoints");
4
+ const util_endpoints_1 = require("@smithy/util-endpoints");
5
5
  const ruleset_1 = require("./ruleset");
6
6
  const defaultEndpointResolver = (endpointParams, context = {}) => {
7
7
  return (0, util_endpoints_1.resolveEndpoint)(ruleset_1.ruleSet, {
package/dist-cjs/index.js CHANGED
@@ -6,5 +6,6 @@ tslib_1.__exportStar(require("./WAFV2Client"), exports);
6
6
  tslib_1.__exportStar(require("./WAFV2"), exports);
7
7
  tslib_1.__exportStar(require("./commands"), exports);
8
8
  tslib_1.__exportStar(require("./models"), exports);
9
+ require("@aws-sdk/util-endpoints");
9
10
  var WAFV2ServiceException_1 = require("./models/WAFV2ServiceException");
10
11
  Object.defineProperty(exports, "WAFV2ServiceException", { enumerable: true, get: function () { return WAFV2ServiceException_1.WAFV2ServiceException; } });
@@ -1,4 +1,4 @@
1
- import { resolveEndpoint } from "@aws-sdk/util-endpoints";
1
+ import { resolveEndpoint } from "@smithy/util-endpoints";
2
2
  import { ruleSet } from "./ruleset";
3
3
  export const defaultEndpointResolver = (endpointParams, context = {}) => {
4
4
  return resolveEndpoint(ruleSet, {
package/dist-es/index.js CHANGED
@@ -2,4 +2,5 @@ export * from "./WAFV2Client";
2
2
  export * from "./WAFV2";
3
3
  export * from "./commands";
4
4
  export * from "./models";
5
+ import "@aws-sdk/util-endpoints";
5
6
  export { WAFV2ServiceException } from "./models/WAFV2ServiceException";
@@ -28,7 +28,30 @@ export interface AssociateWebACLCommandOutput extends AssociateWebACLResponse, _
28
28
  * <p>For Amazon CloudFront, don't use this call. Instead, use your CloudFront distribution configuration. To
29
29
  * associate a web ACL, in the CloudFront call <code>UpdateDistribution</code>, set the web ACL ID
30
30
  * to the Amazon Resource Name (ARN) of the web ACL. For information, see <a href="https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_UpdateDistribution.html">UpdateDistribution</a> in the <i>Amazon CloudFront Developer Guide</i>. </p>
31
- * <p>When you make changes to web ACLs or web ACL components, like rules and rule groups, WAF propagates the changes everywhere that the web ACL and its components are stored and used. Your changes are applied within seconds, but there might be a brief period of inconsistency when the changes have arrived in some places and not in others. So, for example, if you change a rule action setting, the action might be the old action in one area and the new action in another area. Or if you add an IP address to an IP set used in a blocking rule, the new address might briefly be blocked in one area while still allowed in another. This temporary inconsistency can occur when you first associate a web ACL with an Amazon Web Services resource and when you change a web ACL that is already associated with a resource. Generally, any inconsistencies of this type last only a few seconds.</p>
31
+ * <p>
32
+ * <b>Required permissions for customer-managed IAM policies</b>
33
+ * </p>
34
+ * <p>This call requires permissions that are specific to the protected resource type.
35
+ * For details, see <a href="https://docs.aws.amazon.com/waf/latest/developerguide/security_iam_service-with-iam.html#security_iam_action-AssociateWebACL">Permissions for AssociateWebACL</a> in the <i>WAF Developer Guide</i>. </p>
36
+ * <p>
37
+ * <b>Temporary inconsistencies during updates</b>
38
+ * </p>
39
+ * <p>When you create or change a web ACL or other WAF resources, the changes take a small amount of time to propagate to all areas where the resources are stored. The propagation time can be from a few seconds to a number of minutes. </p>
40
+ * <p>The following are examples of the temporary inconsistencies that you might notice during change propagation: </p>
41
+ * <ul>
42
+ * <li>
43
+ * <p>After you create a web ACL, if you try to associate it with a resource, you might get an exception indicating that the web ACL is unavailable. </p>
44
+ * </li>
45
+ * <li>
46
+ * <p>After you add a rule group to a web ACL, the new rule group rules might be in effect in one area where the web ACL is used and not in another.</p>
47
+ * </li>
48
+ * <li>
49
+ * <p>After you change a rule action setting, you might see the old action in some places and the new action in others. </p>
50
+ * </li>
51
+ * <li>
52
+ * <p>After you add an IP address to an IP set that is in use in a blocking rule, the new address might be blocked in one area while still allowed in another.</p>
53
+ * </li>
54
+ * </ul>
32
55
  * @example
33
56
  * Use a bare-bones client and the command you need to make an API call.
34
57
  * ```javascript
@@ -28,6 +28,11 @@ export interface DisassociateWebACLCommandOutput extends DisassociateWebACLRespo
28
28
  * <p>For Amazon CloudFront, don't use this call. Instead, use your CloudFront distribution configuration. To
29
29
  * disassociate a web ACL, provide an empty web ACL ID in the CloudFront call
30
30
  * <code>UpdateDistribution</code>. For information, see <a href="https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_UpdateDistribution.html">UpdateDistribution</a> in the <i>Amazon CloudFront API Reference</i>. </p>
31
+ * <p>
32
+ * <b>Required permissions for customer-managed IAM policies</b>
33
+ * </p>
34
+ * <p>This call requires permissions that are specific to the protected resource type.
35
+ * For details, see <a href="https://docs.aws.amazon.com/waf/latest/developerguide/security_iam_service-with-iam.html#security_iam_action-DisassociateWebACL">Permissions for DisassociateWebACL</a> in the <i>WAF Developer Guide</i>.</p>
31
36
  * @example
32
37
  * Use a bare-bones client and the command you need to make an API call.
33
38
  * ```javascript
@@ -24,6 +24,16 @@ export interface GetWebACLForResourceCommandOutput extends GetWebACLForResourceR
24
24
  /**
25
25
  * @public
26
26
  * <p>Retrieves the <a>WebACL</a> for the specified resource. </p>
27
+ * <p>This call uses <code>GetWebACL</code>, to verify that your account has permission to access the retrieved web ACL.
28
+ * If you get an error that indicates that your account isn't authorized to perform <code>wafv2:GetWebACL</code> on the resource,
29
+ * that error won't be included in your CloudTrail event history. </p>
30
+ * <p>For Amazon CloudFront, don't use this call. Instead, call the CloudFront action
31
+ * <code>GetDistributionConfig</code>. For information, see <a href="https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_GetDistributionConfig.html">GetDistributionConfig</a> in the <i>Amazon CloudFront API Reference</i>. </p>
32
+ * <p>
33
+ * <b>Required permissions for customer-managed IAM policies</b>
34
+ * </p>
35
+ * <p>This call requires permissions that are specific to the protected resource type.
36
+ * For details, see <a href="https://docs.aws.amazon.com/waf/latest/developerguide/security_iam_service-with-iam.html#security_iam_action-GetWebACLForResource">Permissions for GetWebACLForResource</a> in the <i>WAF Developer Guide</i>.</p>
27
37
  * @example
28
38
  * Use a bare-bones client and the command you need to make an API call.
29
39
  * ```javascript
@@ -24,8 +24,15 @@ export interface ListResourcesForWebACLCommandOutput extends ListResourcesForWeb
24
24
  /**
25
25
  * @public
26
26
  * <p>Retrieves an array of the Amazon Resource Names (ARNs) for the regional resources that
27
- * are associated with the specified web ACL. If you want the list of Amazon CloudFront resources, use
28
- * the CloudFront call <code>ListDistributionsByWebACLId</code>. </p>
27
+ * are associated with the specified web ACL. </p>
28
+ * <p>For Amazon CloudFront, don't use this call. Instead, use the CloudFront call
29
+ * <code>ListDistributionsByWebACLId</code>. For information, see <a href="https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_ListDistributionsByWebACLId.html">ListDistributionsByWebACLId</a>
30
+ * in the <i>Amazon CloudFront API Reference</i>. </p>
31
+ * <p>
32
+ * <b>Required permissions for customer-managed IAM policies</b>
33
+ * </p>
34
+ * <p>This call requires permissions that are specific to the protected resource type.
35
+ * For details, see <a href="https://docs.aws.amazon.com/waf/latest/developerguide/security_iam_service-with-iam.html#security_iam_action-ListResourcesForWebACL">Permissions for ListResourcesForWebACL</a> in the <i>WAF Developer Guide</i>.</p>
29
36
  * @example
30
37
  * Use a bare-bones client and the command you need to make an API call.
31
38
  * ```javascript
@@ -40,7 +40,25 @@ export interface UpdateIPSetCommandOutput extends UpdateIPSetResponse, __Metadat
40
40
  * </li>
41
41
  * </ol>
42
42
  * </note>
43
- * <p>When you make changes to web ACLs or web ACL components, like rules and rule groups, WAF propagates the changes everywhere that the web ACL and its components are stored and used. Your changes are applied within seconds, but there might be a brief period of inconsistency when the changes have arrived in some places and not in others. So, for example, if you change a rule action setting, the action might be the old action in one area and the new action in another area. Or if you add an IP address to an IP set used in a blocking rule, the new address might briefly be blocked in one area while still allowed in another. This temporary inconsistency can occur when you first associate a web ACL with an Amazon Web Services resource and when you change a web ACL that is already associated with a resource. Generally, any inconsistencies of this type last only a few seconds.</p>
43
+ * <p>
44
+ * <b>Temporary inconsistencies during updates</b>
45
+ * </p>
46
+ * <p>When you create or change a web ACL or other WAF resources, the changes take a small amount of time to propagate to all areas where the resources are stored. The propagation time can be from a few seconds to a number of minutes. </p>
47
+ * <p>The following are examples of the temporary inconsistencies that you might notice during change propagation: </p>
48
+ * <ul>
49
+ * <li>
50
+ * <p>After you create a web ACL, if you try to associate it with a resource, you might get an exception indicating that the web ACL is unavailable. </p>
51
+ * </li>
52
+ * <li>
53
+ * <p>After you add a rule group to a web ACL, the new rule group rules might be in effect in one area where the web ACL is used and not in another.</p>
54
+ * </li>
55
+ * <li>
56
+ * <p>After you change a rule action setting, you might see the old action in some places and the new action in others. </p>
57
+ * </li>
58
+ * <li>
59
+ * <p>After you add an IP address to an IP set that is in use in a blocking rule, the new address might be blocked in one area while still allowed in another.</p>
60
+ * </li>
61
+ * </ul>
44
62
  * @example
45
63
  * Use a bare-bones client and the command you need to make an API call.
46
64
  * ```javascript
@@ -40,7 +40,25 @@ export interface UpdateRegexPatternSetCommandOutput extends UpdateRegexPatternSe
40
40
  * </li>
41
41
  * </ol>
42
42
  * </note>
43
- * <p>When you make changes to web ACLs or web ACL components, like rules and rule groups, WAF propagates the changes everywhere that the web ACL and its components are stored and used. Your changes are applied within seconds, but there might be a brief period of inconsistency when the changes have arrived in some places and not in others. So, for example, if you change a rule action setting, the action might be the old action in one area and the new action in another area. Or if you add an IP address to an IP set used in a blocking rule, the new address might briefly be blocked in one area while still allowed in another. This temporary inconsistency can occur when you first associate a web ACL with an Amazon Web Services resource and when you change a web ACL that is already associated with a resource. Generally, any inconsistencies of this type last only a few seconds.</p>
43
+ * <p>
44
+ * <b>Temporary inconsistencies during updates</b>
45
+ * </p>
46
+ * <p>When you create or change a web ACL or other WAF resources, the changes take a small amount of time to propagate to all areas where the resources are stored. The propagation time can be from a few seconds to a number of minutes. </p>
47
+ * <p>The following are examples of the temporary inconsistencies that you might notice during change propagation: </p>
48
+ * <ul>
49
+ * <li>
50
+ * <p>After you create a web ACL, if you try to associate it with a resource, you might get an exception indicating that the web ACL is unavailable. </p>
51
+ * </li>
52
+ * <li>
53
+ * <p>After you add a rule group to a web ACL, the new rule group rules might be in effect in one area where the web ACL is used and not in another.</p>
54
+ * </li>
55
+ * <li>
56
+ * <p>After you change a rule action setting, you might see the old action in some places and the new action in others. </p>
57
+ * </li>
58
+ * <li>
59
+ * <p>After you add an IP address to an IP set that is in use in a blocking rule, the new address might be blocked in one area while still allowed in another.</p>
60
+ * </li>
61
+ * </ul>
44
62
  * @example
45
63
  * Use a bare-bones client and the command you need to make an API call.
46
64
  * ```javascript
@@ -40,8 +40,26 @@ export interface UpdateRuleGroupCommandOutput extends UpdateRuleGroupResponse, _
40
40
  * </li>
41
41
  * </ol>
42
42
  * </note>
43
- * <p>When you make changes to web ACLs or web ACL components, like rules and rule groups, WAF propagates the changes everywhere that the web ACL and its components are stored and used. Your changes are applied within seconds, but there might be a brief period of inconsistency when the changes have arrived in some places and not in others. So, for example, if you change a rule action setting, the action might be the old action in one area and the new action in another area. Or if you add an IP address to an IP set used in a blocking rule, the new address might briefly be blocked in one area while still allowed in another. This temporary inconsistency can occur when you first associate a web ACL with an Amazon Web Services resource and when you change a web ACL that is already associated with a resource. Generally, any inconsistencies of this type last only a few seconds.</p>
44
43
  * <p> A rule group defines a collection of rules to inspect and control web requests that you can use in a <a>WebACL</a>. When you create a rule group, you define an immutable capacity limit. If you update a rule group, you must stay within the capacity. This allows others to reuse the rule group with confidence in its capacity requirements. </p>
44
+ * <p>
45
+ * <b>Temporary inconsistencies during updates</b>
46
+ * </p>
47
+ * <p>When you create or change a web ACL or other WAF resources, the changes take a small amount of time to propagate to all areas where the resources are stored. The propagation time can be from a few seconds to a number of minutes. </p>
48
+ * <p>The following are examples of the temporary inconsistencies that you might notice during change propagation: </p>
49
+ * <ul>
50
+ * <li>
51
+ * <p>After you create a web ACL, if you try to associate it with a resource, you might get an exception indicating that the web ACL is unavailable. </p>
52
+ * </li>
53
+ * <li>
54
+ * <p>After you add a rule group to a web ACL, the new rule group rules might be in effect in one area where the web ACL is used and not in another.</p>
55
+ * </li>
56
+ * <li>
57
+ * <p>After you change a rule action setting, you might see the old action in some places and the new action in others. </p>
58
+ * </li>
59
+ * <li>
60
+ * <p>After you add an IP address to an IP set that is in use in a blocking rule, the new address might be blocked in one area while still allowed in another.</p>
61
+ * </li>
62
+ * </ul>
45
63
  * @example
46
64
  * Use a bare-bones client and the command you need to make an API call.
47
65
  * ```javascript
@@ -41,8 +41,26 @@ export interface UpdateWebACLCommandOutput extends UpdateWebACLResponse, __Metad
41
41
  * </li>
42
42
  * </ol>
43
43
  * </note>
44
- * <p>When you make changes to web ACLs or web ACL components, like rules and rule groups, WAF propagates the changes everywhere that the web ACL and its components are stored and used. Your changes are applied within seconds, but there might be a brief period of inconsistency when the changes have arrived in some places and not in others. So, for example, if you change a rule action setting, the action might be the old action in one area and the new action in another area. Or if you add an IP address to an IP set used in a blocking rule, the new address might briefly be blocked in one area while still allowed in another. This temporary inconsistency can occur when you first associate a web ACL with an Amazon Web Services resource and when you change a web ACL that is already associated with a resource. Generally, any inconsistencies of this type last only a few seconds.</p>
45
44
  * <p> A web ACL defines a collection of rules to use to inspect and control web requests. Each rule has a statement that defines what to look for in web requests and an action that WAF applies to requests that match the statement. In the web ACL, you assign a default action to take (allow, block) for any request that does not match any of the rules. The rules in a web ACL can be a combination of the types <a>Rule</a>, <a>RuleGroup</a>, and managed rule group. You can associate a web ACL with one or more Amazon Web Services resources to protect. The resources can be an Amazon CloudFront distribution, an Amazon API Gateway REST API, an Application Load Balancer, an AppSync GraphQL API, an Amazon Cognito user pool, an App Runner service, or an Amazon Web Services Verified Access instance. </p>
45
+ * <p>
46
+ * <b>Temporary inconsistencies during updates</b>
47
+ * </p>
48
+ * <p>When you create or change a web ACL or other WAF resources, the changes take a small amount of time to propagate to all areas where the resources are stored. The propagation time can be from a few seconds to a number of minutes. </p>
49
+ * <p>The following are examples of the temporary inconsistencies that you might notice during change propagation: </p>
50
+ * <ul>
51
+ * <li>
52
+ * <p>After you create a web ACL, if you try to associate it with a resource, you might get an exception indicating that the web ACL is unavailable. </p>
53
+ * </li>
54
+ * <li>
55
+ * <p>After you add a rule group to a web ACL, the new rule group rules might be in effect in one area where the web ACL is used and not in another.</p>
56
+ * </li>
57
+ * <li>
58
+ * <p>After you change a rule action setting, you might see the old action in some places and the new action in others. </p>
59
+ * </li>
60
+ * <li>
61
+ * <p>After you add an IP address to an IP set that is in use in a blocking rule, the new address might be blocked in one area while still allowed in another.</p>
62
+ * </li>
63
+ * </ul>
46
64
  * @example
47
65
  * Use a bare-bones client and the command you need to make an API call.
48
66
  * ```javascript
@@ -65,4 +65,5 @@ export * from "./WAFV2";
65
65
  export { ClientInputEndpointParameters } from "./endpoint/EndpointParameters";
66
66
  export * from "./commands";
67
67
  export * from "./models";
68
+ import "@aws-sdk/util-endpoints";
68
69
  export { WAFV2ServiceException } from "./models/WAFV2ServiceException";
@@ -245,7 +245,12 @@ export interface Cookies {
245
245
  /**
246
246
  * @public
247
247
  * <p>The parts of the cookies to inspect with the rule inspection criteria. If you specify
248
- * <code>All</code>, WAF inspects both keys and values. </p>
248
+ * <code>ALL</code>, WAF inspects both keys and values. </p>
249
+ * <p>
250
+ * <code>All</code> does not require a match to be found in the keys
251
+ * and a match to be found in the values. It requires a match to be found in the keys
252
+ * or the values or both. To require a match in the keys and in the values, use a logical <code>AND</code> statement
253
+ * to combine two match rules, one that inspects the keys and another that inspects the values. </p>
249
254
  */
250
255
  MatchScope: MapMatchScope | undefined;
251
256
  /**
@@ -359,7 +364,12 @@ export interface Headers {
359
364
  /**
360
365
  * @public
361
366
  * <p>The parts of the headers to match with the rule inspection criteria. If you specify
362
- * <code>All</code>, WAF inspects both keys and values. </p>
367
+ * <code>ALL</code>, WAF inspects both keys and values. </p>
368
+ * <p>
369
+ * <code>All</code> does not require a match to be found in the keys
370
+ * and a match to be found in the values. It requires a match to be found in the keys
371
+ * or the values or both. To require a match in the keys and in the values, use a logical <code>AND</code> statement
372
+ * to combine two match rules, one that inspects the keys and another that inspects the values. </p>
363
373
  */
364
374
  MatchScope: MapMatchScope | undefined;
365
375
  /**
@@ -516,7 +526,12 @@ export interface JsonBody {
516
526
  /**
517
527
  * @public
518
528
  * <p>The parts of the JSON to match against using the <code>MatchPattern</code>. If you
519
- * specify <code>All</code>, WAF matches against keys and values. </p>
529
+ * specify <code>ALL</code>, WAF matches against keys and values. </p>
530
+ * <p>
531
+ * <code>All</code> does not require a match to be found in the keys
532
+ * and a match to be found in the values. It requires a match to be found in the keys
533
+ * or the values or both. To require a match in the keys and in the values, use a logical <code>AND</code> statement
534
+ * to combine two match rules, one that inspects the keys and another that inspects the values. </p>
520
535
  */
521
536
  MatchScope: JsonMatchScope | undefined;
522
537
  /**
@@ -894,7 +909,7 @@ export interface ByteMatchStatement {
894
909
  * </li>
895
910
  * <li>
896
911
  * <p>
897
- * <code>HeaderOrder</code>: The comma-separated list of header names to match for. WAF creates a
912
+ * <code>HeaderOrder</code>: The list of header names to match for. WAF creates a
898
913
  * string that contains the ordered list of header names, from the headers in the web request, and then matches against that string. </p>
899
914
  * </li>
900
915
  * </ul>
@@ -3,4 +3,5 @@ export * from "./WAFV2";
3
3
  export { ClientInputEndpointParameters } from "./endpoint/EndpointParameters";
4
4
  export * from "./commands";
5
5
  export * from "./models";
6
+ import "@aws-sdk/util-endpoints";
6
7
  export { WAFV2ServiceException } from "./models/WAFV2ServiceException";
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@aws-sdk/client-wafv2",
3
3
  "description": "AWS SDK for JavaScript Wafv2 Client for Node.js, Browser and React Native",
4
- "version": "3.437.0",
4
+ "version": "3.441.0",
5
5
  "scripts": {
6
6
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'",
7
7
  "build:cjs": "tsc -p tsconfig.cjs.json",
@@ -21,17 +21,17 @@
21
21
  "dependencies": {
22
22
  "@aws-crypto/sha256-browser": "3.0.0",
23
23
  "@aws-crypto/sha256-js": "3.0.0",
24
- "@aws-sdk/client-sts": "3.437.0",
25
- "@aws-sdk/core": "3.436.0",
26
- "@aws-sdk/credential-provider-node": "3.437.0",
24
+ "@aws-sdk/client-sts": "3.441.0",
25
+ "@aws-sdk/core": "3.441.0",
26
+ "@aws-sdk/credential-provider-node": "3.441.0",
27
27
  "@aws-sdk/middleware-host-header": "3.433.0",
28
28
  "@aws-sdk/middleware-logger": "3.433.0",
29
29
  "@aws-sdk/middleware-recursion-detection": "3.433.0",
30
30
  "@aws-sdk/middleware-signing": "3.433.0",
31
- "@aws-sdk/middleware-user-agent": "3.433.0",
31
+ "@aws-sdk/middleware-user-agent": "3.438.0",
32
32
  "@aws-sdk/region-config-resolver": "3.433.0",
33
33
  "@aws-sdk/types": "3.433.0",
34
- "@aws-sdk/util-endpoints": "3.433.0",
34
+ "@aws-sdk/util-endpoints": "3.438.0",
35
35
  "@aws-sdk/util-user-agent-browser": "3.433.0",
36
36
  "@aws-sdk/util-user-agent-node": "3.437.0",
37
37
  "@smithy/config-resolver": "^2.0.16",
@@ -54,6 +54,7 @@
54
54
  "@smithy/util-body-length-node": "^2.1.0",
55
55
  "@smithy/util-defaults-mode-browser": "^2.0.16",
56
56
  "@smithy/util-defaults-mode-node": "^2.0.21",
57
+ "@smithy/util-endpoints": "^1.0.2",
57
58
  "@smithy/util-retry": "^2.0.5",
58
59
  "@smithy/util-utf8": "^2.0.0",
59
60
  "tslib": "^2.5.0"