{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- |
-- Module : Amazonka.WAFV2
-- Copyright : (c) 2013-2023 Brendan Hay
-- License : Mozilla Public License, v. 2.0.
-- Maintainer : Brendan Hay
-- Stability : auto-generated
-- Portability : non-portable (GHC extensions)
--
-- Derived from API version @2019-07-29@ of the AWS service descriptions, licensed under Apache 2.0.
--
-- WAF
--
-- This is the latest version of the __WAF__ API, released in November,
-- 2019. The names of the entities that you use to access this API, like
-- endpoints and namespaces, all have the versioning information added,
-- like \"V2\" or \"v2\", to distinguish from the prior version. We
-- recommend migrating your resources to this version, because it has a
-- number of significant improvements.
--
-- If you used WAF prior to this release, you can\'t use this WAFV2 API to
-- access any WAF resources that you created before. You can access your
-- old rules, web ACLs, and other WAF resources only through the WAF
-- Classic APIs. The WAF Classic APIs have retained the prior names,
-- endpoints, and namespaces.
--
-- For information, including how to migrate your WAF resources to this
-- version, see the
-- <https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html WAF Developer Guide>.
--
-- WAF is a web application firewall that lets you monitor the HTTP and
-- HTTPS requests that are forwarded to Amazon CloudFront, an Amazon API
-- Gateway REST API, an Application Load Balancer, an AppSync GraphQL API,
-- or an Amazon Cognito user pool. WAF also lets you control access to your
-- content. Based on conditions that you specify, such as the IP addresses
-- that requests originate from or the values of query strings, the Amazon
-- API Gateway REST API, CloudFront distribution, the Application Load
-- Balancer, the AppSync GraphQL API, or the Amazon Cognito user pool
-- responds to requests either with the requested content or with an HTTP
-- 403 status code (Forbidden). You also can configure CloudFront to return
-- a custom error page when a request is blocked.
--
-- This API guide is for developers who need detailed information about WAF
-- API actions, data types, and errors. For detailed information about WAF
-- features and an overview of how to use WAF, see the
-- <https://docs.aws.amazon.com/waf/latest/developerguide/what-is-aws-waf.html WAF Developer Guide>.
--
-- You can make calls using the endpoints listed in
-- <https://docs.aws.amazon.com/general/latest/gr/waf.html WAF endpoints and quotas>.
--
-- - For regional applications, you can use any of the endpoints in the
-- list. A regional application can be an Application Load Balancer
-- (ALB), an Amazon API Gateway REST API, an AppSync GraphQL API, or an
-- Amazon Cognito user pool.
--
-- - For Amazon CloudFront applications, you must use the API endpoint
-- listed for US East (N. Virginia): us-east-1.
--
-- Alternatively, you can use one of the Amazon Web Services SDKs to access
-- an API that\'s tailored to the programming language or platform that
-- you\'re using. For more information, see
-- <http://aws.amazon.com/tools/#SDKs Amazon Web Services SDKs>.
--
-- We currently provide two versions of the WAF API: this API and the prior
-- versions, the classic WAF APIs. This new API provides the same
-- functionality as the older versions, with the following major
-- improvements:
--
-- - You use one API for both global and regional applications. Where you
-- need to distinguish the scope, you specify a @Scope@ parameter and
-- set it to @CLOUDFRONT@ or @REGIONAL@.
--
-- - You can define a web ACL or rule group with a single call, and
-- update it with a single call. You define all rule specifications in
-- JSON format, and pass them to your rule group or web ACL calls.
--
-- - The limits WAF places on the use of rules more closely reflects the
-- cost of running each type of rule. Rule groups include capacity
-- settings, so you know the maximum cost of a rule group when you use
-- it.
module Amazonka.WAFV2
( -- * Service Configuration
defaultService,
-- * Errors
-- $errors
-- ** WAFAssociatedItemException
_WAFAssociatedItemException,
-- ** WAFConfigurationWarningException
_WAFConfigurationWarningException,
-- ** WAFDuplicateItemException
_WAFDuplicateItemException,
-- ** WAFExpiredManagedRuleGroupVersionException
_WAFExpiredManagedRuleGroupVersionException,
-- ** WAFInternalErrorException
_WAFInternalErrorException,
-- ** WAFInvalidOperationException
_WAFInvalidOperationException,
-- ** WAFInvalidParameterException
_WAFInvalidParameterException,
-- ** WAFInvalidPermissionPolicyException
_WAFInvalidPermissionPolicyException,
-- ** WAFInvalidResourceException
_WAFInvalidResourceException,
-- ** WAFLimitsExceededException
_WAFLimitsExceededException,
-- ** WAFLogDestinationPermissionIssueException
_WAFLogDestinationPermissionIssueException,
-- ** WAFNonexistentItemException
_WAFNonexistentItemException,
-- ** WAFOptimisticLockException
_WAFOptimisticLockException,
-- ** WAFServiceLinkedRoleErrorException
_WAFServiceLinkedRoleErrorException,
-- ** WAFSubscriptionNotFoundException
_WAFSubscriptionNotFoundException,
-- ** WAFTagOperationException
_WAFTagOperationException,
-- ** WAFTagOperationInternalErrorException
_WAFTagOperationInternalErrorException,
-- ** WAFUnavailableEntityException
_WAFUnavailableEntityException,
-- * Waiters
-- $waiters
-- * Operations
-- $operations
-- ** AssociateWebACL
AssociateWebACL (AssociateWebACL'),
newAssociateWebACL,
AssociateWebACLResponse (AssociateWebACLResponse'),
newAssociateWebACLResponse,
-- ** CheckCapacity
CheckCapacity (CheckCapacity'),
newCheckCapacity,
CheckCapacityResponse (CheckCapacityResponse'),
newCheckCapacityResponse,
-- ** CreateIPSet
CreateIPSet (CreateIPSet'),
newCreateIPSet,
CreateIPSetResponse (CreateIPSetResponse'),
newCreateIPSetResponse,
-- ** CreateRegexPatternSet
CreateRegexPatternSet (CreateRegexPatternSet'),
newCreateRegexPatternSet,
CreateRegexPatternSetResponse (CreateRegexPatternSetResponse'),
newCreateRegexPatternSetResponse,
-- ** CreateRuleGroup
CreateRuleGroup (CreateRuleGroup'),
newCreateRuleGroup,
CreateRuleGroupResponse (CreateRuleGroupResponse'),
newCreateRuleGroupResponse,
-- ** CreateWebACL
CreateWebACL (CreateWebACL'),
newCreateWebACL,
CreateWebACLResponse (CreateWebACLResponse'),
newCreateWebACLResponse,
-- ** DeleteFirewallManagerRuleGroups
DeleteFirewallManagerRuleGroups (DeleteFirewallManagerRuleGroups'),
newDeleteFirewallManagerRuleGroups,
DeleteFirewallManagerRuleGroupsResponse (DeleteFirewallManagerRuleGroupsResponse'),
newDeleteFirewallManagerRuleGroupsResponse,
-- ** DeleteIPSet
DeleteIPSet (DeleteIPSet'),
newDeleteIPSet,
DeleteIPSetResponse (DeleteIPSetResponse'),
newDeleteIPSetResponse,
-- ** DeleteLoggingConfiguration
DeleteLoggingConfiguration (DeleteLoggingConfiguration'),
newDeleteLoggingConfiguration,
DeleteLoggingConfigurationResponse (DeleteLoggingConfigurationResponse'),
newDeleteLoggingConfigurationResponse,
-- ** DeletePermissionPolicy
DeletePermissionPolicy (DeletePermissionPolicy'),
newDeletePermissionPolicy,
DeletePermissionPolicyResponse (DeletePermissionPolicyResponse'),
newDeletePermissionPolicyResponse,
-- ** DeleteRegexPatternSet
DeleteRegexPatternSet (DeleteRegexPatternSet'),
newDeleteRegexPatternSet,
DeleteRegexPatternSetResponse (DeleteRegexPatternSetResponse'),
newDeleteRegexPatternSetResponse,
-- ** DeleteRuleGroup
DeleteRuleGroup (DeleteRuleGroup'),
newDeleteRuleGroup,
DeleteRuleGroupResponse (DeleteRuleGroupResponse'),
newDeleteRuleGroupResponse,
-- ** DeleteWebACL
DeleteWebACL (DeleteWebACL'),
newDeleteWebACL,
DeleteWebACLResponse (DeleteWebACLResponse'),
newDeleteWebACLResponse,
-- ** DescribeManagedRuleGroup
DescribeManagedRuleGroup (DescribeManagedRuleGroup'),
newDescribeManagedRuleGroup,
DescribeManagedRuleGroupResponse (DescribeManagedRuleGroupResponse'),
newDescribeManagedRuleGroupResponse,
-- ** DisassociateWebACL
DisassociateWebACL (DisassociateWebACL'),
newDisassociateWebACL,
DisassociateWebACLResponse (DisassociateWebACLResponse'),
newDisassociateWebACLResponse,
-- ** GenerateMobileSdkReleaseUrl
GenerateMobileSdkReleaseUrl (GenerateMobileSdkReleaseUrl'),
newGenerateMobileSdkReleaseUrl,
GenerateMobileSdkReleaseUrlResponse (GenerateMobileSdkReleaseUrlResponse'),
newGenerateMobileSdkReleaseUrlResponse,
-- ** GetIPSet
GetIPSet (GetIPSet'),
newGetIPSet,
GetIPSetResponse (GetIPSetResponse'),
newGetIPSetResponse,
-- ** GetLoggingConfiguration
GetLoggingConfiguration (GetLoggingConfiguration'),
newGetLoggingConfiguration,
GetLoggingConfigurationResponse (GetLoggingConfigurationResponse'),
newGetLoggingConfigurationResponse,
-- ** GetManagedRuleSet
GetManagedRuleSet (GetManagedRuleSet'),
newGetManagedRuleSet,
GetManagedRuleSetResponse (GetManagedRuleSetResponse'),
newGetManagedRuleSetResponse,
-- ** GetMobileSdkRelease
GetMobileSdkRelease (GetMobileSdkRelease'),
newGetMobileSdkRelease,
GetMobileSdkReleaseResponse (GetMobileSdkReleaseResponse'),
newGetMobileSdkReleaseResponse,
-- ** GetPermissionPolicy
GetPermissionPolicy (GetPermissionPolicy'),
newGetPermissionPolicy,
GetPermissionPolicyResponse (GetPermissionPolicyResponse'),
newGetPermissionPolicyResponse,
-- ** GetRateBasedStatementManagedKeys
GetRateBasedStatementManagedKeys (GetRateBasedStatementManagedKeys'),
newGetRateBasedStatementManagedKeys,
GetRateBasedStatementManagedKeysResponse (GetRateBasedStatementManagedKeysResponse'),
newGetRateBasedStatementManagedKeysResponse,
-- ** GetRegexPatternSet
GetRegexPatternSet (GetRegexPatternSet'),
newGetRegexPatternSet,
GetRegexPatternSetResponse (GetRegexPatternSetResponse'),
newGetRegexPatternSetResponse,
-- ** GetRuleGroup
GetRuleGroup (GetRuleGroup'),
newGetRuleGroup,
GetRuleGroupResponse (GetRuleGroupResponse'),
newGetRuleGroupResponse,
-- ** GetSampledRequests
GetSampledRequests (GetSampledRequests'),
newGetSampledRequests,
GetSampledRequestsResponse (GetSampledRequestsResponse'),
newGetSampledRequestsResponse,
-- ** GetWebACL
GetWebACL (GetWebACL'),
newGetWebACL,
GetWebACLResponse (GetWebACLResponse'),
newGetWebACLResponse,
-- ** GetWebACLForResource
GetWebACLForResource (GetWebACLForResource'),
newGetWebACLForResource,
GetWebACLForResourceResponse (GetWebACLForResourceResponse'),
newGetWebACLForResourceResponse,
-- ** ListAvailableManagedRuleGroupVersions
ListAvailableManagedRuleGroupVersions (ListAvailableManagedRuleGroupVersions'),
newListAvailableManagedRuleGroupVersions,
ListAvailableManagedRuleGroupVersionsResponse (ListAvailableManagedRuleGroupVersionsResponse'),
newListAvailableManagedRuleGroupVersionsResponse,
-- ** ListAvailableManagedRuleGroups
ListAvailableManagedRuleGroups (ListAvailableManagedRuleGroups'),
newListAvailableManagedRuleGroups,
ListAvailableManagedRuleGroupsResponse (ListAvailableManagedRuleGroupsResponse'),
newListAvailableManagedRuleGroupsResponse,
-- ** ListIPSets
ListIPSets (ListIPSets'),
newListIPSets,
ListIPSetsResponse (ListIPSetsResponse'),
newListIPSetsResponse,
-- ** ListLoggingConfigurations
ListLoggingConfigurations (ListLoggingConfigurations'),
newListLoggingConfigurations,
ListLoggingConfigurationsResponse (ListLoggingConfigurationsResponse'),
newListLoggingConfigurationsResponse,
-- ** ListManagedRuleSets
ListManagedRuleSets (ListManagedRuleSets'),
newListManagedRuleSets,
ListManagedRuleSetsResponse (ListManagedRuleSetsResponse'),
newListManagedRuleSetsResponse,
-- ** ListMobileSdkReleases
ListMobileSdkReleases (ListMobileSdkReleases'),
newListMobileSdkReleases,
ListMobileSdkReleasesResponse (ListMobileSdkReleasesResponse'),
newListMobileSdkReleasesResponse,
-- ** ListRegexPatternSets
ListRegexPatternSets (ListRegexPatternSets'),
newListRegexPatternSets,
ListRegexPatternSetsResponse (ListRegexPatternSetsResponse'),
newListRegexPatternSetsResponse,
-- ** ListResourcesForWebACL
ListResourcesForWebACL (ListResourcesForWebACL'),
newListResourcesForWebACL,
ListResourcesForWebACLResponse (ListResourcesForWebACLResponse'),
newListResourcesForWebACLResponse,
-- ** ListRuleGroups
ListRuleGroups (ListRuleGroups'),
newListRuleGroups,
ListRuleGroupsResponse (ListRuleGroupsResponse'),
newListRuleGroupsResponse,
-- ** ListTagsForResource
ListTagsForResource (ListTagsForResource'),
newListTagsForResource,
ListTagsForResourceResponse (ListTagsForResourceResponse'),
newListTagsForResourceResponse,
-- ** ListWebACLs
ListWebACLs (ListWebACLs'),
newListWebACLs,
ListWebACLsResponse (ListWebACLsResponse'),
newListWebACLsResponse,
-- ** PutLoggingConfiguration
PutLoggingConfiguration (PutLoggingConfiguration'),
newPutLoggingConfiguration,
PutLoggingConfigurationResponse (PutLoggingConfigurationResponse'),
newPutLoggingConfigurationResponse,
-- ** PutManagedRuleSetVersions
PutManagedRuleSetVersions (PutManagedRuleSetVersions'),
newPutManagedRuleSetVersions,
PutManagedRuleSetVersionsResponse (PutManagedRuleSetVersionsResponse'),
newPutManagedRuleSetVersionsResponse,
-- ** PutPermissionPolicy
PutPermissionPolicy (PutPermissionPolicy'),
newPutPermissionPolicy,
PutPermissionPolicyResponse (PutPermissionPolicyResponse'),
newPutPermissionPolicyResponse,
-- ** TagResource
TagResource (TagResource'),
newTagResource,
TagResourceResponse (TagResourceResponse'),
newTagResourceResponse,
-- ** UntagResource
UntagResource (UntagResource'),
newUntagResource,
UntagResourceResponse (UntagResourceResponse'),
newUntagResourceResponse,
-- ** UpdateIPSet
UpdateIPSet (UpdateIPSet'),
newUpdateIPSet,
UpdateIPSetResponse (UpdateIPSetResponse'),
newUpdateIPSetResponse,
-- ** UpdateManagedRuleSetVersionExpiryDate
UpdateManagedRuleSetVersionExpiryDate (UpdateManagedRuleSetVersionExpiryDate'),
newUpdateManagedRuleSetVersionExpiryDate,
UpdateManagedRuleSetVersionExpiryDateResponse (UpdateManagedRuleSetVersionExpiryDateResponse'),
newUpdateManagedRuleSetVersionExpiryDateResponse,
-- ** UpdateRegexPatternSet
UpdateRegexPatternSet (UpdateRegexPatternSet'),
newUpdateRegexPatternSet,
UpdateRegexPatternSetResponse (UpdateRegexPatternSetResponse'),
newUpdateRegexPatternSetResponse,
-- ** UpdateRuleGroup
UpdateRuleGroup (UpdateRuleGroup'),
newUpdateRuleGroup,
UpdateRuleGroupResponse (UpdateRuleGroupResponse'),
newUpdateRuleGroupResponse,
-- ** UpdateWebACL
UpdateWebACL (UpdateWebACL'),
newUpdateWebACL,
UpdateWebACLResponse (UpdateWebACLResponse'),
newUpdateWebACLResponse,
-- * Types
-- ** ActionValue
ActionValue (..),
-- ** BodyParsingFallbackBehavior
BodyParsingFallbackBehavior (..),
-- ** ComparisonOperator
ComparisonOperator (..),
-- ** CountryCode
CountryCode (..),
-- ** FailureReason
FailureReason (..),
-- ** FallbackBehavior
FallbackBehavior (..),
-- ** FilterBehavior
FilterBehavior (..),
-- ** FilterRequirement
FilterRequirement (..),
-- ** ForwardedIPPosition
ForwardedIPPosition (..),
-- ** IPAddressVersion
IPAddressVersion (..),
-- ** InspectionLevel
InspectionLevel (..),
-- ** JsonMatchScope
JsonMatchScope (..),
-- ** LabelMatchScope
LabelMatchScope (..),
-- ** MapMatchScope
MapMatchScope (..),
-- ** OversizeHandling
OversizeHandling (..),
-- ** PayloadType
PayloadType (..),
-- ** Platform
Platform (..),
-- ** PositionalConstraint
PositionalConstraint (..),
-- ** RateBasedStatementAggregateKeyType
RateBasedStatementAggregateKeyType (..),
-- ** ResourceType
ResourceType (..),
-- ** ResponseContentType
ResponseContentType (..),
-- ** Scope
Scope (..),
-- ** SensitivityLevel
SensitivityLevel (..),
-- ** TextTransformationType
TextTransformationType (..),
-- ** AWSManagedRulesBotControlRuleSet
AWSManagedRulesBotControlRuleSet (AWSManagedRulesBotControlRuleSet'),
newAWSManagedRulesBotControlRuleSet,
-- ** ActionCondition
ActionCondition (ActionCondition'),
newActionCondition,
-- ** All
All (All'),
newAll,
-- ** AllQueryArguments
AllQueryArguments (AllQueryArguments'),
newAllQueryArguments,
-- ** AllowAction
AllowAction (AllowAction'),
newAllowAction,
-- ** AndStatement
AndStatement (AndStatement'),
newAndStatement,
-- ** BlockAction
BlockAction (BlockAction'),
newBlockAction,
-- ** Body
Body (Body'),
newBody,
-- ** ByteMatchStatement
ByteMatchStatement (ByteMatchStatement'),
newByteMatchStatement,
-- ** CaptchaAction
CaptchaAction (CaptchaAction'),
newCaptchaAction,
-- ** CaptchaConfig
CaptchaConfig (CaptchaConfig'),
newCaptchaConfig,
-- ** CaptchaResponse
CaptchaResponse (CaptchaResponse'),
newCaptchaResponse,
-- ** ChallengeAction
ChallengeAction (ChallengeAction'),
newChallengeAction,
-- ** ChallengeConfig
ChallengeConfig (ChallengeConfig'),
newChallengeConfig,
-- ** ChallengeResponse
ChallengeResponse (ChallengeResponse'),
newChallengeResponse,
-- ** Condition
Condition (Condition'),
newCondition,
-- ** CookieMatchPattern
CookieMatchPattern (CookieMatchPattern'),
newCookieMatchPattern,
-- ** Cookies
Cookies (Cookies'),
newCookies,
-- ** CountAction
CountAction (CountAction'),
newCountAction,
-- ** CustomHTTPHeader
CustomHTTPHeader (CustomHTTPHeader'),
newCustomHTTPHeader,
-- ** CustomRequestHandling
CustomRequestHandling (CustomRequestHandling'),
newCustomRequestHandling,
-- ** CustomResponse
CustomResponse (CustomResponse'),
newCustomResponse,
-- ** CustomResponseBody
CustomResponseBody (CustomResponseBody'),
newCustomResponseBody,
-- ** DefaultAction
DefaultAction (DefaultAction'),
newDefaultAction,
-- ** ExcludedRule
ExcludedRule (ExcludedRule'),
newExcludedRule,
-- ** FieldToMatch
FieldToMatch (FieldToMatch'),
newFieldToMatch,
-- ** Filter
Filter (Filter'),
newFilter,
-- ** FirewallManagerRuleGroup
FirewallManagerRuleGroup (FirewallManagerRuleGroup'),
newFirewallManagerRuleGroup,
-- ** FirewallManagerStatement
FirewallManagerStatement (FirewallManagerStatement'),
newFirewallManagerStatement,
-- ** ForwardedIPConfig
ForwardedIPConfig (ForwardedIPConfig'),
newForwardedIPConfig,
-- ** GeoMatchStatement
GeoMatchStatement (GeoMatchStatement'),
newGeoMatchStatement,
-- ** HTTPHeader
HTTPHeader (HTTPHeader'),
newHTTPHeader,
-- ** HTTPRequest
HTTPRequest (HTTPRequest'),
newHTTPRequest,
-- ** HeaderMatchPattern
HeaderMatchPattern (HeaderMatchPattern'),
newHeaderMatchPattern,
-- ** Headers
Headers (Headers'),
newHeaders,
-- ** IPSet
IPSet (IPSet'),
newIPSet,
-- ** IPSetForwardedIPConfig
IPSetForwardedIPConfig (IPSetForwardedIPConfig'),
newIPSetForwardedIPConfig,
-- ** IPSetReferenceStatement
IPSetReferenceStatement (IPSetReferenceStatement'),
newIPSetReferenceStatement,
-- ** IPSetSummary
IPSetSummary (IPSetSummary'),
newIPSetSummary,
-- ** ImmunityTimeProperty
ImmunityTimeProperty (ImmunityTimeProperty'),
newImmunityTimeProperty,
-- ** JsonBody
JsonBody (JsonBody'),
newJsonBody,
-- ** JsonMatchPattern
JsonMatchPattern (JsonMatchPattern'),
newJsonMatchPattern,
-- ** Label
Label (Label'),
newLabel,
-- ** LabelMatchStatement
LabelMatchStatement (LabelMatchStatement'),
newLabelMatchStatement,
-- ** LabelNameCondition
LabelNameCondition (LabelNameCondition'),
newLabelNameCondition,
-- ** LabelSummary
LabelSummary (LabelSummary'),
newLabelSummary,
-- ** LoggingConfiguration
LoggingConfiguration (LoggingConfiguration'),
newLoggingConfiguration,
-- ** LoggingFilter
LoggingFilter (LoggingFilter'),
newLoggingFilter,
-- ** ManagedRuleGroupConfig
ManagedRuleGroupConfig (ManagedRuleGroupConfig'),
newManagedRuleGroupConfig,
-- ** ManagedRuleGroupStatement
ManagedRuleGroupStatement (ManagedRuleGroupStatement'),
newManagedRuleGroupStatement,
-- ** ManagedRuleGroupSummary
ManagedRuleGroupSummary (ManagedRuleGroupSummary'),
newManagedRuleGroupSummary,
-- ** ManagedRuleGroupVersion
ManagedRuleGroupVersion (ManagedRuleGroupVersion'),
newManagedRuleGroupVersion,
-- ** ManagedRuleSet
ManagedRuleSet (ManagedRuleSet'),
newManagedRuleSet,
-- ** ManagedRuleSetSummary
ManagedRuleSetSummary (ManagedRuleSetSummary'),
newManagedRuleSetSummary,
-- ** ManagedRuleSetVersion
ManagedRuleSetVersion (ManagedRuleSetVersion'),
newManagedRuleSetVersion,
-- ** Method
Method (Method'),
newMethod,
-- ** MobileSdkRelease
MobileSdkRelease (MobileSdkRelease'),
newMobileSdkRelease,
-- ** NoneAction
NoneAction (NoneAction'),
newNoneAction,
-- ** NotStatement
NotStatement (NotStatement'),
newNotStatement,
-- ** OrStatement
OrStatement (OrStatement'),
newOrStatement,
-- ** OverrideAction
OverrideAction (OverrideAction'),
newOverrideAction,
-- ** PasswordField
PasswordField (PasswordField'),
newPasswordField,
-- ** QueryString
QueryString (QueryString'),
newQueryString,
-- ** RateBasedStatement
RateBasedStatement (RateBasedStatement'),
newRateBasedStatement,
-- ** RateBasedStatementManagedKeysIPSet
RateBasedStatementManagedKeysIPSet (RateBasedStatementManagedKeysIPSet'),
newRateBasedStatementManagedKeysIPSet,
-- ** Regex
Regex (Regex'),
newRegex,
-- ** RegexMatchStatement
RegexMatchStatement (RegexMatchStatement'),
newRegexMatchStatement,
-- ** RegexPatternSet
RegexPatternSet (RegexPatternSet'),
newRegexPatternSet,
-- ** RegexPatternSetReferenceStatement
RegexPatternSetReferenceStatement (RegexPatternSetReferenceStatement'),
newRegexPatternSetReferenceStatement,
-- ** RegexPatternSetSummary
RegexPatternSetSummary (RegexPatternSetSummary'),
newRegexPatternSetSummary,
-- ** ReleaseSummary
ReleaseSummary (ReleaseSummary'),
newReleaseSummary,
-- ** Rule
Rule (Rule'),
newRule,
-- ** RuleAction
RuleAction (RuleAction'),
newRuleAction,
-- ** RuleActionOverride
RuleActionOverride (RuleActionOverride'),
newRuleActionOverride,
-- ** RuleGroup
RuleGroup (RuleGroup'),
newRuleGroup,
-- ** RuleGroupReferenceStatement
RuleGroupReferenceStatement (RuleGroupReferenceStatement'),
newRuleGroupReferenceStatement,
-- ** RuleGroupSummary
RuleGroupSummary (RuleGroupSummary'),
newRuleGroupSummary,
-- ** RuleSummary
RuleSummary (RuleSummary'),
newRuleSummary,
-- ** SampledHTTPRequest
SampledHTTPRequest (SampledHTTPRequest'),
newSampledHTTPRequest,
-- ** SingleHeader
SingleHeader (SingleHeader'),
newSingleHeader,
-- ** SingleQueryArgument
SingleQueryArgument (SingleQueryArgument'),
newSingleQueryArgument,
-- ** SizeConstraintStatement
SizeConstraintStatement (SizeConstraintStatement'),
newSizeConstraintStatement,
-- ** SqliMatchStatement
SqliMatchStatement (SqliMatchStatement'),
newSqliMatchStatement,
-- ** Statement
Statement (Statement'),
newStatement,
-- ** Tag
Tag (Tag'),
newTag,
-- ** TagInfoForResource
TagInfoForResource (TagInfoForResource'),
newTagInfoForResource,
-- ** TextTransformation
TextTransformation (TextTransformation'),
newTextTransformation,
-- ** TimeWindow
TimeWindow (TimeWindow'),
newTimeWindow,
-- ** UriPath
UriPath (UriPath'),
newUriPath,
-- ** UsernameField
UsernameField (UsernameField'),
newUsernameField,
-- ** VersionToPublish
VersionToPublish (VersionToPublish'),
newVersionToPublish,
-- ** VisibilityConfig
VisibilityConfig (VisibilityConfig'),
newVisibilityConfig,
-- ** WebACL
WebACL (WebACL'),
newWebACL,
-- ** WebACLSummary
WebACLSummary (WebACLSummary'),
newWebACLSummary,
-- ** XssMatchStatement
XssMatchStatement (XssMatchStatement'),
newXssMatchStatement,
)
where
import Amazonka.WAFV2.AssociateWebACL
import Amazonka.WAFV2.CheckCapacity
import Amazonka.WAFV2.CreateIPSet
import Amazonka.WAFV2.CreateRegexPatternSet
import Amazonka.WAFV2.CreateRuleGroup
import Amazonka.WAFV2.CreateWebACL
import Amazonka.WAFV2.DeleteFirewallManagerRuleGroups
import Amazonka.WAFV2.DeleteIPSet
import Amazonka.WAFV2.DeleteLoggingConfiguration
import Amazonka.WAFV2.DeletePermissionPolicy
import Amazonka.WAFV2.DeleteRegexPatternSet
import Amazonka.WAFV2.DeleteRuleGroup
import Amazonka.WAFV2.DeleteWebACL
import Amazonka.WAFV2.DescribeManagedRuleGroup
import Amazonka.WAFV2.DisassociateWebACL
import Amazonka.WAFV2.GenerateMobileSdkReleaseUrl
import Amazonka.WAFV2.GetIPSet
import Amazonka.WAFV2.GetLoggingConfiguration
import Amazonka.WAFV2.GetManagedRuleSet
import Amazonka.WAFV2.GetMobileSdkRelease
import Amazonka.WAFV2.GetPermissionPolicy
import Amazonka.WAFV2.GetRateBasedStatementManagedKeys
import Amazonka.WAFV2.GetRegexPatternSet
import Amazonka.WAFV2.GetRuleGroup
import Amazonka.WAFV2.GetSampledRequests
import Amazonka.WAFV2.GetWebACL
import Amazonka.WAFV2.GetWebACLForResource
import Amazonka.WAFV2.Lens
import Amazonka.WAFV2.ListAvailableManagedRuleGroupVersions
import Amazonka.WAFV2.ListAvailableManagedRuleGroups
import Amazonka.WAFV2.ListIPSets
import Amazonka.WAFV2.ListLoggingConfigurations
import Amazonka.WAFV2.ListManagedRuleSets
import Amazonka.WAFV2.ListMobileSdkReleases
import Amazonka.WAFV2.ListRegexPatternSets
import Amazonka.WAFV2.ListResourcesForWebACL
import Amazonka.WAFV2.ListRuleGroups
import Amazonka.WAFV2.ListTagsForResource
import Amazonka.WAFV2.ListWebACLs
import Amazonka.WAFV2.PutLoggingConfiguration
import Amazonka.WAFV2.PutManagedRuleSetVersions
import Amazonka.WAFV2.PutPermissionPolicy
import Amazonka.WAFV2.TagResource
import Amazonka.WAFV2.Types
import Amazonka.WAFV2.UntagResource
import Amazonka.WAFV2.UpdateIPSet
import Amazonka.WAFV2.UpdateManagedRuleSetVersionExpiryDate
import Amazonka.WAFV2.UpdateRegexPatternSet
import Amazonka.WAFV2.UpdateRuleGroup
import Amazonka.WAFV2.UpdateWebACL
import Amazonka.WAFV2.Waiters
-- $errors
-- Error matchers are designed for use with the functions provided by
-- <http://hackage.haskell.org/package/lens/docs/Control-Exception-Lens.html Control.Exception.Lens>.
-- This allows catching (and rethrowing) service specific errors returned
-- by 'WAFV2'.
-- $operations
-- Some AWS operations return results that are incomplete and require subsequent
-- requests in order to obtain the entire result set. The process of sending
-- subsequent requests to continue where a previous request left off is called
-- pagination. For example, the 'ListObjects' operation of Amazon S3 returns up to
-- 1000 objects at a time, and you must send subsequent requests with the
-- appropriate Marker in order to retrieve the next page of results.
--
-- Operations that have an 'AWSPager' instance can transparently perform subsequent
-- requests, correctly setting Markers and other request facets to iterate through
-- the entire result set of a truncated API operation. Operations which support
-- this have an additional note in the documentation.
--
-- Many operations have the ability to filter results on the server side. See the
-- individual operation parameters for details.
-- $waiters
-- Waiters poll by repeatedly sending a request until some remote success condition
-- configured by the 'Wait' specification is fulfilled. The 'Wait' specification
-- determines how many attempts should be made, in addition to delay and retry strategies.