amazonka-waf-1.4.5: Amazon WAF SDK.

Copyright(c) 2013-2016 Brendan Hay
LicenseMozilla Public License, v. 2.0.
MaintainerBrendan Hay <brendan.g.hay@gmail.com>
Stabilityauto-generated
Portabilitynon-portable (GHC extensions)
Safe HaskellNone
LanguageHaskell2010

Network.AWS.WAF

Contents

Description

This is the AWS WAF API Reference . This guide is for developers who need detailed information about the AWS WAF API actions, data types, and errors. For detailed information about AWS WAF features and an overview of how to use the AWS WAF API, see the AWS WAF Developer Guide .

Synopsis

Service Configuration

waf :: Service Source #

API version 2015-08-24 of the Amazon WAF SDK configuration.

Errors

Error matchers are designed for use with the functions provided by Control.Exception.Lens. This allows catching (and rethrowing) service specific errors returned by WAF.

WAFInvalidAccountException

_WAFInvalidAccountException :: AsError a => Getting (First ServiceError) a ServiceError Source #

The operation failed because you tried to create, update, or delete an object by using an invalid account identifier.

WAFReferencedItemException

_WAFReferencedItemException :: AsError a => Getting (First ServiceError) a ServiceError Source #

The operation failed because you tried to delete an object that is still in use. For example:

  • You tried to delete a ByteMatchSet that is still referenced by a Rule .
  • You tried to delete a Rule that is still referenced by a WebACL .

WAFInvalidOperationException

_WAFInvalidOperationException :: AsError a => Getting (First ServiceError) a ServiceError Source #

The operation failed because there was nothing to do. For example:

  • You tried to remove a Rule from a WebACL , but the Rule isn't in the specified WebACL .
  • You tried to remove an IP address from an IPSet , but the IP address isn't in the specified IPSet .
  • You tried to remove a ByteMatchTuple from a ByteMatchSet , but the ByteMatchTuple isn't in the specified WebACL .
  • You tried to add a Rule to a WebACL , but the Rule already exists in the specified WebACL .
  • You tried to add an IP address to an IPSet , but the IP address already exists in the specified IPSet .
  • You tried to add a ByteMatchTuple to a ByteMatchSet , but the ByteMatchTuple already exists in the specified WebACL .

WAFNonexistentItemException

_WAFNonexistentItemException :: AsError a => Getting (First ServiceError) a ServiceError Source #

The operation failed because the referenced object doesn't exist.

WAFInvalidParameterException

_WAFInvalidParameterException :: AsError a => Getting (First ServiceError) a ServiceError Source #

The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

  • You specified an invalid parameter name.
  • You specified an invalid value.
  • You tried to update an object (ByteMatchSet , IPSet , Rule , or WebACL ) using an action other than INSERT or DELETE .
  • You tried to create a WebACL with a DefaultAction Type other than ALLOW , BLOCK , or COUNT .
  • You tried to update a WebACL with a WafAction Type other than ALLOW , BLOCK , or COUNT .
  • You tried to update a ByteMatchSet with a FieldToMatch Type other than HEADER, QUERY_STRING, or URI.
  • You tried to update a ByteMatchSet with a Field of HEADER but no value for Data .

WAFLimitsExceededException

_WAFLimitsExceededException :: AsError a => Getting (First ServiceError) a ServiceError Source #

The operation exceeds a resource limit, for example, the maximum number of WebACL objects that you can create for an AWS account. For more information, see Limits in the AWS WAF Developer Guide .

WAFStaleDataException

_WAFStaleDataException :: AsError a => Getting (First ServiceError) a ServiceError Source #

The operation failed because you tried to create, update, or delete an object by using a change token that has already been used.

WAFInternalErrorException

_WAFInternalErrorException :: AsError a => Getting (First ServiceError) a ServiceError Source #

The operation failed because of a system problem, even though the request was valid. Retry your request.

WAFNonexistentContainerException

_WAFNonexistentContainerException :: AsError a => Getting (First ServiceError) a ServiceError Source #

The operation failed because you tried to add an object to or delete an object from another object that doesn't exist. For example:

  • You tried to add a Rule to or delete a Rule from a WebACL that doesn't exist.
  • You tried to add a ByteMatchSet to or delete a ByteMatchSet from a Rule that doesn't exist.
  • You tried to add an IP address to or delete an IP address from an IPSet that doesn't exist.
  • You tried to add a ByteMatchTuple to or delete a ByteMatchTuple from a ByteMatchSet that doesn't exist.

WAFDisallowedNameException

WAFNonEmptyEntityException

_WAFNonEmptyEntityException :: AsError a => Getting (First ServiceError) a ServiceError Source #

The operation failed because you tried to delete an object that isn't empty. For example:

  • You tried to delete a WebACL that still contains one or more Rule objects.
  • You tried to delete a Rule that still contains one or more ByteMatchSet objects or other predicates.
  • You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple objects.
  • You tried to delete an IPSet that references one or more IP addresses.

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.

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.

GetSizeConstraintSet

UpdateRule

DeleteRule

CreateIPSet

GetChangeTokenStatus

DeleteWebACL

UpdateWebACL

ListWebACLs (Paginated)

ListRules (Paginated)

CreateRule

CreateWebACL

ListByteMatchSets (Paginated)

GetIPSet

GetWebACL

GetRule

DeleteXSSMatchSet

UpdateXSSMatchSet

ListXSSMatchSets (Paginated)

GetChangeToken

ListSizeConstraintSets (Paginated)

GetSampledRequests

GetSqlInjectionMatchSet

CreateSqlInjectionMatchSet

GetXSSMatchSet

CreateByteMatchSet

UpdateByteMatchSet

DeleteByteMatchSet

DeleteIPSet

UpdateIPSet

ListIPSets (Paginated)

CreateXSSMatchSet

GetByteMatchSet

DeleteSizeConstraintSet

UpdateSizeConstraintSet

CreateSizeConstraintSet

ListSqlInjectionMatchSets (Paginated)

DeleteSqlInjectionMatchSet

UpdateSqlInjectionMatchSet

Types

ChangeAction

data ChangeAction Source #

Constructors

Delete 
Insert 

Instances

Bounded ChangeAction Source # 
Enum ChangeAction Source # 
Eq ChangeAction Source # 
Data ChangeAction Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ChangeAction -> c ChangeAction #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ChangeAction #

toConstr :: ChangeAction -> Constr #

dataTypeOf :: ChangeAction -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c ChangeAction) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ChangeAction) #

gmapT :: (forall b. Data b => b -> b) -> ChangeAction -> ChangeAction #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ChangeAction -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ChangeAction -> r #

gmapQ :: (forall d. Data d => d -> u) -> ChangeAction -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> ChangeAction -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> ChangeAction -> m ChangeAction #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ChangeAction -> m ChangeAction #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ChangeAction -> m ChangeAction #

Ord ChangeAction Source # 
Read ChangeAction Source # 
Show ChangeAction Source # 
Generic ChangeAction Source # 

Associated Types

type Rep ChangeAction :: * -> * #

Hashable ChangeAction Source # 
ToJSON ChangeAction Source # 
NFData ChangeAction Source # 

Methods

rnf :: ChangeAction -> () #

ToHeader ChangeAction Source # 
ToQuery ChangeAction Source # 
ToByteString ChangeAction Source # 
FromText ChangeAction Source # 
ToText ChangeAction Source # 

Methods

toText :: ChangeAction -> Text #

type Rep ChangeAction Source # 
type Rep ChangeAction = D1 (MetaData "ChangeAction" "Network.AWS.WAF.Types.Sum" "amazonka-waf-1.4.5-LwyS40mcrMjGU0oCXONgRC" False) ((:+:) (C1 (MetaCons "Delete" PrefixI False) U1) (C1 (MetaCons "Insert" PrefixI False) U1))

ChangeTokenStatus

data ChangeTokenStatus Source #

Constructors

Insync 
Pending 
Provisioned 

Instances

Bounded ChangeTokenStatus Source # 
Enum ChangeTokenStatus Source # 
Eq ChangeTokenStatus Source # 
Data ChangeTokenStatus Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ChangeTokenStatus -> c ChangeTokenStatus #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ChangeTokenStatus #

toConstr :: ChangeTokenStatus -> Constr #

dataTypeOf :: ChangeTokenStatus -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c ChangeTokenStatus) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ChangeTokenStatus) #

gmapT :: (forall b. Data b => b -> b) -> ChangeTokenStatus -> ChangeTokenStatus #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ChangeTokenStatus -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ChangeTokenStatus -> r #

gmapQ :: (forall d. Data d => d -> u) -> ChangeTokenStatus -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> ChangeTokenStatus -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> ChangeTokenStatus -> m ChangeTokenStatus #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ChangeTokenStatus -> m ChangeTokenStatus #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ChangeTokenStatus -> m ChangeTokenStatus #

Ord ChangeTokenStatus Source # 
Read ChangeTokenStatus Source # 
Show ChangeTokenStatus Source # 
Generic ChangeTokenStatus Source # 
Hashable ChangeTokenStatus Source # 
FromJSON ChangeTokenStatus Source # 
NFData ChangeTokenStatus Source # 

Methods

rnf :: ChangeTokenStatus -> () #

ToHeader ChangeTokenStatus Source # 
ToQuery ChangeTokenStatus Source # 
ToByteString ChangeTokenStatus Source # 
FromText ChangeTokenStatus Source # 
ToText ChangeTokenStatus Source # 
type Rep ChangeTokenStatus Source # 
type Rep ChangeTokenStatus = D1 (MetaData "ChangeTokenStatus" "Network.AWS.WAF.Types.Sum" "amazonka-waf-1.4.5-LwyS40mcrMjGU0oCXONgRC" False) ((:+:) (C1 (MetaCons "Insync" PrefixI False) U1) ((:+:) (C1 (MetaCons "Pending" PrefixI False) U1) (C1 (MetaCons "Provisioned" PrefixI False) U1)))

ComparisonOperator

data ComparisonOperator Source #

Constructors

EQ' 
GE 
GT' 
LE 
LT' 
NE 

Instances

Bounded ComparisonOperator Source # 
Enum ComparisonOperator Source # 
Eq ComparisonOperator Source # 
Data ComparisonOperator Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ComparisonOperator -> c ComparisonOperator #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ComparisonOperator #

toConstr :: ComparisonOperator -> Constr #

dataTypeOf :: ComparisonOperator -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c ComparisonOperator) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ComparisonOperator) #

gmapT :: (forall b. Data b => b -> b) -> ComparisonOperator -> ComparisonOperator #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ComparisonOperator -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ComparisonOperator -> r #

gmapQ :: (forall d. Data d => d -> u) -> ComparisonOperator -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> ComparisonOperator -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> ComparisonOperator -> m ComparisonOperator #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ComparisonOperator -> m ComparisonOperator #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ComparisonOperator -> m ComparisonOperator #

Ord ComparisonOperator Source # 
Read ComparisonOperator Source # 
Show ComparisonOperator Source # 
Generic ComparisonOperator Source # 
Hashable ComparisonOperator Source # 
ToJSON ComparisonOperator Source # 
FromJSON ComparisonOperator Source # 
NFData ComparisonOperator Source # 

Methods

rnf :: ComparisonOperator -> () #

ToHeader ComparisonOperator Source # 
ToQuery ComparisonOperator Source # 
ToByteString ComparisonOperator Source # 
FromText ComparisonOperator Source # 
ToText ComparisonOperator Source # 
type Rep ComparisonOperator Source # 
type Rep ComparisonOperator = D1 (MetaData "ComparisonOperator" "Network.AWS.WAF.Types.Sum" "amazonka-waf-1.4.5-LwyS40mcrMjGU0oCXONgRC" False) ((:+:) ((:+:) (C1 (MetaCons "EQ'" PrefixI False) U1) ((:+:) (C1 (MetaCons "GE" PrefixI False) U1) (C1 (MetaCons "GT'" PrefixI False) U1))) ((:+:) (C1 (MetaCons "LE" PrefixI False) U1) ((:+:) (C1 (MetaCons "LT'" PrefixI False) U1) (C1 (MetaCons "NE" PrefixI False) U1))))

IPSetDescriptorType

data IPSetDescriptorType Source #

Constructors

IPV4 
IPV6 

Instances

Bounded IPSetDescriptorType Source # 
Enum IPSetDescriptorType Source # 
Eq IPSetDescriptorType Source # 
Data IPSetDescriptorType Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> IPSetDescriptorType -> c IPSetDescriptorType #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c IPSetDescriptorType #

toConstr :: IPSetDescriptorType -> Constr #

dataTypeOf :: IPSetDescriptorType -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c IPSetDescriptorType) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c IPSetDescriptorType) #

gmapT :: (forall b. Data b => b -> b) -> IPSetDescriptorType -> IPSetDescriptorType #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> IPSetDescriptorType -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> IPSetDescriptorType -> r #

gmapQ :: (forall d. Data d => d -> u) -> IPSetDescriptorType -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> IPSetDescriptorType -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> IPSetDescriptorType -> m IPSetDescriptorType #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> IPSetDescriptorType -> m IPSetDescriptorType #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> IPSetDescriptorType -> m IPSetDescriptorType #

Ord IPSetDescriptorType Source # 
Read IPSetDescriptorType Source # 
Show IPSetDescriptorType Source # 
Generic IPSetDescriptorType Source # 
Hashable IPSetDescriptorType Source # 
ToJSON IPSetDescriptorType Source # 
FromJSON IPSetDescriptorType Source # 
NFData IPSetDescriptorType Source # 

Methods

rnf :: IPSetDescriptorType -> () #

ToHeader IPSetDescriptorType Source # 
ToQuery IPSetDescriptorType Source # 
ToByteString IPSetDescriptorType Source # 
FromText IPSetDescriptorType Source # 
ToText IPSetDescriptorType Source # 
type Rep IPSetDescriptorType Source # 
type Rep IPSetDescriptorType = D1 (MetaData "IPSetDescriptorType" "Network.AWS.WAF.Types.Sum" "amazonka-waf-1.4.5-LwyS40mcrMjGU0oCXONgRC" False) ((:+:) (C1 (MetaCons "IPV4" PrefixI False) U1) (C1 (MetaCons "IPV6" PrefixI False) U1))

MatchFieldType

data MatchFieldType Source #

Constructors

Body 
Header 
Method 
QueryString 
URI 

Instances

Bounded MatchFieldType Source # 
Enum MatchFieldType Source # 
Eq MatchFieldType Source # 
Data MatchFieldType Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> MatchFieldType -> c MatchFieldType #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c MatchFieldType #

toConstr :: MatchFieldType -> Constr #

dataTypeOf :: MatchFieldType -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c MatchFieldType) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c MatchFieldType) #

gmapT :: (forall b. Data b => b -> b) -> MatchFieldType -> MatchFieldType #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> MatchFieldType -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> MatchFieldType -> r #

gmapQ :: (forall d. Data d => d -> u) -> MatchFieldType -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> MatchFieldType -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> MatchFieldType -> m MatchFieldType #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> MatchFieldType -> m MatchFieldType #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> MatchFieldType -> m MatchFieldType #

Ord MatchFieldType Source # 
Read MatchFieldType Source # 
Show MatchFieldType Source # 
Generic MatchFieldType Source # 

Associated Types

type Rep MatchFieldType :: * -> * #

Hashable MatchFieldType Source # 
ToJSON MatchFieldType Source # 
FromJSON MatchFieldType Source # 
NFData MatchFieldType Source # 

Methods

rnf :: MatchFieldType -> () #

ToHeader MatchFieldType Source # 
ToQuery MatchFieldType Source # 
ToByteString MatchFieldType Source # 
FromText MatchFieldType Source # 
ToText MatchFieldType Source # 
type Rep MatchFieldType Source # 
type Rep MatchFieldType = D1 (MetaData "MatchFieldType" "Network.AWS.WAF.Types.Sum" "amazonka-waf-1.4.5-LwyS40mcrMjGU0oCXONgRC" False) ((:+:) ((:+:) (C1 (MetaCons "Body" PrefixI False) U1) (C1 (MetaCons "Header" PrefixI False) U1)) ((:+:) (C1 (MetaCons "Method" PrefixI False) U1) ((:+:) (C1 (MetaCons "QueryString" PrefixI False) U1) (C1 (MetaCons "URI" PrefixI False) U1))))

PositionalConstraint

data PositionalConstraint Source #

Instances

Bounded PositionalConstraint Source # 
Enum PositionalConstraint Source # 
Eq PositionalConstraint Source # 
Data PositionalConstraint Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> PositionalConstraint -> c PositionalConstraint #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c PositionalConstraint #

toConstr :: PositionalConstraint -> Constr #

dataTypeOf :: PositionalConstraint -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c PositionalConstraint) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c PositionalConstraint) #

gmapT :: (forall b. Data b => b -> b) -> PositionalConstraint -> PositionalConstraint #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> PositionalConstraint -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> PositionalConstraint -> r #

gmapQ :: (forall d. Data d => d -> u) -> PositionalConstraint -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> PositionalConstraint -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> PositionalConstraint -> m PositionalConstraint #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> PositionalConstraint -> m PositionalConstraint #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> PositionalConstraint -> m PositionalConstraint #

Ord PositionalConstraint Source # 
Read PositionalConstraint Source # 
Show PositionalConstraint Source # 
Generic PositionalConstraint Source # 
Hashable PositionalConstraint Source # 
ToJSON PositionalConstraint Source # 
FromJSON PositionalConstraint Source # 
NFData PositionalConstraint Source # 

Methods

rnf :: PositionalConstraint -> () #

ToHeader PositionalConstraint Source # 
ToQuery PositionalConstraint Source # 
ToByteString PositionalConstraint Source # 
FromText PositionalConstraint Source # 
ToText PositionalConstraint Source # 
type Rep PositionalConstraint Source # 
type Rep PositionalConstraint = D1 (MetaData "PositionalConstraint" "Network.AWS.WAF.Types.Sum" "amazonka-waf-1.4.5-LwyS40mcrMjGU0oCXONgRC" False) ((:+:) ((:+:) (C1 (MetaCons "Contains" PrefixI False) U1) (C1 (MetaCons "ContainsWord" PrefixI False) U1)) ((:+:) (C1 (MetaCons "EndsWith" PrefixI False) U1) ((:+:) (C1 (MetaCons "Exactly" PrefixI False) U1) (C1 (MetaCons "StartsWith" PrefixI False) U1))))

PredicateType

data PredicateType Source #

Instances

Bounded PredicateType Source # 
Enum PredicateType Source # 
Eq PredicateType Source # 
Data PredicateType Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> PredicateType -> c PredicateType #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c PredicateType #

toConstr :: PredicateType -> Constr #

dataTypeOf :: PredicateType -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c PredicateType) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c PredicateType) #

gmapT :: (forall b. Data b => b -> b) -> PredicateType -> PredicateType #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> PredicateType -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> PredicateType -> r #

gmapQ :: (forall d. Data d => d -> u) -> PredicateType -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> PredicateType -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> PredicateType -> m PredicateType #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> PredicateType -> m PredicateType #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> PredicateType -> m PredicateType #

Ord PredicateType Source # 
Read PredicateType Source # 
Show PredicateType Source # 
Generic PredicateType Source # 

Associated Types

type Rep PredicateType :: * -> * #

Hashable PredicateType Source # 
ToJSON PredicateType Source # 
FromJSON PredicateType Source # 
NFData PredicateType Source # 

Methods

rnf :: PredicateType -> () #

ToHeader PredicateType Source # 
ToQuery PredicateType Source # 
ToByteString PredicateType Source # 
FromText PredicateType Source # 
ToText PredicateType Source # 

Methods

toText :: PredicateType -> Text #

type Rep PredicateType Source # 
type Rep PredicateType = D1 (MetaData "PredicateType" "Network.AWS.WAF.Types.Sum" "amazonka-waf-1.4.5-LwyS40mcrMjGU0oCXONgRC" False) ((:+:) ((:+:) (C1 (MetaCons "ByteMatch" PrefixI False) U1) (C1 (MetaCons "IPMatch" PrefixI False) U1)) ((:+:) (C1 (MetaCons "SizeConstraint" PrefixI False) U1) ((:+:) (C1 (MetaCons "SqlInjectionMatch" PrefixI False) U1) (C1 (MetaCons "XSSMatch" PrefixI False) U1))))

TextTransformation

data TextTransformation Source #

Instances

Bounded TextTransformation Source # 
Enum TextTransformation Source # 
Eq TextTransformation Source # 
Data TextTransformation Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> TextTransformation -> c TextTransformation #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c TextTransformation #

toConstr :: TextTransformation -> Constr #

dataTypeOf :: TextTransformation -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c TextTransformation) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c TextTransformation) #

gmapT :: (forall b. Data b => b -> b) -> TextTransformation -> TextTransformation #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> TextTransformation -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> TextTransformation -> r #

gmapQ :: (forall d. Data d => d -> u) -> TextTransformation -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> TextTransformation -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> TextTransformation -> m TextTransformation #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> TextTransformation -> m TextTransformation #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> TextTransformation -> m TextTransformation #

Ord TextTransformation Source # 
Read TextTransformation Source # 
Show TextTransformation Source # 
Generic TextTransformation Source # 
Hashable TextTransformation Source # 
ToJSON TextTransformation Source # 
FromJSON TextTransformation Source # 
NFData TextTransformation Source # 

Methods

rnf :: TextTransformation -> () #

ToHeader TextTransformation Source # 
ToQuery TextTransformation Source # 
ToByteString TextTransformation Source # 
FromText TextTransformation Source # 
ToText TextTransformation Source # 
type Rep TextTransformation Source # 
type Rep TextTransformation = D1 (MetaData "TextTransformation" "Network.AWS.WAF.Types.Sum" "amazonka-waf-1.4.5-LwyS40mcrMjGU0oCXONgRC" False) ((:+:) ((:+:) (C1 (MetaCons "CmdLine" PrefixI False) U1) ((:+:) (C1 (MetaCons "CompressWhiteSpace" PrefixI False) U1) (C1 (MetaCons "HTMLEntityDecode" PrefixI False) U1))) ((:+:) (C1 (MetaCons "Lowercase" PrefixI False) U1) ((:+:) (C1 (MetaCons "None" PrefixI False) U1) (C1 (MetaCons "URLDecode" PrefixI False) U1))))

WafActionType

data WafActionType Source #

Constructors

Allow 
Block 
Count 

Instances

Bounded WafActionType Source # 
Enum WafActionType Source # 
Eq WafActionType Source # 
Data WafActionType Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> WafActionType -> c WafActionType #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c WafActionType #

toConstr :: WafActionType -> Constr #

dataTypeOf :: WafActionType -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c WafActionType) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c WafActionType) #

gmapT :: (forall b. Data b => b -> b) -> WafActionType -> WafActionType #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> WafActionType -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> WafActionType -> r #

gmapQ :: (forall d. Data d => d -> u) -> WafActionType -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> WafActionType -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> WafActionType -> m WafActionType #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> WafActionType -> m WafActionType #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> WafActionType -> m WafActionType #

Ord WafActionType Source # 
Read WafActionType Source # 
Show WafActionType Source # 
Generic WafActionType Source # 

Associated Types

type Rep WafActionType :: * -> * #

Hashable WafActionType Source # 
ToJSON WafActionType Source # 
FromJSON WafActionType Source # 
NFData WafActionType Source # 

Methods

rnf :: WafActionType -> () #

ToHeader WafActionType Source # 
ToQuery WafActionType Source # 
ToByteString WafActionType Source # 
FromText WafActionType Source # 
ToText WafActionType Source # 

Methods

toText :: WafActionType -> Text #

type Rep WafActionType Source # 
type Rep WafActionType = D1 (MetaData "WafActionType" "Network.AWS.WAF.Types.Sum" "amazonka-waf-1.4.5-LwyS40mcrMjGU0oCXONgRC" False) ((:+:) (C1 (MetaCons "Allow" PrefixI False) U1) ((:+:) (C1 (MetaCons "Block" PrefixI False) U1) (C1 (MetaCons "Count" PrefixI False) U1)))

ActivatedRule

data ActivatedRule Source #

The ActivatedRule object in an UpdateWebACL request specifies a Rule that you want to insert or delete, the priority of the Rule in the WebACL , and the action that you want AWS WAF to take when a web request matches the Rule (ALLOW , BLOCK , or COUNT ).

To specify whether to insert or delete a Rule , use the Action parameter in the WebACLUpdate data type.

See: activatedRule smart constructor.

Instances

Eq ActivatedRule Source # 
Data ActivatedRule Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ActivatedRule -> c ActivatedRule #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ActivatedRule #

toConstr :: ActivatedRule -> Constr #

dataTypeOf :: ActivatedRule -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c ActivatedRule) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ActivatedRule) #

gmapT :: (forall b. Data b => b -> b) -> ActivatedRule -> ActivatedRule #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ActivatedRule -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ActivatedRule -> r #

gmapQ :: (forall d. Data d => d -> u) -> ActivatedRule -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> ActivatedRule -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> ActivatedRule -> m ActivatedRule #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ActivatedRule -> m ActivatedRule #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ActivatedRule -> m ActivatedRule #

Read ActivatedRule Source # 
Show ActivatedRule Source # 
Generic ActivatedRule Source # 

Associated Types

type Rep ActivatedRule :: * -> * #

Hashable ActivatedRule Source # 
ToJSON ActivatedRule Source # 
FromJSON ActivatedRule Source # 
NFData ActivatedRule Source # 

Methods

rnf :: ActivatedRule -> () #

type Rep ActivatedRule Source # 
type Rep ActivatedRule = D1 (MetaData "ActivatedRule" "Network.AWS.WAF.Types.Product" "amazonka-waf-1.4.5-LwyS40mcrMjGU0oCXONgRC" False) (C1 (MetaCons "ActivatedRule'" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "_arPriority") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 Int)) ((:*:) (S1 (MetaSel (Just Symbol "_arRuleId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text)) (S1 (MetaSel (Just Symbol "_arAction") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 WafAction)))))

activatedRule Source #

Creates a value of ActivatedRule with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

  • arPriority - Specifies the order in which the Rules in a WebACL are evaluated. Rules with a lower value for Priority are evaluated before Rules with a higher value. The value must be a unique integer. If you add multiple Rules to a WebACL , the values don't need to be consecutive.
  • arRuleId - The RuleId for a Rule . You use RuleId to get more information about a Rule (see GetRule ), update a Rule (see UpdateRule ), insert a Rule into a WebACL or delete a one from a WebACL (see UpdateWebACL ), or delete a Rule from AWS WAF (see DeleteRule ). RuleId is returned by CreateRule and by ListRules .
  • arAction - Specifies the action that CloudFront or AWS WAF takes when a web request matches the conditions in the Rule . Valid values for Action include the following: * ALLOW : CloudFront responds with the requested object. * BLOCK : CloudFront responds with an HTTP 403 (Forbidden) status code. * COUNT : AWS WAF increments a counter of requests that match the conditions in the rule and then continues to inspect the web request based on the remaining rules in the web ACL.

arPriority :: Lens' ActivatedRule Int Source #

Specifies the order in which the Rules in a WebACL are evaluated. Rules with a lower value for Priority are evaluated before Rules with a higher value. The value must be a unique integer. If you add multiple Rules to a WebACL , the values don't need to be consecutive.

arRuleId :: Lens' ActivatedRule Text Source #

The RuleId for a Rule . You use RuleId to get more information about a Rule (see GetRule ), update a Rule (see UpdateRule ), insert a Rule into a WebACL or delete a one from a WebACL (see UpdateWebACL ), or delete a Rule from AWS WAF (see DeleteRule ). RuleId is returned by CreateRule and by ListRules .

arAction :: Lens' ActivatedRule WafAction Source #

Specifies the action that CloudFront or AWS WAF takes when a web request matches the conditions in the Rule . Valid values for Action include the following: * ALLOW : CloudFront responds with the requested object. * BLOCK : CloudFront responds with an HTTP 403 (Forbidden) status code. * COUNT : AWS WAF increments a counter of requests that match the conditions in the rule and then continues to inspect the web request based on the remaining rules in the web ACL.

ByteMatchSet

data ByteMatchSet Source #

In a GetByteMatchSet request, ByteMatchSet is a complex type that contains the ByteMatchSetId and Name of a ByteMatchSet , and the values that you specified when you updated the ByteMatchSet .

A complex type that contains ByteMatchTuple objects, which specify the parts of web requests that you want AWS WAF to inspect and the values that you want AWS WAF to search for. If a ByteMatchSet contains more than one ByteMatchTuple object, a request needs to match the settings in only one ByteMatchTuple to be considered a match.

See: byteMatchSet smart constructor.

Instances

Eq ByteMatchSet Source # 
Data ByteMatchSet Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ByteMatchSet -> c ByteMatchSet #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ByteMatchSet #

toConstr :: ByteMatchSet -> Constr #

dataTypeOf :: ByteMatchSet -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c ByteMatchSet) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ByteMatchSet) #

gmapT :: (forall b. Data b => b -> b) -> ByteMatchSet -> ByteMatchSet #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ByteMatchSet -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ByteMatchSet -> r #

gmapQ :: (forall d. Data d => d -> u) -> ByteMatchSet -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> ByteMatchSet -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> ByteMatchSet -> m ByteMatchSet #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ByteMatchSet -> m ByteMatchSet #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ByteMatchSet -> m ByteMatchSet #

Read ByteMatchSet Source # 
Show ByteMatchSet Source # 
Generic ByteMatchSet Source # 

Associated Types

type Rep ByteMatchSet :: * -> * #

Hashable ByteMatchSet Source # 
FromJSON ByteMatchSet Source # 
NFData ByteMatchSet Source # 

Methods

rnf :: ByteMatchSet -> () #

type Rep ByteMatchSet Source # 
type Rep ByteMatchSet = D1 (MetaData "ByteMatchSet" "Network.AWS.WAF.Types.Product" "amazonka-waf-1.4.5-LwyS40mcrMjGU0oCXONgRC" False) (C1 (MetaCons "ByteMatchSet'" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "_bmsName") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text))) ((:*:) (S1 (MetaSel (Just Symbol "_bmsByteMatchSetId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text)) (S1 (MetaSel (Just Symbol "_bmsByteMatchTuples") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 [ByteMatchTuple])))))

byteMatchSet Source #

Creates a value of ByteMatchSet with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

  • bmsName - A friendly name or description of the ByteMatchSet . You can't change Name after you create a ByteMatchSet .
  • bmsByteMatchSetId - The ByteMatchSetId for a ByteMatchSet . You use ByteMatchSetId to get information about a ByteMatchSet (see GetByteMatchSet ), update a ByteMatchSet (see UpdateByteMatchSet ), insert a ByteMatchSet into a Rule or delete one from a Rule (see UpdateRule ), and delete a ByteMatchSet from AWS WAF (see DeleteByteMatchSet ). ByteMatchSetId is returned by CreateByteMatchSet and by ListByteMatchSets .
  • bmsByteMatchTuples - Specifies the bytes (typically a string that corresponds with ASCII characters) that you want AWS WAF to search for in web requests, the location in requests that you want AWS WAF to search, and other settings.

bmsName :: Lens' ByteMatchSet (Maybe Text) Source #

A friendly name or description of the ByteMatchSet . You can't change Name after you create a ByteMatchSet .

bmsByteMatchSetId :: Lens' ByteMatchSet Text Source #

The ByteMatchSetId for a ByteMatchSet . You use ByteMatchSetId to get information about a ByteMatchSet (see GetByteMatchSet ), update a ByteMatchSet (see UpdateByteMatchSet ), insert a ByteMatchSet into a Rule or delete one from a Rule (see UpdateRule ), and delete a ByteMatchSet from AWS WAF (see DeleteByteMatchSet ). ByteMatchSetId is returned by CreateByteMatchSet and by ListByteMatchSets .

bmsByteMatchTuples :: Lens' ByteMatchSet [ByteMatchTuple] Source #

Specifies the bytes (typically a string that corresponds with ASCII characters) that you want AWS WAF to search for in web requests, the location in requests that you want AWS WAF to search, and other settings.

ByteMatchSetSummary

data ByteMatchSetSummary Source #

Returned by ListByteMatchSets . Each ByteMatchSetSummary object includes the Name and ByteMatchSetId for one ByteMatchSet .

See: byteMatchSetSummary smart constructor.

Instances

Eq ByteMatchSetSummary Source # 
Data ByteMatchSetSummary Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ByteMatchSetSummary -> c ByteMatchSetSummary #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ByteMatchSetSummary #

toConstr :: ByteMatchSetSummary -> Constr #

dataTypeOf :: ByteMatchSetSummary -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c ByteMatchSetSummary) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ByteMatchSetSummary) #

gmapT :: (forall b. Data b => b -> b) -> ByteMatchSetSummary -> ByteMatchSetSummary #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ByteMatchSetSummary -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ByteMatchSetSummary -> r #

gmapQ :: (forall d. Data d => d -> u) -> ByteMatchSetSummary -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> ByteMatchSetSummary -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> ByteMatchSetSummary -> m ByteMatchSetSummary #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ByteMatchSetSummary -> m ByteMatchSetSummary #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ByteMatchSetSummary -> m ByteMatchSetSummary #

Read ByteMatchSetSummary Source # 
Show ByteMatchSetSummary Source # 
Generic ByteMatchSetSummary Source # 
Hashable ByteMatchSetSummary Source # 
FromJSON ByteMatchSetSummary Source # 
NFData ByteMatchSetSummary Source # 

Methods

rnf :: ByteMatchSetSummary -> () #

type Rep ByteMatchSetSummary Source # 
type Rep ByteMatchSetSummary = D1 (MetaData "ByteMatchSetSummary" "Network.AWS.WAF.Types.Product" "amazonka-waf-1.4.5-LwyS40mcrMjGU0oCXONgRC" False) (C1 (MetaCons "ByteMatchSetSummary'" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "_bmssByteMatchSetId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text)) (S1 (MetaSel (Just Symbol "_bmssName") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text))))

byteMatchSetSummary Source #

Creates a value of ByteMatchSetSummary with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

  • bmssByteMatchSetId - The ByteMatchSetId for a ByteMatchSet . You use ByteMatchSetId to get information about a ByteMatchSet , update a ByteMatchSet , remove a ByteMatchSet from a Rule , and delete a ByteMatchSet from AWS WAF. ByteMatchSetId is returned by CreateByteMatchSet and by ListByteMatchSets .
  • bmssName - A friendly name or description of the ByteMatchSet . You can't change Name after you create a ByteMatchSet .

bmssByteMatchSetId :: Lens' ByteMatchSetSummary Text Source #

The ByteMatchSetId for a ByteMatchSet . You use ByteMatchSetId to get information about a ByteMatchSet , update a ByteMatchSet , remove a ByteMatchSet from a Rule , and delete a ByteMatchSet from AWS WAF. ByteMatchSetId is returned by CreateByteMatchSet and by ListByteMatchSets .

bmssName :: Lens' ByteMatchSetSummary Text Source #

A friendly name or description of the ByteMatchSet . You can't change Name after you create a ByteMatchSet .

ByteMatchSetUpdate

data ByteMatchSetUpdate Source #

In an UpdateByteMatchSet request, ByteMatchSetUpdate specifies whether to insert or delete a ByteMatchTuple and includes the settings for the ByteMatchTuple .

See: byteMatchSetUpdate smart constructor.

Instances

Eq ByteMatchSetUpdate Source # 
Data ByteMatchSetUpdate Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ByteMatchSetUpdate -> c ByteMatchSetUpdate #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ByteMatchSetUpdate #

toConstr :: ByteMatchSetUpdate -> Constr #

dataTypeOf :: ByteMatchSetUpdate -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c ByteMatchSetUpdate) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ByteMatchSetUpdate) #

gmapT :: (forall b. Data b => b -> b) -> ByteMatchSetUpdate -> ByteMatchSetUpdate #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ByteMatchSetUpdate -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ByteMatchSetUpdate -> r #

gmapQ :: (forall d. Data d => d -> u) -> ByteMatchSetUpdate -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> ByteMatchSetUpdate -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> ByteMatchSetUpdate -> m ByteMatchSetUpdate #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ByteMatchSetUpdate -> m ByteMatchSetUpdate #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ByteMatchSetUpdate -> m ByteMatchSetUpdate #

Read ByteMatchSetUpdate Source # 
Show ByteMatchSetUpdate Source # 
Generic ByteMatchSetUpdate Source # 
Hashable ByteMatchSetUpdate Source # 
ToJSON ByteMatchSetUpdate Source # 
NFData ByteMatchSetUpdate Source # 

Methods

rnf :: ByteMatchSetUpdate -> () #

type Rep ByteMatchSetUpdate Source # 
type Rep ByteMatchSetUpdate = D1 (MetaData "ByteMatchSetUpdate" "Network.AWS.WAF.Types.Product" "amazonka-waf-1.4.5-LwyS40mcrMjGU0oCXONgRC" False) (C1 (MetaCons "ByteMatchSetUpdate'" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "_bmsuAction") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 ChangeAction)) (S1 (MetaSel (Just Symbol "_bmsuByteMatchTuple") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 ByteMatchTuple))))

byteMatchSetUpdate Source #

Creates a value of ByteMatchSetUpdate with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

  • bmsuAction - Specifies whether to insert or delete a ByteMatchTuple .
  • bmsuByteMatchTuple - Information about the part of a web request that you want AWS WAF to inspect and the value that you want AWS WAF to search for. If you specify DELETE for the value of Action , the ByteMatchTuple values must exactly match the values in the ByteMatchTuple that you want to delete from the ByteMatchSet .

bmsuAction :: Lens' ByteMatchSetUpdate ChangeAction Source #

Specifies whether to insert or delete a ByteMatchTuple .

bmsuByteMatchTuple :: Lens' ByteMatchSetUpdate ByteMatchTuple Source #

Information about the part of a web request that you want AWS WAF to inspect and the value that you want AWS WAF to search for. If you specify DELETE for the value of Action , the ByteMatchTuple values must exactly match the values in the ByteMatchTuple that you want to delete from the ByteMatchSet .

ByteMatchTuple

data ByteMatchTuple Source #

The bytes (typically a string that corresponds with ASCII characters) that you want AWS WAF to search for in web requests, the location in requests that you want AWS WAF to search, and other settings.

See: byteMatchTuple smart constructor.

Instances

Eq ByteMatchTuple Source # 
Data ByteMatchTuple Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ByteMatchTuple -> c ByteMatchTuple #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ByteMatchTuple #

toConstr :: ByteMatchTuple -> Constr #

dataTypeOf :: ByteMatchTuple -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c ByteMatchTuple) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ByteMatchTuple) #

gmapT :: (forall b. Data b => b -> b) -> ByteMatchTuple -> ByteMatchTuple #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ByteMatchTuple -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ByteMatchTuple -> r #

gmapQ :: (forall d. Data d => d -> u) -> ByteMatchTuple -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> ByteMatchTuple -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> ByteMatchTuple -> m ByteMatchTuple #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ByteMatchTuple -> m ByteMatchTuple #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ByteMatchTuple -> m ByteMatchTuple #

Read ByteMatchTuple Source # 
Show ByteMatchTuple Source # 
Generic ByteMatchTuple Source # 

Associated Types

type Rep ByteMatchTuple :: * -> * #

Hashable ByteMatchTuple Source # 
ToJSON ByteMatchTuple Source # 
FromJSON ByteMatchTuple Source # 
NFData ByteMatchTuple Source # 

Methods

rnf :: ByteMatchTuple -> () #

type Rep ByteMatchTuple Source # 
type Rep ByteMatchTuple = D1 (MetaData "ByteMatchTuple" "Network.AWS.WAF.Types.Product" "amazonka-waf-1.4.5-LwyS40mcrMjGU0oCXONgRC" False) (C1 (MetaCons "ByteMatchTuple'" PrefixI True) ((:*:) ((:*:) (S1 (MetaSel (Just Symbol "_bmtFieldToMatch") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 FieldToMatch)) (S1 (MetaSel (Just Symbol "_bmtTargetString") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Base64))) ((:*:) (S1 (MetaSel (Just Symbol "_bmtTextTransformation") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 TextTransformation)) (S1 (MetaSel (Just Symbol "_bmtPositionalConstraint") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 PositionalConstraint)))))

byteMatchTuple Source #

Creates a value of ByteMatchTuple with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

  • bmtFieldToMatch - The part of a web request that you want AWS WAF to search, such as a specified header or a query string. For more information, see FieldToMatch .
  • bmtTargetString - The value that you want AWS WAF to search for. AWS WAF searches for the specified string in the part of web requests that you specified in FieldToMatch . The maximum length of the value is 50 bytes. Valid values depend on the values that you specified for FieldToMatch : * HEADER : The value that you want AWS WAF to search for in the request header that you specified in FieldToMatch , for example, the value of the User-Agent or Referer header. * METHOD : The HTTP method, which indicates the type of operation specified in the request. CloudFront supports the following methods: DELETE , GET , HEAD , OPTIONS , PATCH , POST , and PUT . * QUERY_STRING : The value that you want AWS WAF to search for in the query string, which is the part of a URL that appears after a ? character. * URI : The value that you want AWS WAF to search for in the part of a URL that identifies a resource, for example, imagesdaily-ad.jpg . * BODY : The part of a request that contains any additional data that you want to send to your web server as the HTTP request body, such as data from a form. The request body immediately follows the request headers. Note that only the first 8192 bytes of the request body are forwarded to AWS WAF for inspection. To allow or block requests based on the length of the body, you can create a size constraint set. For more information, see CreateSizeConstraintSet . If TargetString includes alphabetic characters A-Z and a-z, note that the value is case sensitive. If you're using the AWS WAF API Specify a base64-encoded version of the value. The maximum length of the value before you base64-encode it is 50 bytes. For example, suppose the value of Type is HEADER and the value of Data is User-Agent . If you want to search the User-Agent header for the value BadBot , you base64-encode BadBot using MIME base64 encoding and include the resulting value, QmFkQm90 , in the value of TargetString . If you're using the AWS CLI or one of the AWS SDKs The value that you want AWS WAF to search for. The SDK automatically base64 encodes the value.-- Note: This Lens automatically encodes and decodes Base64 data. The underlying isomorphism will encode to Base64 representation during serialisation, and decode from Base64 representation during deserialisation. This Lens accepts and returns only raw unencoded data.
  • bmtTextTransformation - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass AWS WAF. If you specify a transformation, AWS WAF performs the transformation on TargetString before inspecting a request for a match. CMD_LINE When you're concerned that attackers are injecting an operating system commandline command and using unusual formatting to disguise some or all of the command, use this option to perform the following transformations: * Delete the following characters: " ' ^ * Delete spaces before the following characters: / ( * Replace the following characters with a space: , ; * Replace multiple spaces with one space * Convert uppercase letters (A-Z) to lowercase (a-z) COMPRESS_WHITE_SPACE Use this option to replace the following characters with a space character (decimal 32): * f, formfeed, decimal 12 * t, tab, decimal 9 * n, newline, decimal 10 * r, carriage return, decimal 13 * v, vertical tab, decimal 11 * non-breaking space, decimal 160 COMPRESS_WHITE_SPACE also replaces multiple spaces with one space. HTML_ENTITY_DECODE Use this option to replace HTML-encoded characters with unencoded characters. HTML_ENTITY_DECODE performs the following operations: * Replaces (ampersand)quot; with " * Replaces (ampersand)nbsp; with a non-breaking space, decimal 160 * Replaces (ampersand)lt; with a "less than" symbol * Replaces (ampersand)gt; with > * Replaces characters that are represented in hexadecimal format, (ampersand)#xhhhh; , with the corresponding characters * Replaces characters that are represented in decimal format, (ampersand)#nnnn; , with the corresponding characters LOWERCASE Use this option to convert uppercase letters (A-Z) to lowercase (a-z). URL_DECODE Use this option to decode a URL-encoded value. NONE Specify NONE if you don't want to perform any text transformations.
  • bmtPositionalConstraint - Within the portion of a web request that you want to search (for example, in the query string, if any), specify where you want AWS WAF to search. Valid values include the following: CONTAINS The specified part of the web request must include the value of TargetString , but the location doesn't matter. CONTAINS_WORD The specified part of the web request must include the value of TargetString , and TargetString must contain only alphanumeric characters or underscore (A-Z, a-z, 0-9, or _). In addition, TargetString must be a word, which means one of the following: * TargetString exactly matches the value of the specified part of the web request, such as the value of a header. * TargetString is at the beginning of the specified part of the web request and is followed by a character other than an alphanumeric character or underscore (_), for example, BadBot; . * TargetString is at the end of the specified part of the web request and is preceded by a character other than an alphanumeric character or underscore (_), for example, ;BadBot . * TargetString is in the middle of the specified part of the web request and is preceded and followed by characters other than alphanumeric characters or underscore (_), for example, -BadBot; . EXACTLY The value of the specified part of the web request must exactly match the value of TargetString . STARTS_WITH The value of TargetString must appear at the beginning of the specified part of the web request. ENDS_WITH The value of TargetString must appear at the end of the specified part of the web request.

bmtFieldToMatch :: Lens' ByteMatchTuple FieldToMatch Source #

The part of a web request that you want AWS WAF to search, such as a specified header or a query string. For more information, see FieldToMatch .

bmtTargetString :: Lens' ByteMatchTuple ByteString Source #

The value that you want AWS WAF to search for. AWS WAF searches for the specified string in the part of web requests that you specified in FieldToMatch . The maximum length of the value is 50 bytes. Valid values depend on the values that you specified for FieldToMatch : * HEADER : The value that you want AWS WAF to search for in the request header that you specified in FieldToMatch , for example, the value of the User-Agent or Referer header. * METHOD : The HTTP method, which indicates the type of operation specified in the request. CloudFront supports the following methods: DELETE , GET , HEAD , OPTIONS , PATCH , POST , and PUT . * QUERY_STRING : The value that you want AWS WAF to search for in the query string, which is the part of a URL that appears after a ? character. * URI : The value that you want AWS WAF to search for in the part of a URL that identifies a resource, for example, imagesdaily-ad.jpg . * BODY : The part of a request that contains any additional data that you want to send to your web server as the HTTP request body, such as data from a form. The request body immediately follows the request headers. Note that only the first 8192 bytes of the request body are forwarded to AWS WAF for inspection. To allow or block requests based on the length of the body, you can create a size constraint set. For more information, see CreateSizeConstraintSet . If TargetString includes alphabetic characters A-Z and a-z, note that the value is case sensitive. If you're using the AWS WAF API Specify a base64-encoded version of the value. The maximum length of the value before you base64-encode it is 50 bytes. For example, suppose the value of Type is HEADER and the value of Data is User-Agent . If you want to search the User-Agent header for the value BadBot , you base64-encode BadBot using MIME base64 encoding and include the resulting value, QmFkQm90 , in the value of TargetString . If you're using the AWS CLI or one of the AWS SDKs The value that you want AWS WAF to search for. The SDK automatically base64 encodes the value.-- Note: This Lens automatically encodes and decodes Base64 data. The underlying isomorphism will encode to Base64 representation during serialisation, and decode from Base64 representation during deserialisation. This Lens accepts and returns only raw unencoded data.

bmtTextTransformation :: Lens' ByteMatchTuple TextTransformation Source #

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass AWS WAF. If you specify a transformation, AWS WAF performs the transformation on TargetString before inspecting a request for a match. CMD_LINE When you're concerned that attackers are injecting an operating system commandline command and using unusual formatting to disguise some or all of the command, use this option to perform the following transformations: * Delete the following characters: " ' ^ * Delete spaces before the following characters: / ( * Replace the following characters with a space: , ; * Replace multiple spaces with one space * Convert uppercase letters (A-Z) to lowercase (a-z) COMPRESS_WHITE_SPACE Use this option to replace the following characters with a space character (decimal 32): * f, formfeed, decimal 12 * t, tab, decimal 9 * n, newline, decimal 10 * r, carriage return, decimal 13 * v, vertical tab, decimal 11 * non-breaking space, decimal 160 COMPRESS_WHITE_SPACE also replaces multiple spaces with one space. HTML_ENTITY_DECODE Use this option to replace HTML-encoded characters with unencoded characters. HTML_ENTITY_DECODE performs the following operations: * Replaces (ampersand)quot; with " * Replaces (ampersand)nbsp; with a non-breaking space, decimal 160 * Replaces (ampersand)lt; with a "less than" symbol * Replaces (ampersand)gt; with > * Replaces characters that are represented in hexadecimal format, (ampersand)#xhhhh; , with the corresponding characters * Replaces characters that are represented in decimal format, (ampersand)#nnnn; , with the corresponding characters LOWERCASE Use this option to convert uppercase letters (A-Z) to lowercase (a-z). URL_DECODE Use this option to decode a URL-encoded value. NONE Specify NONE if you don't want to perform any text transformations.

bmtPositionalConstraint :: Lens' ByteMatchTuple PositionalConstraint Source #

Within the portion of a web request that you want to search (for example, in the query string, if any), specify where you want AWS WAF to search. Valid values include the following: CONTAINS The specified part of the web request must include the value of TargetString , but the location doesn't matter. CONTAINS_WORD The specified part of the web request must include the value of TargetString , and TargetString must contain only alphanumeric characters or underscore (A-Z, a-z, 0-9, or _). In addition, TargetString must be a word, which means one of the following: * TargetString exactly matches the value of the specified part of the web request, such as the value of a header. * TargetString is at the beginning of the specified part of the web request and is followed by a character other than an alphanumeric character or underscore (_), for example, BadBot; . * TargetString is at the end of the specified part of the web request and is preceded by a character other than an alphanumeric character or underscore (_), for example, ;BadBot . * TargetString is in the middle of the specified part of the web request and is preceded and followed by characters other than alphanumeric characters or underscore (_), for example, -BadBot; . EXACTLY The value of the specified part of the web request must exactly match the value of TargetString . STARTS_WITH The value of TargetString must appear at the beginning of the specified part of the web request. ENDS_WITH The value of TargetString must appear at the end of the specified part of the web request.

FieldToMatch

data FieldToMatch Source #

Specifies where in a web request to look for TargetString .

See: fieldToMatch smart constructor.

Instances

Eq FieldToMatch Source # 
Data FieldToMatch Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> FieldToMatch -> c FieldToMatch #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c FieldToMatch #

toConstr :: FieldToMatch -> Constr #

dataTypeOf :: FieldToMatch -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c FieldToMatch) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c FieldToMatch) #

gmapT :: (forall b. Data b => b -> b) -> FieldToMatch -> FieldToMatch #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> FieldToMatch -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> FieldToMatch -> r #

gmapQ :: (forall d. Data d => d -> u) -> FieldToMatch -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> FieldToMatch -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> FieldToMatch -> m FieldToMatch #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> FieldToMatch -> m FieldToMatch #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> FieldToMatch -> m FieldToMatch #

Read FieldToMatch Source # 
Show FieldToMatch Source # 
Generic FieldToMatch Source # 

Associated Types

type Rep FieldToMatch :: * -> * #

Hashable FieldToMatch Source # 
ToJSON FieldToMatch Source # 
FromJSON FieldToMatch Source # 
NFData FieldToMatch Source # 

Methods

rnf :: FieldToMatch -> () #

type Rep FieldToMatch Source # 
type Rep FieldToMatch = D1 (MetaData "FieldToMatch" "Network.AWS.WAF.Types.Product" "amazonka-waf-1.4.5-LwyS40mcrMjGU0oCXONgRC" False) (C1 (MetaCons "FieldToMatch'" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "_ftmData") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text))) (S1 (MetaSel (Just Symbol "_ftmType") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 MatchFieldType))))

fieldToMatch Source #

Creates a value of FieldToMatch with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

  • ftmData - When the value of Type is HEADER , enter the name of the header that you want AWS WAF to search, for example, User-Agent or Referer . If the value of Type is any other value, omit Data . The name of the header is not case sensitive.
  • ftmType - The part of the web request that you want AWS WAF to search for a specified string. Parts of a request that you can search include the following: * HEADER : A specified request header, for example, the value of the User-Agent or Referer header. If you choose HEADER for the type, specify the name of the header in Data . * METHOD : The HTTP method, which indicated the type of operation that the request is asking the origin to perform. Amazon CloudFront supports the following methods: DELETE , GET , HEAD , OPTIONS , PATCH , POST , and PUT . * QUERY_STRING : A query string, which is the part of a URL that appears after a ? character, if any. * URI : The part of a web request that identifies a resource, for example, imagesdaily-ad.jpg . * BODY : The part of a request that contains any additional data that you want to send to your web server as the HTTP request body, such as data from a form. The request body immediately follows the request headers. Note that only the first 8192 bytes of the request body are forwarded to AWS WAF for inspection. To allow or block requests based on the length of the body, you can create a size constraint set. For more information, see CreateSizeConstraintSet .

ftmData :: Lens' FieldToMatch (Maybe Text) Source #

When the value of Type is HEADER , enter the name of the header that you want AWS WAF to search, for example, User-Agent or Referer . If the value of Type is any other value, omit Data . The name of the header is not case sensitive.

ftmType :: Lens' FieldToMatch MatchFieldType Source #

The part of the web request that you want AWS WAF to search for a specified string. Parts of a request that you can search include the following: * HEADER : A specified request header, for example, the value of the User-Agent or Referer header. If you choose HEADER for the type, specify the name of the header in Data . * METHOD : The HTTP method, which indicated the type of operation that the request is asking the origin to perform. Amazon CloudFront supports the following methods: DELETE , GET , HEAD , OPTIONS , PATCH , POST , and PUT . * QUERY_STRING : A query string, which is the part of a URL that appears after a ? character, if any. * URI : The part of a web request that identifies a resource, for example, imagesdaily-ad.jpg . * BODY : The part of a request that contains any additional data that you want to send to your web server as the HTTP request body, such as data from a form. The request body immediately follows the request headers. Note that only the first 8192 bytes of the request body are forwarded to AWS WAF for inspection. To allow or block requests based on the length of the body, you can create a size constraint set. For more information, see CreateSizeConstraintSet .

HTTPHeader

data HTTPHeader Source #

The response from a GetSampledRequests request includes an HTTPHeader complex type that appears as Headers in the response syntax. HTTPHeader contains the names and values of all of the headers that appear in one of the web requests that were returned by GetSampledRequests .

See: hTTPHeader smart constructor.

Instances

Eq HTTPHeader Source # 
Data HTTPHeader Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> HTTPHeader -> c HTTPHeader #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c HTTPHeader #

toConstr :: HTTPHeader -> Constr #

dataTypeOf :: HTTPHeader -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c HTTPHeader) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c HTTPHeader) #

gmapT :: (forall b. Data b => b -> b) -> HTTPHeader -> HTTPHeader #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> HTTPHeader -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> HTTPHeader -> r #

gmapQ :: (forall d. Data d => d -> u) -> HTTPHeader -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> HTTPHeader -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> HTTPHeader -> m HTTPHeader #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> HTTPHeader -> m HTTPHeader #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> HTTPHeader -> m HTTPHeader #

Read HTTPHeader Source # 
Show HTTPHeader Source # 
Generic HTTPHeader Source # 

Associated Types

type Rep HTTPHeader :: * -> * #

Hashable HTTPHeader Source # 
FromJSON HTTPHeader Source # 
NFData HTTPHeader Source # 

Methods

rnf :: HTTPHeader -> () #

type Rep HTTPHeader Source # 
type Rep HTTPHeader = D1 (MetaData "HTTPHeader" "Network.AWS.WAF.Types.Product" "amazonka-waf-1.4.5-LwyS40mcrMjGU0oCXONgRC" False) (C1 (MetaCons "HTTPHeader'" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "_httphValue") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text))) (S1 (MetaSel (Just Symbol "_httphName") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text)))))

hTTPHeader :: HTTPHeader Source #

Creates a value of HTTPHeader with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

  • httphValue - The value of one of the headers in the sampled web request.
  • httphName - The name of one of the headers in the sampled web request.

httphValue :: Lens' HTTPHeader (Maybe Text) Source #

The value of one of the headers in the sampled web request.

httphName :: Lens' HTTPHeader (Maybe Text) Source #

The name of one of the headers in the sampled web request.

HTTPRequest

data HTTPRequest Source #

The response from a GetSampledRequests request includes an HTTPRequest complex type that appears as Request in the response syntax. HTTPRequest contains information about one of the web requests that were returned by GetSampledRequests .

See: hTTPRequest smart constructor.

Instances

Eq HTTPRequest Source # 
Data HTTPRequest Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> HTTPRequest -> c HTTPRequest #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c HTTPRequest #

toConstr :: HTTPRequest -> Constr #

dataTypeOf :: HTTPRequest -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c HTTPRequest) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c HTTPRequest) #

gmapT :: (forall b. Data b => b -> b) -> HTTPRequest -> HTTPRequest #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> HTTPRequest -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> HTTPRequest -> r #

gmapQ :: (forall d. Data d => d -> u) -> HTTPRequest -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> HTTPRequest -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> HTTPRequest -> m HTTPRequest #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> HTTPRequest -> m HTTPRequest #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> HTTPRequest -> m HTTPRequest #

Read HTTPRequest Source # 
Show HTTPRequest Source # 
Generic HTTPRequest Source # 

Associated Types

type Rep HTTPRequest :: * -> * #

Hashable HTTPRequest Source # 
FromJSON HTTPRequest Source # 
NFData HTTPRequest Source # 

Methods

rnf :: HTTPRequest -> () #

type Rep HTTPRequest Source # 

hTTPRequest :: HTTPRequest Source #

Creates a value of HTTPRequest with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

  • httprHTTPVersion - The HTTP version specified in the sampled web request, for example, HTTP/1.1 .
  • httprCountry - The two-letter country code for the country that the request originated from. For a current list of country codes, see the Wikipedia entry ISO 3166-1 alpha-2 .
  • httprURI - The part of a web request that identifies the resource, for example, imagesdaily-ad.jpg .
  • httprHeaders - A complex type that contains two values for each header in the sampled web request: the name of the header and the value of the header.
  • httprMethod - The HTTP method specified in the sampled web request. CloudFront supports the following methods: DELETE , GET , HEAD , OPTIONS , PATCH , POST , and PUT .
  • httprClientIP - The IP address that the request originated from. If the WebACL is associated with a CloudFront distribution, this is the value of one of the following fields in CloudFront access logs: * c-ip , if the viewer did not use an HTTP proxy or a load balancer to send the request * x-forwarded-for , if the viewer did use an HTTP proxy or a load balancer to send the request

httprHTTPVersion :: Lens' HTTPRequest (Maybe Text) Source #

The HTTP version specified in the sampled web request, for example, HTTP/1.1 .

httprCountry :: Lens' HTTPRequest (Maybe Text) Source #

The two-letter country code for the country that the request originated from. For a current list of country codes, see the Wikipedia entry ISO 3166-1 alpha-2 .

httprURI :: Lens' HTTPRequest (Maybe Text) Source #

The part of a web request that identifies the resource, for example, imagesdaily-ad.jpg .

httprHeaders :: Lens' HTTPRequest [HTTPHeader] Source #

A complex type that contains two values for each header in the sampled web request: the name of the header and the value of the header.

httprMethod :: Lens' HTTPRequest (Maybe Text) Source #

The HTTP method specified in the sampled web request. CloudFront supports the following methods: DELETE , GET , HEAD , OPTIONS , PATCH , POST , and PUT .

httprClientIP :: Lens' HTTPRequest (Maybe Text) Source #

The IP address that the request originated from. If the WebACL is associated with a CloudFront distribution, this is the value of one of the following fields in CloudFront access logs: * c-ip , if the viewer did not use an HTTP proxy or a load balancer to send the request * x-forwarded-for , if the viewer did use an HTTP proxy or a load balancer to send the request

IPSet

data IPSet Source #

Contains one or more IP addresses or blocks of IP addresses specified in Classless Inter-Domain Routing (CIDR) notation. To specify an individual IP address, you specify the four-part IP address followed by a /32 , for example, 192.0.2.031. To block a range of IP addresses, you can specify a @24 , a 16 , or a 8 CIDR. For more information about CIDR notation, perform an Internet search on cidr notation@ .

See: ipSet smart constructor.

Instances

Eq IPSet Source # 

Methods

(==) :: IPSet -> IPSet -> Bool #

(/=) :: IPSet -> IPSet -> Bool #

Data IPSet Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> IPSet -> c IPSet #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c IPSet #

toConstr :: IPSet -> Constr #

dataTypeOf :: IPSet -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c IPSet) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c IPSet) #

gmapT :: (forall b. Data b => b -> b) -> IPSet -> IPSet #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> IPSet -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> IPSet -> r #

gmapQ :: (forall d. Data d => d -> u) -> IPSet -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> IPSet -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> IPSet -> m IPSet #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> IPSet -> m IPSet #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> IPSet -> m IPSet #

Read IPSet Source # 
Show IPSet Source # 

Methods

showsPrec :: Int -> IPSet -> ShowS #

show :: IPSet -> String #

showList :: [IPSet] -> ShowS #

Generic IPSet Source # 

Associated Types

type Rep IPSet :: * -> * #

Methods

from :: IPSet -> Rep IPSet x #

to :: Rep IPSet x -> IPSet #

Hashable IPSet Source # 

Methods

hashWithSalt :: Int -> IPSet -> Int #

hash :: IPSet -> Int #

FromJSON IPSet Source # 
NFData IPSet Source # 

Methods

rnf :: IPSet -> () #

type Rep IPSet Source # 
type Rep IPSet = D1 (MetaData "IPSet" "Network.AWS.WAF.Types.Product" "amazonka-waf-1.4.5-LwyS40mcrMjGU0oCXONgRC" False) (C1 (MetaCons "IPSet'" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "_isName") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text))) ((:*:) (S1 (MetaSel (Just Symbol "_isIPSetId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text)) (S1 (MetaSel (Just Symbol "_isIPSetDescriptors") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 [IPSetDescriptor])))))

ipSet Source #

Arguments

:: Text

isIPSetId

-> IPSet 

Creates a value of IPSet with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

  • isName - A friendly name or description of the IPSet . You can't change the name of an IPSet after you create it.
  • isIPSetId - The IPSetId for an IPSet . You use IPSetId to get information about an IPSet (see GetIPSet ), update an IPSet (see UpdateIPSet ), insert an IPSet into a Rule or delete one from a Rule (see UpdateRule ), and delete an IPSet from AWS WAF (see DeleteIPSet ). IPSetId is returned by CreateIPSet and by ListIPSets .
  • isIPSetDescriptors - The IP address type (IPV4 ) and the IP address range (in CIDR notation) that web requests originate from. If the WebACL is associated with a CloudFront distribution, this is the value of one of the following fields in CloudFront access logs: * c-ip , if the viewer did not use an HTTP proxy or a load balancer to send the request * x-forwarded-for , if the viewer did use an HTTP proxy or a load balancer to send the request

isName :: Lens' IPSet (Maybe Text) Source #

A friendly name or description of the IPSet . You can't change the name of an IPSet after you create it.

isIPSetId :: Lens' IPSet Text Source #

The IPSetId for an IPSet . You use IPSetId to get information about an IPSet (see GetIPSet ), update an IPSet (see UpdateIPSet ), insert an IPSet into a Rule or delete one from a Rule (see UpdateRule ), and delete an IPSet from AWS WAF (see DeleteIPSet ). IPSetId is returned by CreateIPSet and by ListIPSets .

isIPSetDescriptors :: Lens' IPSet [IPSetDescriptor] Source #

The IP address type (IPV4 ) and the IP address range (in CIDR notation) that web requests originate from. If the WebACL is associated with a CloudFront distribution, this is the value of one of the following fields in CloudFront access logs: * c-ip , if the viewer did not use an HTTP proxy or a load balancer to send the request * x-forwarded-for , if the viewer did use an HTTP proxy or a load balancer to send the request

IPSetDescriptor

data IPSetDescriptor Source #

Specifies the IP address type (IPV4 ) and the IP address range (in CIDR format) that web requests originate from.

See: ipSetDescriptor smart constructor.

Instances

Eq IPSetDescriptor Source # 
Data IPSetDescriptor Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> IPSetDescriptor -> c IPSetDescriptor #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c IPSetDescriptor #

toConstr :: IPSetDescriptor -> Constr #

dataTypeOf :: IPSetDescriptor -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c IPSetDescriptor) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c IPSetDescriptor) #

gmapT :: (forall b. Data b => b -> b) -> IPSetDescriptor -> IPSetDescriptor #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> IPSetDescriptor -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> IPSetDescriptor -> r #

gmapQ :: (forall d. Data d => d -> u) -> IPSetDescriptor -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> IPSetDescriptor -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> IPSetDescriptor -> m IPSetDescriptor #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> IPSetDescriptor -> m IPSetDescriptor #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> IPSetDescriptor -> m IPSetDescriptor #

Read IPSetDescriptor Source # 
Show IPSetDescriptor Source # 
Generic IPSetDescriptor Source # 
Hashable IPSetDescriptor Source # 
ToJSON IPSetDescriptor Source # 
FromJSON IPSetDescriptor Source # 
NFData IPSetDescriptor Source # 

Methods

rnf :: IPSetDescriptor -> () #

type Rep IPSetDescriptor Source # 
type Rep IPSetDescriptor = D1 (MetaData "IPSetDescriptor" "Network.AWS.WAF.Types.Product" "amazonka-waf-1.4.5-LwyS40mcrMjGU0oCXONgRC" False) (C1 (MetaCons "IPSetDescriptor'" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "_isdType") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 IPSetDescriptorType)) (S1 (MetaSel (Just Symbol "_isdValue") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text))))

ipSetDescriptor Source #

Creates a value of IPSetDescriptor with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

  • isdType - Specify IPV4 .
  • isdValue - Specify an IPv4 address by using CIDR notation. For example: * To configure AWS WAF to allow, block, or count requests that originated from the IP address 192.0.2.44, specify 192.0.2.44/32 . * To configure AWS WAF to allow, block, or count requests that originated from IP addresses from 192.0.2.0 to 192.0.2.255, specify 192.0.2.0/24 . AWS WAF supports only 8, 16, 24, and 32 IP addresses. For more information about CIDR notation, see the Wikipedia entry Classless Inter-Domain Routing .

isdValue :: Lens' IPSetDescriptor Text Source #

Specify an IPv4 address by using CIDR notation. For example: * To configure AWS WAF to allow, block, or count requests that originated from the IP address 192.0.2.44, specify 192.0.2.44/32 . * To configure AWS WAF to allow, block, or count requests that originated from IP addresses from 192.0.2.0 to 192.0.2.255, specify 192.0.2.0/24 . AWS WAF supports only 8, 16, 24, and 32 IP addresses. For more information about CIDR notation, see the Wikipedia entry Classless Inter-Domain Routing .

IPSetSummary

data IPSetSummary Source #

Contains the identifier and the name of the IPSet .

See: ipSetSummary smart constructor.

Instances

Eq IPSetSummary Source # 
Data IPSetSummary Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> IPSetSummary -> c IPSetSummary #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c IPSetSummary #

toConstr :: IPSetSummary -> Constr #

dataTypeOf :: IPSetSummary -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c IPSetSummary) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c IPSetSummary) #

gmapT :: (forall b. Data b => b -> b) -> IPSetSummary -> IPSetSummary #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> IPSetSummary -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> IPSetSummary -> r #

gmapQ :: (forall d. Data d => d -> u) -> IPSetSummary -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> IPSetSummary -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> IPSetSummary -> m IPSetSummary #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> IPSetSummary -> m IPSetSummary #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> IPSetSummary -> m IPSetSummary #

Read IPSetSummary Source # 
Show IPSetSummary Source # 
Generic IPSetSummary Source # 

Associated Types

type Rep IPSetSummary :: * -> * #

Hashable IPSetSummary Source # 
FromJSON IPSetSummary Source # 
NFData IPSetSummary Source # 

Methods

rnf :: IPSetSummary -> () #

type Rep IPSetSummary Source # 
type Rep IPSetSummary = D1 (MetaData "IPSetSummary" "Network.AWS.WAF.Types.Product" "amazonka-waf-1.4.5-LwyS40mcrMjGU0oCXONgRC" False) (C1 (MetaCons "IPSetSummary'" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "_issIPSetId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text)) (S1 (MetaSel (Just Symbol "_issName") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text))))

ipSetSummary Source #

Creates a value of IPSetSummary with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

  • issIPSetId - The IPSetId for an IPSet . You can use IPSetId in a GetIPSet request to get detailed information about an IPSet .
  • issName - A friendly name or description of the IPSet . You can't change the name of an IPSet after you create it.

issIPSetId :: Lens' IPSetSummary Text Source #

The IPSetId for an IPSet . You can use IPSetId in a GetIPSet request to get detailed information about an IPSet .

issName :: Lens' IPSetSummary Text Source #

A friendly name or description of the IPSet . You can't change the name of an IPSet after you create it.

IPSetUpdate

data IPSetUpdate Source #

Specifies the type of update to perform to an IPSet with UpdateIPSet .

See: ipSetUpdate smart constructor.

Instances

Eq IPSetUpdate Source # 
Data IPSetUpdate Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> IPSetUpdate -> c IPSetUpdate #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c IPSetUpdate #

toConstr :: IPSetUpdate -> Constr #

dataTypeOf :: IPSetUpdate -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c IPSetUpdate) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c IPSetUpdate) #

gmapT :: (forall b. Data b => b -> b) -> IPSetUpdate -> IPSetUpdate #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> IPSetUpdate -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> IPSetUpdate -> r #

gmapQ :: (forall d. Data d => d -> u) -> IPSetUpdate -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> IPSetUpdate -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> IPSetUpdate -> m IPSetUpdate #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> IPSetUpdate -> m IPSetUpdate #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> IPSetUpdate -> m IPSetUpdate #

Read IPSetUpdate Source # 
Show IPSetUpdate Source # 
Generic IPSetUpdate Source # 

Associated Types

type Rep IPSetUpdate :: * -> * #

Hashable IPSetUpdate Source # 
ToJSON IPSetUpdate Source # 
NFData IPSetUpdate Source # 

Methods

rnf :: IPSetUpdate -> () #

type Rep IPSetUpdate Source # 
type Rep IPSetUpdate = D1 (MetaData "IPSetUpdate" "Network.AWS.WAF.Types.Product" "amazonka-waf-1.4.5-LwyS40mcrMjGU0oCXONgRC" False) (C1 (MetaCons "IPSetUpdate'" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "_isuAction") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 ChangeAction)) (S1 (MetaSel (Just Symbol "_isuIPSetDescriptor") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 IPSetDescriptor))))

ipSetUpdate Source #

Creates a value of IPSetUpdate with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

  • isuAction - Specifies whether to insert or delete an IP address with UpdateIPSet .
  • isuIPSetDescriptor - The IP address type (IPV4 ) and the IP address range (in CIDR notation) that web requests originate from.

isuAction :: Lens' IPSetUpdate ChangeAction Source #

Specifies whether to insert or delete an IP address with UpdateIPSet .

isuIPSetDescriptor :: Lens' IPSetUpdate IPSetDescriptor Source #

The IP address type (IPV4 ) and the IP address range (in CIDR notation) that web requests originate from.

Predicate

data Predicate Source #

Specifies the ByteMatchSet , IPSet , SqlInjectionMatchSet , XssMatchSet , and SizeConstraintSet objects that you want to add to a Rule and, for each object, indicates whether you want to negate the settings, for example, requests that do NOT originate from the IP address 192.0.2.44.

See: predicate smart constructor.

Instances

Eq Predicate Source # 
Data Predicate Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Predicate -> c Predicate #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Predicate #

toConstr :: Predicate -> Constr #

dataTypeOf :: Predicate -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c Predicate) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Predicate) #

gmapT :: (forall b. Data b => b -> b) -> Predicate -> Predicate #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Predicate -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Predicate -> r #

gmapQ :: (forall d. Data d => d -> u) -> Predicate -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Predicate -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Predicate -> m Predicate #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Predicate -> m Predicate #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Predicate -> m Predicate #

Read Predicate Source # 
Show Predicate Source # 
Generic Predicate Source # 

Associated Types

type Rep Predicate :: * -> * #

Hashable Predicate Source # 
ToJSON Predicate Source # 
FromJSON Predicate Source # 
NFData Predicate Source # 

Methods

rnf :: Predicate -> () #

type Rep Predicate Source # 
type Rep Predicate = D1 (MetaData "Predicate" "Network.AWS.WAF.Types.Product" "amazonka-waf-1.4.5-LwyS40mcrMjGU0oCXONgRC" False) (C1 (MetaCons "Predicate'" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "_pNegated") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Bool)) ((:*:) (S1 (MetaSel (Just Symbol "_pType") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 PredicateType)) (S1 (MetaSel (Just Symbol "_pDataId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text)))))

predicate Source #

Creates a value of Predicate with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

  • pNegated - Set Negated to False if you want AWS WAF to allow, block, or count requests based on the settings in the specified ByteMatchSet , IPSet , SqlInjectionMatchSet , XssMatchSet , or SizeConstraintSet . For example, if an IPSet includes the IP address 192.0.2.44 , AWS WAF will allow or block requests based on that IP address. Set Negated to True if you want AWS WAF to allow or block a request based on the negation of the settings in the ByteMatchSet , IPSet , SqlInjectionMatchSet , XssMatchSet , or SizeConstraintSet . For example, if an IPSet includes the IP address 192.0.2.44 , AWS WAF will allow, block, or count requests based on all IP addresses except 192.0.2.44 .
  • pType - The type of predicate in a Rule , such as ByteMatchSet or IPSet .
  • pDataId - A unique identifier for a predicate in a Rule , such as ByteMatchSetId or IPSetId . The ID is returned by the corresponding Create or List command.

pNegated :: Lens' Predicate Bool Source #

Set Negated to False if you want AWS WAF to allow, block, or count requests based on the settings in the specified ByteMatchSet , IPSet , SqlInjectionMatchSet , XssMatchSet , or SizeConstraintSet . For example, if an IPSet includes the IP address 192.0.2.44 , AWS WAF will allow or block requests based on that IP address. Set Negated to True if you want AWS WAF to allow or block a request based on the negation of the settings in the ByteMatchSet , IPSet , SqlInjectionMatchSet , XssMatchSet , or SizeConstraintSet . For example, if an IPSet includes the IP address 192.0.2.44 , AWS WAF will allow, block, or count requests based on all IP addresses except 192.0.2.44 .

pType :: Lens' Predicate PredicateType Source #

The type of predicate in a Rule , such as ByteMatchSet or IPSet .

pDataId :: Lens' Predicate Text Source #

A unique identifier for a predicate in a Rule , such as ByteMatchSetId or IPSetId . The ID is returned by the corresponding Create or List command.

Rule

data Rule Source #

A combination of ByteMatchSet , IPSet , and/or SqlInjectionMatchSet objects that identify the web requests that you want to allow, block, or count. For example, you might create a Rule that includes the following predicates:

  • An IPSet that causes AWS WAF to search for web requests that originate from the IP address 192.0.2.44
  • A ByteMatchSet that causes AWS WAF to search for web requests for which the value of the User-Agent header is BadBot .

To match the settings in this Rule , a request must originate from 192.0.2.44 AND include a User-Agent header for which the value is BadBot .

See: rule smart constructor.

Instances

Eq Rule Source # 

Methods

(==) :: Rule -> Rule -> Bool #

(/=) :: Rule -> Rule -> Bool #

Data Rule Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Rule -> c Rule #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Rule #

toConstr :: Rule -> Constr #

dataTypeOf :: Rule -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c Rule) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Rule) #

gmapT :: (forall b. Data b => b -> b) -> Rule -> Rule #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Rule -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Rule -> r #

gmapQ :: (forall d. Data d => d -> u) -> Rule -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Rule -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Rule -> m Rule #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Rule -> m Rule #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Rule -> m Rule #

Read Rule Source # 
Show Rule Source # 

Methods

showsPrec :: Int -> Rule -> ShowS #

show :: Rule -> String #

showList :: [Rule] -> ShowS #

Generic Rule Source # 

Associated Types

type Rep Rule :: * -> * #

Methods

from :: Rule -> Rep Rule x #

to :: Rep Rule x -> Rule #

Hashable Rule Source # 

Methods

hashWithSalt :: Int -> Rule -> Int #

hash :: Rule -> Int #

FromJSON Rule Source # 
NFData Rule Source # 

Methods

rnf :: Rule -> () #

type Rep Rule Source # 
type Rep Rule = D1 (MetaData "Rule" "Network.AWS.WAF.Types.Product" "amazonka-waf-1.4.5-LwyS40mcrMjGU0oCXONgRC" False) (C1 (MetaCons "Rule'" PrefixI True) ((:*:) ((:*:) (S1 (MetaSel (Just Symbol "_rMetricName") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text))) (S1 (MetaSel (Just Symbol "_rName") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text)))) ((:*:) (S1 (MetaSel (Just Symbol "_rRuleId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text)) (S1 (MetaSel (Just Symbol "_rPredicates") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 [Predicate])))))

rule Source #

Arguments

:: Text

rRuleId

-> Rule 

Creates a value of Rule with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

  • rMetricName - Undocumented member.
  • rName - The friendly name or description for the Rule . You can't change the name of a Rule after you create it.
  • rRuleId - A unique identifier for a Rule . You use RuleId to get more information about a Rule (see GetRule ), update a Rule (see UpdateRule ), insert a Rule into a WebACL or delete a one from a WebACL (see UpdateWebACL ), or delete a Rule from AWS WAF (see DeleteRule ). RuleId is returned by CreateRule and by ListRules .
  • rPredicates - The Predicates object contains one Predicate element for each ByteMatchSet , IPSet , or SqlInjectionMatchSet object that you want to include in a Rule .

rMetricName :: Lens' Rule (Maybe Text) Source #

Undocumented member.

rName :: Lens' Rule (Maybe Text) Source #

The friendly name or description for the Rule . You can't change the name of a Rule after you create it.

rRuleId :: Lens' Rule Text Source #

A unique identifier for a Rule . You use RuleId to get more information about a Rule (see GetRule ), update a Rule (see UpdateRule ), insert a Rule into a WebACL or delete a one from a WebACL (see UpdateWebACL ), or delete a Rule from AWS WAF (see DeleteRule ). RuleId is returned by CreateRule and by ListRules .

rPredicates :: Lens' Rule [Predicate] Source #

The Predicates object contains one Predicate element for each ByteMatchSet , IPSet , or SqlInjectionMatchSet object that you want to include in a Rule .

RuleSummary

data RuleSummary Source #

Contains the identifier and the friendly name or description of the Rule .

See: ruleSummary smart constructor.

Instances

Eq RuleSummary Source # 
Data RuleSummary Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> RuleSummary -> c RuleSummary #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c RuleSummary #

toConstr :: RuleSummary -> Constr #

dataTypeOf :: RuleSummary -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c RuleSummary) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c RuleSummary) #

gmapT :: (forall b. Data b => b -> b) -> RuleSummary -> RuleSummary #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> RuleSummary -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> RuleSummary -> r #

gmapQ :: (forall d. Data d => d -> u) -> RuleSummary -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> RuleSummary -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> RuleSummary -> m RuleSummary #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> RuleSummary -> m RuleSummary #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> RuleSummary -> m RuleSummary #

Read RuleSummary Source # 
Show RuleSummary Source # 
Generic RuleSummary Source # 

Associated Types

type Rep RuleSummary :: * -> * #

Hashable RuleSummary Source # 
FromJSON RuleSummary Source # 
NFData RuleSummary Source # 

Methods

rnf :: RuleSummary -> () #

type Rep RuleSummary Source # 
type Rep RuleSummary = D1 (MetaData "RuleSummary" "Network.AWS.WAF.Types.Product" "amazonka-waf-1.4.5-LwyS40mcrMjGU0oCXONgRC" False) (C1 (MetaCons "RuleSummary'" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "_rsRuleId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text)) (S1 (MetaSel (Just Symbol "_rsName") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text))))

ruleSummary Source #

Creates a value of RuleSummary with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

  • rsRuleId - A unique identifier for a Rule . You use RuleId to get more information about a Rule (see GetRule ), update a Rule (see UpdateRule ), insert a Rule into a WebACL or delete one from a WebACL (see UpdateWebACL ), or delete a Rule from AWS WAF (see DeleteRule ). RuleId is returned by CreateRule and by ListRules .
  • rsName - A friendly name or description of the Rule . You can't change the name of a Rule after you create it.

rsRuleId :: Lens' RuleSummary Text Source #

A unique identifier for a Rule . You use RuleId to get more information about a Rule (see GetRule ), update a Rule (see UpdateRule ), insert a Rule into a WebACL or delete one from a WebACL (see UpdateWebACL ), or delete a Rule from AWS WAF (see DeleteRule ). RuleId is returned by CreateRule and by ListRules .

rsName :: Lens' RuleSummary Text Source #

A friendly name or description of the Rule . You can't change the name of a Rule after you create it.

RuleUpdate

data RuleUpdate Source #

Specifies a Predicate (such as an IPSet ) and indicates whether you want to add it to a Rule or delete it from a Rule .

See: ruleUpdate smart constructor.

Instances

Eq RuleUpdate Source # 
Data RuleUpdate Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> RuleUpdate -> c RuleUpdate #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c RuleUpdate #

toConstr :: RuleUpdate -> Constr #

dataTypeOf :: RuleUpdate -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c RuleUpdate) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c RuleUpdate) #

gmapT :: (forall b. Data b => b -> b) -> RuleUpdate -> RuleUpdate #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> RuleUpdate -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> RuleUpdate -> r #

gmapQ :: (forall d. Data d => d -> u) -> RuleUpdate -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> RuleUpdate -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> RuleUpdate -> m RuleUpdate #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> RuleUpdate -> m RuleUpdate #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> RuleUpdate -> m RuleUpdate #

Read RuleUpdate Source # 
Show RuleUpdate Source # 
Generic RuleUpdate Source # 

Associated Types

type Rep RuleUpdate :: * -> * #

Hashable RuleUpdate Source # 
ToJSON RuleUpdate Source # 
NFData RuleUpdate Source # 

Methods

rnf :: RuleUpdate -> () #

type Rep RuleUpdate Source # 
type Rep RuleUpdate = D1 (MetaData "RuleUpdate" "Network.AWS.WAF.Types.Product" "amazonka-waf-1.4.5-LwyS40mcrMjGU0oCXONgRC" False) (C1 (MetaCons "RuleUpdate'" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "_ruAction") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 ChangeAction)) (S1 (MetaSel (Just Symbol "_ruPredicate") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Predicate))))

ruleUpdate Source #

Creates a value of RuleUpdate with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

  • ruAction - Specify INSERT to add a Predicate to a Rule . Use DELETE to remove a Predicate from a Rule .
  • ruPredicate - The ID of the Predicate (such as an IPSet ) that you want to add to a Rule .

ruAction :: Lens' RuleUpdate ChangeAction Source #

Specify INSERT to add a Predicate to a Rule . Use DELETE to remove a Predicate from a Rule .

ruPredicate :: Lens' RuleUpdate Predicate Source #

The ID of the Predicate (such as an IPSet ) that you want to add to a Rule .

SampledHTTPRequest

data SampledHTTPRequest Source #

The response from a GetSampledRequests request includes a SampledHTTPRequests complex type that appears as SampledRequests in the response syntax. SampledHTTPRequests contains one SampledHTTPRequest object for each web request that is returned by GetSampledRequests .

See: sampledHTTPRequest smart constructor.

Instances

Eq SampledHTTPRequest Source # 
Data SampledHTTPRequest Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> SampledHTTPRequest -> c SampledHTTPRequest #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c SampledHTTPRequest #

toConstr :: SampledHTTPRequest -> Constr #

dataTypeOf :: SampledHTTPRequest -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c SampledHTTPRequest) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c SampledHTTPRequest) #

gmapT :: (forall b. Data b => b -> b) -> SampledHTTPRequest -> SampledHTTPRequest #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> SampledHTTPRequest -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> SampledHTTPRequest -> r #

gmapQ :: (forall d. Data d => d -> u) -> SampledHTTPRequest -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> SampledHTTPRequest -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> SampledHTTPRequest -> m SampledHTTPRequest #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> SampledHTTPRequest -> m SampledHTTPRequest #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> SampledHTTPRequest -> m SampledHTTPRequest #

Read SampledHTTPRequest Source # 
Show SampledHTTPRequest Source # 
Generic SampledHTTPRequest Source # 
Hashable SampledHTTPRequest Source # 
FromJSON SampledHTTPRequest Source # 
NFData SampledHTTPRequest Source # 

Methods

rnf :: SampledHTTPRequest -> () #

type Rep SampledHTTPRequest Source # 
type Rep SampledHTTPRequest = D1 (MetaData "SampledHTTPRequest" "Network.AWS.WAF.Types.Product" "amazonka-waf-1.4.5-LwyS40mcrMjGU0oCXONgRC" False) (C1 (MetaCons "SampledHTTPRequest'" PrefixI True) ((:*:) ((:*:) (S1 (MetaSel (Just Symbol "_shttprAction") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text))) (S1 (MetaSel (Just Symbol "_shttprTimestamp") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe POSIX)))) ((:*:) (S1 (MetaSel (Just Symbol "_shttprRequest") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 HTTPRequest)) (S1 (MetaSel (Just Symbol "_shttprWeight") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Nat)))))

sampledHTTPRequest Source #

Creates a value of SampledHTTPRequest with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

  • shttprAction - The action for the Rule that the request matched: ALLOW , BLOCK , or COUNT .
  • shttprTimestamp - The time at which AWS WAF received the request from your AWS resource, in Unix time format (in seconds).
  • shttprRequest - A complex type that contains detailed information about the request.
  • shttprWeight - A value that indicates how one result in the response relates proportionally to other results in the response. A result that has a weight of 2 represents roughly twice as many CloudFront web requests as a result that has a weight of 1 .

shttprAction :: Lens' SampledHTTPRequest (Maybe Text) Source #

The action for the Rule that the request matched: ALLOW , BLOCK , or COUNT .

shttprTimestamp :: Lens' SampledHTTPRequest (Maybe UTCTime) Source #

The time at which AWS WAF received the request from your AWS resource, in Unix time format (in seconds).

shttprRequest :: Lens' SampledHTTPRequest HTTPRequest Source #

A complex type that contains detailed information about the request.

shttprWeight :: Lens' SampledHTTPRequest Natural Source #

A value that indicates how one result in the response relates proportionally to other results in the response. A result that has a weight of 2 represents roughly twice as many CloudFront web requests as a result that has a weight of 1 .

SizeConstraint

data SizeConstraint Source #

Specifies a constraint on the size of a part of the web request. AWS WAF uses the Size , ComparisonOperator , and FieldToMatch to build an expression in the form of "Size ComparisonOperator size in bytes of FieldToMatch ". If that expression is true, the SizeConstraint is considered to match.

See: sizeConstraint smart constructor.

Instances

Eq SizeConstraint Source # 
Data SizeConstraint Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> SizeConstraint -> c SizeConstraint #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c SizeConstraint #

toConstr :: SizeConstraint -> Constr #

dataTypeOf :: SizeConstraint -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c SizeConstraint) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c SizeConstraint) #

gmapT :: (forall b. Data b => b -> b) -> SizeConstraint -> SizeConstraint #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> SizeConstraint -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> SizeConstraint -> r #

gmapQ :: (forall d. Data d => d -> u) -> SizeConstraint -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> SizeConstraint -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> SizeConstraint -> m SizeConstraint #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> SizeConstraint -> m SizeConstraint #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> SizeConstraint -> m SizeConstraint #

Read SizeConstraint Source # 
Show SizeConstraint Source # 
Generic SizeConstraint Source # 

Associated Types

type Rep SizeConstraint :: * -> * #

Hashable SizeConstraint Source # 
ToJSON SizeConstraint Source # 
FromJSON SizeConstraint Source # 
NFData SizeConstraint Source # 

Methods

rnf :: SizeConstraint -> () #

type Rep SizeConstraint Source # 
type Rep SizeConstraint = D1 (MetaData "SizeConstraint" "Network.AWS.WAF.Types.Product" "amazonka-waf-1.4.5-LwyS40mcrMjGU0oCXONgRC" False) (C1 (MetaCons "SizeConstraint'" PrefixI True) ((:*:) ((:*:) (S1 (MetaSel (Just Symbol "_scFieldToMatch") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 FieldToMatch)) (S1 (MetaSel (Just Symbol "_scTextTransformation") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 TextTransformation))) ((:*:) (S1 (MetaSel (Just Symbol "_scComparisonOperator") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 ComparisonOperator)) (S1 (MetaSel (Just Symbol "_scSize") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Nat)))))

sizeConstraint Source #

Creates a value of SizeConstraint with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

  • scFieldToMatch - Undocumented member.
  • scTextTransformation - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass AWS WAF. If you specify a transformation, AWS WAF performs the transformation on FieldToMatch before inspecting a request for a match. Note that if you choose BODY for the value of Type , you must choose NONE for TextTransformation because CloudFront forwards only the first 8192 bytes for inspection. NONE Specify NONE if you don't want to perform any text transformations. CMD_LINE When you're concerned that attackers are injecting an operating system command line command and using unusual formatting to disguise some or all of the command, use this option to perform the following transformations: * Delete the following characters: " ' ^ * Delete spaces before the following characters: / ( * Replace the following characters with a space: , ; * Replace multiple spaces with one space * Convert uppercase letters (A-Z) to lowercase (a-z) COMPRESS_WHITE_SPACE Use this option to replace the following characters with a space character (decimal 32): * f, formfeed, decimal 12 * t, tab, decimal 9 * n, newline, decimal 10 * r, carriage return, decimal 13 * v, vertical tab, decimal 11 * non-breaking space, decimal 160 COMPRESS_WHITE_SPACE also replaces multiple spaces with one space. HTML_ENTITY_DECODE Use this option to replace HTML-encoded characters with unencoded characters. HTML_ENTITY_DECODE performs the following operations: * Replaces (ampersand)quot; with " * Replaces (ampersand)nbsp; with a non-breaking space, decimal 160 * Replaces (ampersand)lt; with a "less than" symbol * Replaces (ampersand)gt; with > * Replaces characters that are represented in hexadecimal format, (ampersand)#xhhhh; , with the corresponding characters * Replaces characters that are represented in decimal format, (ampersand)#nnnn; , with the corresponding characters LOWERCASE Use this option to convert uppercase letters (A-Z) to lowercase (a-z). URL_DECODE Use this option to decode a URL-encoded value.
  • scComparisonOperator - The type of comparison you want AWS WAF to perform. AWS WAF uses this in combination with the provided Size and FieldToMatch to build an expression in the form of "Size ComparisonOperator size in bytes of FieldToMatch ". If that expression is true, the SizeConstraint is considered to match. EQ : Used to test if the Size is equal to the size of the FieldToMatch NE : Used to test if the Size is not equal to the size of the FieldToMatch LE : Used to test if the Size is less than or equal to the size of the FieldToMatch LT : Used to test if the Size is strictly less than the size of the FieldToMatch GE : Used to test if the Size is greater than or equal to the size of the FieldToMatch GT : Used to test if the Size is strictly greater than the size of the FieldToMatch
  • scSize - The size in bytes that you want AWS WAF to compare against the size of the specified FieldToMatch . AWS WAF uses this in combination with ComparisonOperator and FieldToMatch to build an expression in the form of "Size ComparisonOperator size in bytes of FieldToMatch ". If that expression is true, the SizeConstraint is considered to match. Valid values for size are 0 - 21474836480 bytes (0 - 20 GB). If you specify URI for the value of Type , the in the URI counts as one character. For example, the URI @logo.jpg@ is nine characters long.

scTextTransformation :: Lens' SizeConstraint TextTransformation Source #

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass AWS WAF. If you specify a transformation, AWS WAF performs the transformation on FieldToMatch before inspecting a request for a match. Note that if you choose BODY for the value of Type , you must choose NONE for TextTransformation because CloudFront forwards only the first 8192 bytes for inspection. NONE Specify NONE if you don't want to perform any text transformations. CMD_LINE When you're concerned that attackers are injecting an operating system command line command and using unusual formatting to disguise some or all of the command, use this option to perform the following transformations: * Delete the following characters: " ' ^ * Delete spaces before the following characters: / ( * Replace the following characters with a space: , ; * Replace multiple spaces with one space * Convert uppercase letters (A-Z) to lowercase (a-z) COMPRESS_WHITE_SPACE Use this option to replace the following characters with a space character (decimal 32): * f, formfeed, decimal 12 * t, tab, decimal 9 * n, newline, decimal 10 * r, carriage return, decimal 13 * v, vertical tab, decimal 11 * non-breaking space, decimal 160 COMPRESS_WHITE_SPACE also replaces multiple spaces with one space. HTML_ENTITY_DECODE Use this option to replace HTML-encoded characters with unencoded characters. HTML_ENTITY_DECODE performs the following operations: * Replaces (ampersand)quot; with " * Replaces (ampersand)nbsp; with a non-breaking space, decimal 160 * Replaces (ampersand)lt; with a "less than" symbol * Replaces (ampersand)gt; with > * Replaces characters that are represented in hexadecimal format, (ampersand)#xhhhh; , with the corresponding characters * Replaces characters that are represented in decimal format, (ampersand)#nnnn; , with the corresponding characters LOWERCASE Use this option to convert uppercase letters (A-Z) to lowercase (a-z). URL_DECODE Use this option to decode a URL-encoded value.

scComparisonOperator :: Lens' SizeConstraint ComparisonOperator Source #

The type of comparison you want AWS WAF to perform. AWS WAF uses this in combination with the provided Size and FieldToMatch to build an expression in the form of "Size ComparisonOperator size in bytes of FieldToMatch ". If that expression is true, the SizeConstraint is considered to match. EQ : Used to test if the Size is equal to the size of the FieldToMatch NE : Used to test if the Size is not equal to the size of the FieldToMatch LE : Used to test if the Size is less than or equal to the size of the FieldToMatch LT : Used to test if the Size is strictly less than the size of the FieldToMatch GE : Used to test if the Size is greater than or equal to the size of the FieldToMatch GT : Used to test if the Size is strictly greater than the size of the FieldToMatch

scSize :: Lens' SizeConstraint Natural Source #

The size in bytes that you want AWS WAF to compare against the size of the specified FieldToMatch . AWS WAF uses this in combination with ComparisonOperator and FieldToMatch to build an expression in the form of "Size ComparisonOperator size in bytes of FieldToMatch ". If that expression is true, the SizeConstraint is considered to match. Valid values for size are 0 - 21474836480 bytes (0 - 20 GB). If you specify URI for the value of Type , the in the URI counts as one character. For example, the URI @logo.jpg@ is nine characters long.

SizeConstraintSet

data SizeConstraintSet Source #

A complex type that contains SizeConstraint objects, which specify the parts of web requests that you want AWS WAF to inspect the size of. If a SizeConstraintSet contains more than one SizeConstraint object, a request only needs to match one constraint to be considered a match.

See: sizeConstraintSet smart constructor.

Instances

Eq SizeConstraintSet Source # 
Data SizeConstraintSet Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> SizeConstraintSet -> c SizeConstraintSet #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c SizeConstraintSet #

toConstr :: SizeConstraintSet -> Constr #

dataTypeOf :: SizeConstraintSet -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c SizeConstraintSet) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c SizeConstraintSet) #

gmapT :: (forall b. Data b => b -> b) -> SizeConstraintSet -> SizeConstraintSet #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> SizeConstraintSet -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> SizeConstraintSet -> r #

gmapQ :: (forall d. Data d => d -> u) -> SizeConstraintSet -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> SizeConstraintSet -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> SizeConstraintSet -> m SizeConstraintSet #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> SizeConstraintSet -> m SizeConstraintSet #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> SizeConstraintSet -> m SizeConstraintSet #

Read SizeConstraintSet Source # 
Show SizeConstraintSet Source # 
Generic SizeConstraintSet Source # 
Hashable SizeConstraintSet Source # 
FromJSON SizeConstraintSet Source # 
NFData SizeConstraintSet Source # 

Methods

rnf :: SizeConstraintSet -> () #

type Rep SizeConstraintSet Source # 
type Rep SizeConstraintSet = D1 (MetaData "SizeConstraintSet" "Network.AWS.WAF.Types.Product" "amazonka-waf-1.4.5-LwyS40mcrMjGU0oCXONgRC" False) (C1 (MetaCons "SizeConstraintSet'" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "_scsName") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text))) ((:*:) (S1 (MetaSel (Just Symbol "_scsSizeConstraintSetId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text)) (S1 (MetaSel (Just Symbol "_scsSizeConstraints") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 [SizeConstraint])))))

sizeConstraintSet Source #

Creates a value of SizeConstraintSet with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

  • scsName - The name, if any, of the SizeConstraintSet .
  • scsSizeConstraintSetId - A unique identifier for a SizeConstraintSet . You use SizeConstraintSetId to get information about a SizeConstraintSet (see GetSizeConstraintSet ), update a SizeConstraintSet (see UpdateSizeConstraintSet ), insert a SizeConstraintSet into a Rule or delete one from a Rule (see UpdateRule ), and delete a SizeConstraintSet from AWS WAF (see DeleteSizeConstraintSet ). SizeConstraintSetId is returned by CreateSizeConstraintSet and by ListSizeConstraintSets .
  • scsSizeConstraints - Specifies the parts of web requests that you want to inspect the size of.

scsName :: Lens' SizeConstraintSet (Maybe Text) Source #

The name, if any, of the SizeConstraintSet .

scsSizeConstraintSetId :: Lens' SizeConstraintSet Text Source #

A unique identifier for a SizeConstraintSet . You use SizeConstraintSetId to get information about a SizeConstraintSet (see GetSizeConstraintSet ), update a SizeConstraintSet (see UpdateSizeConstraintSet ), insert a SizeConstraintSet into a Rule or delete one from a Rule (see UpdateRule ), and delete a SizeConstraintSet from AWS WAF (see DeleteSizeConstraintSet ). SizeConstraintSetId is returned by CreateSizeConstraintSet and by ListSizeConstraintSets .

scsSizeConstraints :: Lens' SizeConstraintSet [SizeConstraint] Source #

Specifies the parts of web requests that you want to inspect the size of.

SizeConstraintSetSummary

data SizeConstraintSetSummary Source #

The Id and Name of a SizeConstraintSet .

See: sizeConstraintSetSummary smart constructor.

Instances

Eq SizeConstraintSetSummary Source # 
Data SizeConstraintSetSummary Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> SizeConstraintSetSummary -> c SizeConstraintSetSummary #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c SizeConstraintSetSummary #

toConstr :: SizeConstraintSetSummary -> Constr #

dataTypeOf :: SizeConstraintSetSummary -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c SizeConstraintSetSummary) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c SizeConstraintSetSummary) #

gmapT :: (forall b. Data b => b -> b) -> SizeConstraintSetSummary -> SizeConstraintSetSummary #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> SizeConstraintSetSummary -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> SizeConstraintSetSummary -> r #

gmapQ :: (forall d. Data d => d -> u) -> SizeConstraintSetSummary -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> SizeConstraintSetSummary -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> SizeConstraintSetSummary -> m SizeConstraintSetSummary #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> SizeConstraintSetSummary -> m SizeConstraintSetSummary #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> SizeConstraintSetSummary -> m SizeConstraintSetSummary #

Read SizeConstraintSetSummary Source # 
Show SizeConstraintSetSummary Source # 
Generic SizeConstraintSetSummary Source # 
Hashable SizeConstraintSetSummary Source # 
FromJSON SizeConstraintSetSummary Source # 
NFData SizeConstraintSetSummary Source # 
type Rep SizeConstraintSetSummary Source # 
type Rep SizeConstraintSetSummary = D1 (MetaData "SizeConstraintSetSummary" "Network.AWS.WAF.Types.Product" "amazonka-waf-1.4.5-LwyS40mcrMjGU0oCXONgRC" False) (C1 (MetaCons "SizeConstraintSetSummary'" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "_scssSizeConstraintSetId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text)) (S1 (MetaSel (Just Symbol "_scssName") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text))))

sizeConstraintSetSummary Source #

Creates a value of SizeConstraintSetSummary with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

  • scssSizeConstraintSetId - A unique identifier for a SizeConstraintSet . You use SizeConstraintSetId to get information about a SizeConstraintSet (see GetSizeConstraintSet ), update a SizeConstraintSet (see UpdateSizeConstraintSet ), insert a SizeConstraintSet into a Rule or delete one from a Rule (see UpdateRule ), and delete a SizeConstraintSet from AWS WAF (see DeleteSizeConstraintSet ). SizeConstraintSetId is returned by CreateSizeConstraintSet and by ListSizeConstraintSets .
  • scssName - The name of the SizeConstraintSet , if any.

scssSizeConstraintSetId :: Lens' SizeConstraintSetSummary Text Source #

A unique identifier for a SizeConstraintSet . You use SizeConstraintSetId to get information about a SizeConstraintSet (see GetSizeConstraintSet ), update a SizeConstraintSet (see UpdateSizeConstraintSet ), insert a SizeConstraintSet into a Rule or delete one from a Rule (see UpdateRule ), and delete a SizeConstraintSet from AWS WAF (see DeleteSizeConstraintSet ). SizeConstraintSetId is returned by CreateSizeConstraintSet and by ListSizeConstraintSets .

scssName :: Lens' SizeConstraintSetSummary Text Source #

The name of the SizeConstraintSet , if any.

SizeConstraintSetUpdate

data SizeConstraintSetUpdate Source #

Specifies the part of a web request that you want to inspect the size of and indicates whether you want to add the specification to a SizeConstraintSet or delete it from a SizeConstraintSet .

See: sizeConstraintSetUpdate smart constructor.

Instances

Eq SizeConstraintSetUpdate Source # 
Data SizeConstraintSetUpdate Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> SizeConstraintSetUpdate -> c SizeConstraintSetUpdate #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c SizeConstraintSetUpdate #

toConstr :: SizeConstraintSetUpdate -> Constr #

dataTypeOf :: SizeConstraintSetUpdate -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c SizeConstraintSetUpdate) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c SizeConstraintSetUpdate) #

gmapT :: (forall b. Data b => b -> b) -> SizeConstraintSetUpdate -> SizeConstraintSetUpdate #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> SizeConstraintSetUpdate -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> SizeConstraintSetUpdate -> r #

gmapQ :: (forall d. Data d => d -> u) -> SizeConstraintSetUpdate -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> SizeConstraintSetUpdate -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> SizeConstraintSetUpdate -> m SizeConstraintSetUpdate #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> SizeConstraintSetUpdate -> m SizeConstraintSetUpdate #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> SizeConstraintSetUpdate -> m SizeConstraintSetUpdate #

Read SizeConstraintSetUpdate Source # 
Show SizeConstraintSetUpdate Source # 
Generic SizeConstraintSetUpdate Source # 
Hashable SizeConstraintSetUpdate Source # 
ToJSON SizeConstraintSetUpdate Source # 
NFData SizeConstraintSetUpdate Source # 

Methods

rnf :: SizeConstraintSetUpdate -> () #

type Rep SizeConstraintSetUpdate Source # 
type Rep SizeConstraintSetUpdate = D1 (MetaData "SizeConstraintSetUpdate" "Network.AWS.WAF.Types.Product" "amazonka-waf-1.4.5-LwyS40mcrMjGU0oCXONgRC" False) (C1 (MetaCons "SizeConstraintSetUpdate'" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "_scsuAction") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 ChangeAction)) (S1 (MetaSel (Just Symbol "_scsuSizeConstraint") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 SizeConstraint))))

sizeConstraintSetUpdate Source #

Creates a value of SizeConstraintSetUpdate with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

  • scsuAction - Specify INSERT to add a SizeConstraintSetUpdate to a SizeConstraintSet . Use DELETE to remove a SizeConstraintSetUpdate from a SizeConstraintSet .
  • scsuSizeConstraint - Specifies a constraint on the size of a part of the web request. AWS WAF uses the Size , ComparisonOperator , and FieldToMatch to build an expression in the form of "Size ComparisonOperator size in bytes of FieldToMatch ". If that expression is true, the SizeConstraint is considered to match.

scsuAction :: Lens' SizeConstraintSetUpdate ChangeAction Source #

Specify INSERT to add a SizeConstraintSetUpdate to a SizeConstraintSet . Use DELETE to remove a SizeConstraintSetUpdate from a SizeConstraintSet .

scsuSizeConstraint :: Lens' SizeConstraintSetUpdate SizeConstraint Source #

Specifies a constraint on the size of a part of the web request. AWS WAF uses the Size , ComparisonOperator , and FieldToMatch to build an expression in the form of "Size ComparisonOperator size in bytes of FieldToMatch ". If that expression is true, the SizeConstraint is considered to match.

SqlInjectionMatchSet

data SqlInjectionMatchSet Source #

A complex type that contains SqlInjectionMatchTuple objects, which specify the parts of web requests that you want AWS WAF to inspect for snippets of malicious SQL code and, if you want AWS WAF to inspect a header, the name of the header. If a SqlInjectionMatchSet contains more than one SqlInjectionMatchTuple object, a request needs to include snippets of SQL code in only one of the specified parts of the request to be considered a match.

See: sqlInjectionMatchSet smart constructor.

Instances

Eq SqlInjectionMatchSet Source # 
Data SqlInjectionMatchSet Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> SqlInjectionMatchSet -> c SqlInjectionMatchSet #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c SqlInjectionMatchSet #

toConstr :: SqlInjectionMatchSet -> Constr #

dataTypeOf :: SqlInjectionMatchSet -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c SqlInjectionMatchSet) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c SqlInjectionMatchSet) #

gmapT :: (forall b. Data b => b -> b) -> SqlInjectionMatchSet -> SqlInjectionMatchSet #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> SqlInjectionMatchSet -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> SqlInjectionMatchSet -> r #

gmapQ :: (forall d. Data d => d -> u) -> SqlInjectionMatchSet -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> SqlInjectionMatchSet -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> SqlInjectionMatchSet -> m SqlInjectionMatchSet #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> SqlInjectionMatchSet -> m SqlInjectionMatchSet #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> SqlInjectionMatchSet -> m SqlInjectionMatchSet #

Read SqlInjectionMatchSet Source # 
Show SqlInjectionMatchSet Source # 
Generic SqlInjectionMatchSet Source # 
Hashable SqlInjectionMatchSet Source # 
FromJSON SqlInjectionMatchSet Source # 
NFData SqlInjectionMatchSet Source # 

Methods

rnf :: SqlInjectionMatchSet -> () #

type Rep SqlInjectionMatchSet Source # 
type Rep SqlInjectionMatchSet = D1 (MetaData "SqlInjectionMatchSet" "Network.AWS.WAF.Types.Product" "amazonka-waf-1.4.5-LwyS40mcrMjGU0oCXONgRC" False) (C1 (MetaCons "SqlInjectionMatchSet'" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "_simsName") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text))) ((:*:) (S1 (MetaSel (Just Symbol "_simsSqlInjectionMatchSetId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text)) (S1 (MetaSel (Just Symbol "_simsSqlInjectionMatchTuples") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 [SqlInjectionMatchTuple])))))

sqlInjectionMatchSet Source #

Creates a value of SqlInjectionMatchSet with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

  • simsName - The name, if any, of the SqlInjectionMatchSet .
  • simsSqlInjectionMatchSetId - A unique identifier for a SqlInjectionMatchSet . You use SqlInjectionMatchSetId to get information about a SqlInjectionMatchSet (see GetSqlInjectionMatchSet ), update a SqlInjectionMatchSet (see UpdateSqlInjectionMatchSet ), insert a SqlInjectionMatchSet into a Rule or delete one from a Rule (see UpdateRule ), and delete a SqlInjectionMatchSet from AWS WAF (see DeleteSqlInjectionMatchSet ). SqlInjectionMatchSetId is returned by CreateSqlInjectionMatchSet and by ListSqlInjectionMatchSets .
  • simsSqlInjectionMatchTuples - Specifies the parts of web requests that you want to inspect for snippets of malicious SQL code.

simsName :: Lens' SqlInjectionMatchSet (Maybe Text) Source #

The name, if any, of the SqlInjectionMatchSet .

simsSqlInjectionMatchSetId :: Lens' SqlInjectionMatchSet Text Source #

A unique identifier for a SqlInjectionMatchSet . You use SqlInjectionMatchSetId to get information about a SqlInjectionMatchSet (see GetSqlInjectionMatchSet ), update a SqlInjectionMatchSet (see UpdateSqlInjectionMatchSet ), insert a SqlInjectionMatchSet into a Rule or delete one from a Rule (see UpdateRule ), and delete a SqlInjectionMatchSet from AWS WAF (see DeleteSqlInjectionMatchSet ). SqlInjectionMatchSetId is returned by CreateSqlInjectionMatchSet and by ListSqlInjectionMatchSets .

simsSqlInjectionMatchTuples :: Lens' SqlInjectionMatchSet [SqlInjectionMatchTuple] Source #

Specifies the parts of web requests that you want to inspect for snippets of malicious SQL code.

SqlInjectionMatchSetSummary

data SqlInjectionMatchSetSummary Source #

The Id and Name of a SqlInjectionMatchSet .

See: sqlInjectionMatchSetSummary smart constructor.

Instances

Eq SqlInjectionMatchSetSummary Source # 
Data SqlInjectionMatchSetSummary Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> SqlInjectionMatchSetSummary -> c SqlInjectionMatchSetSummary #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c SqlInjectionMatchSetSummary #

toConstr :: SqlInjectionMatchSetSummary -> Constr #

dataTypeOf :: SqlInjectionMatchSetSummary -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c SqlInjectionMatchSetSummary) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c SqlInjectionMatchSetSummary) #

gmapT :: (forall b. Data b => b -> b) -> SqlInjectionMatchSetSummary -> SqlInjectionMatchSetSummary #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> SqlInjectionMatchSetSummary -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> SqlInjectionMatchSetSummary -> r #

gmapQ :: (forall d. Data d => d -> u) -> SqlInjectionMatchSetSummary -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> SqlInjectionMatchSetSummary -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> SqlInjectionMatchSetSummary -> m SqlInjectionMatchSetSummary #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> SqlInjectionMatchSetSummary -> m SqlInjectionMatchSetSummary #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> SqlInjectionMatchSetSummary -> m SqlInjectionMatchSetSummary #

Read SqlInjectionMatchSetSummary Source # 
Show SqlInjectionMatchSetSummary Source # 
Generic SqlInjectionMatchSetSummary Source # 
Hashable SqlInjectionMatchSetSummary Source # 
FromJSON SqlInjectionMatchSetSummary Source # 
NFData SqlInjectionMatchSetSummary Source # 
type Rep SqlInjectionMatchSetSummary Source # 
type Rep SqlInjectionMatchSetSummary = D1 (MetaData "SqlInjectionMatchSetSummary" "Network.AWS.WAF.Types.Product" "amazonka-waf-1.4.5-LwyS40mcrMjGU0oCXONgRC" False) (C1 (MetaCons "SqlInjectionMatchSetSummary'" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "_simssSqlInjectionMatchSetId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text)) (S1 (MetaSel (Just Symbol "_simssName") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text))))

sqlInjectionMatchSetSummary Source #

Creates a value of SqlInjectionMatchSetSummary with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

  • simssSqlInjectionMatchSetId - A unique identifier for a SqlInjectionMatchSet . You use SqlInjectionMatchSetId to get information about a SqlInjectionMatchSet (see GetSqlInjectionMatchSet ), update a SqlInjectionMatchSet (see UpdateSqlInjectionMatchSet ), insert a SqlInjectionMatchSet into a Rule or delete one from a Rule (see UpdateRule ), and delete a SqlInjectionMatchSet from AWS WAF (see DeleteSqlInjectionMatchSet ). SqlInjectionMatchSetId is returned by CreateSqlInjectionMatchSet and by ListSqlInjectionMatchSets .
  • simssName - The name of the SqlInjectionMatchSet , if any, specified by Id .

simssSqlInjectionMatchSetId :: Lens' SqlInjectionMatchSetSummary Text Source #

A unique identifier for a SqlInjectionMatchSet . You use SqlInjectionMatchSetId to get information about a SqlInjectionMatchSet (see GetSqlInjectionMatchSet ), update a SqlInjectionMatchSet (see UpdateSqlInjectionMatchSet ), insert a SqlInjectionMatchSet into a Rule or delete one from a Rule (see UpdateRule ), and delete a SqlInjectionMatchSet from AWS WAF (see DeleteSqlInjectionMatchSet ). SqlInjectionMatchSetId is returned by CreateSqlInjectionMatchSet and by ListSqlInjectionMatchSets .

simssName :: Lens' SqlInjectionMatchSetSummary Text Source #

The name of the SqlInjectionMatchSet , if any, specified by Id .

SqlInjectionMatchSetUpdate

data SqlInjectionMatchSetUpdate Source #

Specifies the part of a web request that you want to inspect for snippets of malicious SQL code and indicates whether you want to add the specification to a SqlInjectionMatchSet or delete it from a SqlInjectionMatchSet .

See: sqlInjectionMatchSetUpdate smart constructor.

Instances

Eq SqlInjectionMatchSetUpdate Source # 
Data SqlInjectionMatchSetUpdate Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> SqlInjectionMatchSetUpdate -> c SqlInjectionMatchSetUpdate #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c SqlInjectionMatchSetUpdate #

toConstr :: SqlInjectionMatchSetUpdate -> Constr #

dataTypeOf :: SqlInjectionMatchSetUpdate -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c SqlInjectionMatchSetUpdate) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c SqlInjectionMatchSetUpdate) #

gmapT :: (forall b. Data b => b -> b) -> SqlInjectionMatchSetUpdate -> SqlInjectionMatchSetUpdate #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> SqlInjectionMatchSetUpdate -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> SqlInjectionMatchSetUpdate -> r #

gmapQ :: (forall d. Data d => d -> u) -> SqlInjectionMatchSetUpdate -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> SqlInjectionMatchSetUpdate -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> SqlInjectionMatchSetUpdate -> m SqlInjectionMatchSetUpdate #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> SqlInjectionMatchSetUpdate -> m SqlInjectionMatchSetUpdate #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> SqlInjectionMatchSetUpdate -> m SqlInjectionMatchSetUpdate #

Read SqlInjectionMatchSetUpdate Source # 
Show SqlInjectionMatchSetUpdate Source # 
Generic SqlInjectionMatchSetUpdate Source # 
Hashable SqlInjectionMatchSetUpdate Source # 
ToJSON SqlInjectionMatchSetUpdate Source # 
NFData SqlInjectionMatchSetUpdate Source # 
type Rep SqlInjectionMatchSetUpdate Source # 
type Rep SqlInjectionMatchSetUpdate = D1 (MetaData "SqlInjectionMatchSetUpdate" "Network.AWS.WAF.Types.Product" "amazonka-waf-1.4.5-LwyS40mcrMjGU0oCXONgRC" False) (C1 (MetaCons "SqlInjectionMatchSetUpdate'" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "_simsuAction") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 ChangeAction)) (S1 (MetaSel (Just Symbol "_simsuSqlInjectionMatchTuple") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 SqlInjectionMatchTuple))))

sqlInjectionMatchSetUpdate Source #

Creates a value of SqlInjectionMatchSetUpdate with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

simsuAction :: Lens' SqlInjectionMatchSetUpdate ChangeAction Source #

Specify INSERT to add a SqlInjectionMatchSetUpdate to a SqlInjectionMatchSet . Use DELETE to remove a SqlInjectionMatchSetUpdate from a SqlInjectionMatchSet .

simsuSqlInjectionMatchTuple :: Lens' SqlInjectionMatchSetUpdate SqlInjectionMatchTuple Source #

Specifies the part of a web request that you want AWS WAF to inspect for snippets of malicious SQL code and, if you want AWS WAF to inspect a header, the name of the header.

SqlInjectionMatchTuple

data SqlInjectionMatchTuple Source #

Specifies the part of a web request that you want AWS WAF to inspect for snippets of malicious SQL code and, if you want AWS WAF to inspect a header, the name of the header.

See: sqlInjectionMatchTuple smart constructor.

Instances

Eq SqlInjectionMatchTuple Source # 
Data SqlInjectionMatchTuple Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> SqlInjectionMatchTuple -> c SqlInjectionMatchTuple #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c SqlInjectionMatchTuple #

toConstr :: SqlInjectionMatchTuple -> Constr #

dataTypeOf :: SqlInjectionMatchTuple -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c SqlInjectionMatchTuple) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c SqlInjectionMatchTuple) #

gmapT :: (forall b. Data b => b -> b) -> SqlInjectionMatchTuple -> SqlInjectionMatchTuple #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> SqlInjectionMatchTuple -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> SqlInjectionMatchTuple -> r #

gmapQ :: (forall d. Data d => d -> u) -> SqlInjectionMatchTuple -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> SqlInjectionMatchTuple -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> SqlInjectionMatchTuple -> m SqlInjectionMatchTuple #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> SqlInjectionMatchTuple -> m SqlInjectionMatchTuple #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> SqlInjectionMatchTuple -> m SqlInjectionMatchTuple #

Read SqlInjectionMatchTuple Source # 
Show SqlInjectionMatchTuple Source # 
Generic SqlInjectionMatchTuple Source # 
Hashable SqlInjectionMatchTuple Source # 
ToJSON SqlInjectionMatchTuple Source # 
FromJSON SqlInjectionMatchTuple Source # 
NFData SqlInjectionMatchTuple Source # 

Methods

rnf :: SqlInjectionMatchTuple -> () #

type Rep SqlInjectionMatchTuple Source # 
type Rep SqlInjectionMatchTuple = D1 (MetaData "SqlInjectionMatchTuple" "Network.AWS.WAF.Types.Product" "amazonka-waf-1.4.5-LwyS40mcrMjGU0oCXONgRC" False) (C1 (MetaCons "SqlInjectionMatchTuple'" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "_simtFieldToMatch") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 FieldToMatch)) (S1 (MetaSel (Just Symbol "_simtTextTransformation") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 TextTransformation))))

sqlInjectionMatchTuple Source #

Creates a value of SqlInjectionMatchTuple with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

  • simtFieldToMatch - Undocumented member.
  • simtTextTransformation - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass AWS WAF. If you specify a transformation, AWS WAF performs the transformation on FieldToMatch before inspecting a request for a match. CMD_LINE When you're concerned that attackers are injecting an operating system commandline command and using unusual formatting to disguise some or all of the command, use this option to perform the following transformations: * Delete the following characters: " ' ^ * Delete spaces before the following characters: / ( * Replace the following characters with a space: , ; * Replace multiple spaces with one space * Convert uppercase letters (A-Z) to lowercase (a-z) COMPRESS_WHITE_SPACE Use this option to replace the following characters with a space character (decimal 32): * f, formfeed, decimal 12 * t, tab, decimal 9 * n, newline, decimal 10 * r, carriage return, decimal 13 * v, vertical tab, decimal 11 * non-breaking space, decimal 160 COMPRESS_WHITE_SPACE also replaces multiple spaces with one space. HTML_ENTITY_DECODE Use this option to replace HTML-encoded characters with unencoded characters. HTML_ENTITY_DECODE performs the following operations: * Replaces (ampersand)quot; with " * Replaces (ampersand)nbsp; with a non-breaking space, decimal 160 * Replaces (ampersand)lt; with a "less than" symbol * Replaces (ampersand)gt; with > * Replaces characters that are represented in hexadecimal format, (ampersand)#xhhhh; , with the corresponding characters * Replaces characters that are represented in decimal format, (ampersand)#nnnn; , with the corresponding characters LOWERCASE Use this option to convert uppercase letters (A-Z) to lowercase (a-z). URL_DECODE Use this option to decode a URL-encoded value. NONE Specify NONE if you don't want to perform any text transformations.

simtTextTransformation :: Lens' SqlInjectionMatchTuple TextTransformation Source #

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass AWS WAF. If you specify a transformation, AWS WAF performs the transformation on FieldToMatch before inspecting a request for a match. CMD_LINE When you're concerned that attackers are injecting an operating system commandline command and using unusual formatting to disguise some or all of the command, use this option to perform the following transformations: * Delete the following characters: " ' ^ * Delete spaces before the following characters: / ( * Replace the following characters with a space: , ; * Replace multiple spaces with one space * Convert uppercase letters (A-Z) to lowercase (a-z) COMPRESS_WHITE_SPACE Use this option to replace the following characters with a space character (decimal 32): * f, formfeed, decimal 12 * t, tab, decimal 9 * n, newline, decimal 10 * r, carriage return, decimal 13 * v, vertical tab, decimal 11 * non-breaking space, decimal 160 COMPRESS_WHITE_SPACE also replaces multiple spaces with one space. HTML_ENTITY_DECODE Use this option to replace HTML-encoded characters with unencoded characters. HTML_ENTITY_DECODE performs the following operations: * Replaces (ampersand)quot; with " * Replaces (ampersand)nbsp; with a non-breaking space, decimal 160 * Replaces (ampersand)lt; with a "less than" symbol * Replaces (ampersand)gt; with > * Replaces characters that are represented in hexadecimal format, (ampersand)#xhhhh; , with the corresponding characters * Replaces characters that are represented in decimal format, (ampersand)#nnnn; , with the corresponding characters LOWERCASE Use this option to convert uppercase letters (A-Z) to lowercase (a-z). URL_DECODE Use this option to decode a URL-encoded value. NONE Specify NONE if you don't want to perform any text transformations.

TimeWindow

data TimeWindow Source #

In a GetSampledRequests request, the StartTime and EndTime objects specify the time range for which you want AWS WAF to return a sample of web requests.

In a GetSampledRequests response, the StartTime and EndTime objects specify the time range for which AWS WAF actually returned a sample of web requests. AWS WAF gets the specified number of requests from among the first 5,000 requests that your AWS resource receives during the specified time period. If your resource receives more than 5,000 requests during that period, AWS WAF stops sampling after the 5,000th request. In that case, EndTime is the time that AWS WAF received the 5,000th request.

See: timeWindow smart constructor.

Instances

Eq TimeWindow Source # 
Data TimeWindow Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> TimeWindow -> c TimeWindow #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c TimeWindow #

toConstr :: TimeWindow -> Constr #

dataTypeOf :: TimeWindow -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c TimeWindow) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c TimeWindow) #

gmapT :: (forall b. Data b => b -> b) -> TimeWindow -> TimeWindow #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> TimeWindow -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> TimeWindow -> r #

gmapQ :: (forall d. Data d => d -> u) -> TimeWindow -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> TimeWindow -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> TimeWindow -> m TimeWindow #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> TimeWindow -> m TimeWindow #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> TimeWindow -> m TimeWindow #

Read TimeWindow Source # 
Show TimeWindow Source # 
Generic TimeWindow Source # 

Associated Types

type Rep TimeWindow :: * -> * #

Hashable TimeWindow Source # 
ToJSON TimeWindow Source # 
FromJSON TimeWindow Source # 
NFData TimeWindow Source # 

Methods

rnf :: TimeWindow -> () #

type Rep TimeWindow Source # 
type Rep TimeWindow = D1 (MetaData "TimeWindow" "Network.AWS.WAF.Types.Product" "amazonka-waf-1.4.5-LwyS40mcrMjGU0oCXONgRC" False) (C1 (MetaCons "TimeWindow'" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "_twStartTime") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 POSIX)) (S1 (MetaSel (Just Symbol "_twEndTime") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 POSIX))))

timeWindow Source #

Creates a value of TimeWindow with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

  • twStartTime - The beginning of the time range from which you want GetSampledRequests to return a sample of the requests that your AWS resource received. You can specify any time range in the previous three hours.
  • twEndTime - The end of the time range from which you want GetSampledRequests to return a sample of the requests that your AWS resource received. You can specify any time range in the previous three hours.

twStartTime :: Lens' TimeWindow UTCTime Source #

The beginning of the time range from which you want GetSampledRequests to return a sample of the requests that your AWS resource received. You can specify any time range in the previous three hours.

twEndTime :: Lens' TimeWindow UTCTime Source #

The end of the time range from which you want GetSampledRequests to return a sample of the requests that your AWS resource received. You can specify any time range in the previous three hours.

WafAction

data WafAction Source #

For the action that is associated with a rule in a WebACL , specifies the action that you want AWS WAF to perform when a web request matches all of the conditions in a rule. For the default action in a WebACL , specifies the action that you want AWS WAF to take when a web request doesn't match all of the conditions in any of the rules in a WebACL .

See: wafAction smart constructor.

Instances

Eq WafAction Source # 
Data WafAction Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> WafAction -> c WafAction #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c WafAction #

toConstr :: WafAction -> Constr #

dataTypeOf :: WafAction -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c WafAction) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c WafAction) #

gmapT :: (forall b. Data b => b -> b) -> WafAction -> WafAction #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> WafAction -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> WafAction -> r #

gmapQ :: (forall d. Data d => d -> u) -> WafAction -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> WafAction -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> WafAction -> m WafAction #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> WafAction -> m WafAction #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> WafAction -> m WafAction #

Read WafAction Source # 
Show WafAction Source # 
Generic WafAction Source # 

Associated Types

type Rep WafAction :: * -> * #

Hashable WafAction Source # 
ToJSON WafAction Source # 
FromJSON WafAction Source # 
NFData WafAction Source # 

Methods

rnf :: WafAction -> () #

type Rep WafAction Source # 
type Rep WafAction = D1 (MetaData "WafAction" "Network.AWS.WAF.Types.Product" "amazonka-waf-1.4.5-LwyS40mcrMjGU0oCXONgRC" True) (C1 (MetaCons "WafAction'" PrefixI True) (S1 (MetaSel (Just Symbol "_waType") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 WafActionType)))

wafAction Source #

Creates a value of WafAction with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

  • waType - Specifies how you want AWS WAF to respond to requests that match the settings in a Rule . Valid settings include the following: * ALLOW : AWS WAF allows requests * BLOCK : AWS WAF blocks requests * COUNT : AWS WAF increments a counter of the requests that match all of the conditions in the rule. AWS WAF then continues to inspect the web request based on the remaining rules in the web ACL. You can't specify COUNT for the default action for a WebACL .

waType :: Lens' WafAction WafActionType Source #

Specifies how you want AWS WAF to respond to requests that match the settings in a Rule . Valid settings include the following: * ALLOW : AWS WAF allows requests * BLOCK : AWS WAF blocks requests * COUNT : AWS WAF increments a counter of the requests that match all of the conditions in the rule. AWS WAF then continues to inspect the web request based on the remaining rules in the web ACL. You can't specify COUNT for the default action for a WebACL .

WebACL

data WebACL Source #

Contains the Rules that identify the requests that you want to allow, block, or count. In a WebACL , you also specify a default action (ALLOW or BLOCK ), and the action for each Rule that you add to a WebACL , for example, block requests from specified IP addresses or block requests from specified referrers. You also associate the WebACL with a CloudFront distribution to identify the requests that you want AWS WAF to filter. If you add more than one Rule to a WebACL , a request needs to match only one of the specifications to be allowed, blocked, or counted. For more information, see UpdateWebACL .

See: webACL smart constructor.

Instances

Eq WebACL Source # 

Methods

(==) :: WebACL -> WebACL -> Bool #

(/=) :: WebACL -> WebACL -> Bool #

Data WebACL Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> WebACL -> c WebACL #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c WebACL #

toConstr :: WebACL -> Constr #

dataTypeOf :: WebACL -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c WebACL) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c WebACL) #

gmapT :: (forall b. Data b => b -> b) -> WebACL -> WebACL #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> WebACL -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> WebACL -> r #

gmapQ :: (forall d. Data d => d -> u) -> WebACL -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> WebACL -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> WebACL -> m WebACL #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> WebACL -> m WebACL #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> WebACL -> m WebACL #

Read WebACL Source # 
Show WebACL Source # 
Generic WebACL Source # 

Associated Types

type Rep WebACL :: * -> * #

Methods

from :: WebACL -> Rep WebACL x #

to :: Rep WebACL x -> WebACL #

Hashable WebACL Source # 

Methods

hashWithSalt :: Int -> WebACL -> Int #

hash :: WebACL -> Int #

FromJSON WebACL Source # 
NFData WebACL Source # 

Methods

rnf :: WebACL -> () #

type Rep WebACL Source # 

webACL Source #

Creates a value of WebACL with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

  • waMetricName - Undocumented member.
  • waName - A friendly name or description of the WebACL . You can't change the name of a WebACL after you create it.
  • waWebACLId - A unique identifier for a WebACL . You use WebACLId to get information about a WebACL (see GetWebACL ), update a WebACL (see UpdateWebACL ), and delete a WebACL from AWS WAF (see DeleteWebACL ). WebACLId is returned by CreateWebACL and by ListWebACLs .
  • waDefaultAction - The action to perform if none of the Rules contained in the WebACL match. The action is specified by the WafAction object.
  • waRules - An array that contains the action for each Rule in a WebACL , the priority of the Rule , and the ID of the Rule .

waMetricName :: Lens' WebACL (Maybe Text) Source #

Undocumented member.

waName :: Lens' WebACL (Maybe Text) Source #

A friendly name or description of the WebACL . You can't change the name of a WebACL after you create it.

waWebACLId :: Lens' WebACL Text Source #

A unique identifier for a WebACL . You use WebACLId to get information about a WebACL (see GetWebACL ), update a WebACL (see UpdateWebACL ), and delete a WebACL from AWS WAF (see DeleteWebACL ). WebACLId is returned by CreateWebACL and by ListWebACLs .

waDefaultAction :: Lens' WebACL WafAction Source #

The action to perform if none of the Rules contained in the WebACL match. The action is specified by the WafAction object.

waRules :: Lens' WebACL [ActivatedRule] Source #

An array that contains the action for each Rule in a WebACL , the priority of the Rule , and the ID of the Rule .

WebACLSummary

data WebACLSummary Source #

Contains the identifier and the name or description of the WebACL .

See: webACLSummary smart constructor.

Instances

Eq WebACLSummary Source # 
Data WebACLSummary Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> WebACLSummary -> c WebACLSummary #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c WebACLSummary #

toConstr :: WebACLSummary -> Constr #

dataTypeOf :: WebACLSummary -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c WebACLSummary) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c WebACLSummary) #

gmapT :: (forall b. Data b => b -> b) -> WebACLSummary -> WebACLSummary #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> WebACLSummary -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> WebACLSummary -> r #

gmapQ :: (forall d. Data d => d -> u) -> WebACLSummary -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> WebACLSummary -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> WebACLSummary -> m WebACLSummary #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> WebACLSummary -> m WebACLSummary #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> WebACLSummary -> m WebACLSummary #

Read WebACLSummary Source # 
Show WebACLSummary Source # 
Generic WebACLSummary Source # 

Associated Types

type Rep WebACLSummary :: * -> * #

Hashable WebACLSummary Source # 
FromJSON WebACLSummary Source # 
NFData WebACLSummary Source # 

Methods

rnf :: WebACLSummary -> () #

type Rep WebACLSummary Source # 
type Rep WebACLSummary = D1 (MetaData "WebACLSummary" "Network.AWS.WAF.Types.Product" "amazonka-waf-1.4.5-LwyS40mcrMjGU0oCXONgRC" False) (C1 (MetaCons "WebACLSummary'" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "_wasWebACLId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text)) (S1 (MetaSel (Just Symbol "_wasName") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text))))

webACLSummary Source #

Creates a value of WebACLSummary with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

  • wasWebACLId - A unique identifier for a WebACL . You use WebACLId to get information about a WebACL (see GetWebACL ), update a WebACL (see UpdateWebACL ), and delete a WebACL from AWS WAF (see DeleteWebACL ). WebACLId is returned by CreateWebACL and by ListWebACLs .
  • wasName - A friendly name or description of the WebACL . You can't change the name of a WebACL after you create it.

wasWebACLId :: Lens' WebACLSummary Text Source #

A unique identifier for a WebACL . You use WebACLId to get information about a WebACL (see GetWebACL ), update a WebACL (see UpdateWebACL ), and delete a WebACL from AWS WAF (see DeleteWebACL ). WebACLId is returned by CreateWebACL and by ListWebACLs .

wasName :: Lens' WebACLSummary Text Source #

A friendly name or description of the WebACL . You can't change the name of a WebACL after you create it.

WebACLUpdate

data WebACLUpdate Source #

Specifies whether to insert a Rule into or delete a Rule from a WebACL .

See: webACLUpdate smart constructor.

Instances

Eq WebACLUpdate Source # 
Data WebACLUpdate Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> WebACLUpdate -> c WebACLUpdate #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c WebACLUpdate #

toConstr :: WebACLUpdate -> Constr #

dataTypeOf :: WebACLUpdate -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c WebACLUpdate) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c WebACLUpdate) #

gmapT :: (forall b. Data b => b -> b) -> WebACLUpdate -> WebACLUpdate #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> WebACLUpdate -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> WebACLUpdate -> r #

gmapQ :: (forall d. Data d => d -> u) -> WebACLUpdate -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> WebACLUpdate -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> WebACLUpdate -> m WebACLUpdate #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> WebACLUpdate -> m WebACLUpdate #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> WebACLUpdate -> m WebACLUpdate #

Read WebACLUpdate Source # 
Show WebACLUpdate Source # 
Generic WebACLUpdate Source # 

Associated Types

type Rep WebACLUpdate :: * -> * #

Hashable WebACLUpdate Source # 
ToJSON WebACLUpdate Source # 
NFData WebACLUpdate Source # 

Methods

rnf :: WebACLUpdate -> () #

type Rep WebACLUpdate Source # 
type Rep WebACLUpdate = D1 (MetaData "WebACLUpdate" "Network.AWS.WAF.Types.Product" "amazonka-waf-1.4.5-LwyS40mcrMjGU0oCXONgRC" False) (C1 (MetaCons "WebACLUpdate'" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "_wauAction") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 ChangeAction)) (S1 (MetaSel (Just Symbol "_wauActivatedRule") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 ActivatedRule))))

webACLUpdate Source #

Creates a value of WebACLUpdate with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

wauAction :: Lens' WebACLUpdate ChangeAction Source #

Specifies whether to insert a Rule into or delete a Rule from a WebACL .

XSSMatchSet

data XSSMatchSet Source #

A complex type that contains XssMatchTuple objects, which specify the parts of web requests that you want AWS WAF to inspect for cross-site scripting attacks and, if you want AWS WAF to inspect a header, the name of the header. If a XssMatchSet contains more than one XssMatchTuple object, a request needs to include cross-site scripting attacks in only one of the specified parts of the request to be considered a match.

See: xssMatchSet smart constructor.

Instances

Eq XSSMatchSet Source # 
Data XSSMatchSet Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> XSSMatchSet -> c XSSMatchSet #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c XSSMatchSet #

toConstr :: XSSMatchSet -> Constr #

dataTypeOf :: XSSMatchSet -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c XSSMatchSet) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c XSSMatchSet) #

gmapT :: (forall b. Data b => b -> b) -> XSSMatchSet -> XSSMatchSet #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> XSSMatchSet -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> XSSMatchSet -> r #

gmapQ :: (forall d. Data d => d -> u) -> XSSMatchSet -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> XSSMatchSet -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> XSSMatchSet -> m XSSMatchSet #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> XSSMatchSet -> m XSSMatchSet #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> XSSMatchSet -> m XSSMatchSet #

Read XSSMatchSet Source # 
Show XSSMatchSet Source # 
Generic XSSMatchSet Source # 

Associated Types

type Rep XSSMatchSet :: * -> * #

Hashable XSSMatchSet Source # 
FromJSON XSSMatchSet Source # 
NFData XSSMatchSet Source # 

Methods

rnf :: XSSMatchSet -> () #

type Rep XSSMatchSet Source # 
type Rep XSSMatchSet = D1 (MetaData "XSSMatchSet" "Network.AWS.WAF.Types.Product" "amazonka-waf-1.4.5-LwyS40mcrMjGU0oCXONgRC" False) (C1 (MetaCons "XSSMatchSet'" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "_xmsName") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text))) ((:*:) (S1 (MetaSel (Just Symbol "_xmsXSSMatchSetId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text)) (S1 (MetaSel (Just Symbol "_xmsXSSMatchTuples") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 [XSSMatchTuple])))))

xssMatchSet Source #

Creates a value of XSSMatchSet with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

  • xmsName - The name, if any, of the XssMatchSet .
  • xmsXSSMatchSetId - A unique identifier for an XssMatchSet . You use XssMatchSetId to get information about an XssMatchSet (see GetXssMatchSet ), update an XssMatchSet (see UpdateXssMatchSet ), insert an XssMatchSet into a Rule or delete one from a Rule (see UpdateRule ), and delete an XssMatchSet from AWS WAF (see DeleteXssMatchSet ). XssMatchSetId is returned by CreateXssMatchSet and by ListXssMatchSets .
  • xmsXSSMatchTuples - Specifies the parts of web requests that you want to inspect for cross-site scripting attacks.

xmsName :: Lens' XSSMatchSet (Maybe Text) Source #

The name, if any, of the XssMatchSet .

xmsXSSMatchSetId :: Lens' XSSMatchSet Text Source #

A unique identifier for an XssMatchSet . You use XssMatchSetId to get information about an XssMatchSet (see GetXssMatchSet ), update an XssMatchSet (see UpdateXssMatchSet ), insert an XssMatchSet into a Rule or delete one from a Rule (see UpdateRule ), and delete an XssMatchSet from AWS WAF (see DeleteXssMatchSet ). XssMatchSetId is returned by CreateXssMatchSet and by ListXssMatchSets .

xmsXSSMatchTuples :: Lens' XSSMatchSet [XSSMatchTuple] Source #

Specifies the parts of web requests that you want to inspect for cross-site scripting attacks.

XSSMatchSetSummary

data XSSMatchSetSummary Source #

The Id and Name of an XssMatchSet .

See: xssMatchSetSummary smart constructor.

Instances

Eq XSSMatchSetSummary Source # 
Data XSSMatchSetSummary Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> XSSMatchSetSummary -> c XSSMatchSetSummary #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c XSSMatchSetSummary #

toConstr :: XSSMatchSetSummary -> Constr #

dataTypeOf :: XSSMatchSetSummary -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c XSSMatchSetSummary) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c XSSMatchSetSummary) #

gmapT :: (forall b. Data b => b -> b) -> XSSMatchSetSummary -> XSSMatchSetSummary #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> XSSMatchSetSummary -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> XSSMatchSetSummary -> r #

gmapQ :: (forall d. Data d => d -> u) -> XSSMatchSetSummary -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> XSSMatchSetSummary -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> XSSMatchSetSummary -> m XSSMatchSetSummary #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> XSSMatchSetSummary -> m XSSMatchSetSummary #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> XSSMatchSetSummary -> m XSSMatchSetSummary #

Read XSSMatchSetSummary Source # 
Show XSSMatchSetSummary Source # 
Generic XSSMatchSetSummary Source # 
Hashable XSSMatchSetSummary Source # 
FromJSON XSSMatchSetSummary Source # 
NFData XSSMatchSetSummary Source # 

Methods

rnf :: XSSMatchSetSummary -> () #

type Rep XSSMatchSetSummary Source # 
type Rep XSSMatchSetSummary = D1 (MetaData "XSSMatchSetSummary" "Network.AWS.WAF.Types.Product" "amazonka-waf-1.4.5-LwyS40mcrMjGU0oCXONgRC" False) (C1 (MetaCons "XSSMatchSetSummary'" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "_xmssXSSMatchSetId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text)) (S1 (MetaSel (Just Symbol "_xmssName") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text))))

xssMatchSetSummary Source #

Creates a value of XSSMatchSetSummary with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

  • xmssXSSMatchSetId - A unique identifier for an XssMatchSet . You use XssMatchSetId to get information about a XssMatchSet (see GetXssMatchSet ), update an XssMatchSet (see UpdateXssMatchSet ), insert an XssMatchSet into a Rule or delete one from a Rule (see UpdateRule ), and delete an XssMatchSet from AWS WAF (see DeleteXssMatchSet ). XssMatchSetId is returned by CreateXssMatchSet and by ListXssMatchSets .
  • xmssName - The name of the XssMatchSet , if any, specified by Id .

xmssXSSMatchSetId :: Lens' XSSMatchSetSummary Text Source #

A unique identifier for an XssMatchSet . You use XssMatchSetId to get information about a XssMatchSet (see GetXssMatchSet ), update an XssMatchSet (see UpdateXssMatchSet ), insert an XssMatchSet into a Rule or delete one from a Rule (see UpdateRule ), and delete an XssMatchSet from AWS WAF (see DeleteXssMatchSet ). XssMatchSetId is returned by CreateXssMatchSet and by ListXssMatchSets .

xmssName :: Lens' XSSMatchSetSummary Text Source #

The name of the XssMatchSet , if any, specified by Id .

XSSMatchSetUpdate

data XSSMatchSetUpdate Source #

Specifies the part of a web request that you want to inspect for cross-site scripting attacks and indicates whether you want to add the specification to an XssMatchSet or delete it from an XssMatchSet .

See: xssMatchSetUpdate smart constructor.

Instances

Eq XSSMatchSetUpdate Source # 
Data XSSMatchSetUpdate Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> XSSMatchSetUpdate -> c XSSMatchSetUpdate #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c XSSMatchSetUpdate #

toConstr :: XSSMatchSetUpdate -> Constr #

dataTypeOf :: XSSMatchSetUpdate -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c XSSMatchSetUpdate) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c XSSMatchSetUpdate) #

gmapT :: (forall b. Data b => b -> b) -> XSSMatchSetUpdate -> XSSMatchSetUpdate #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> XSSMatchSetUpdate -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> XSSMatchSetUpdate -> r #

gmapQ :: (forall d. Data d => d -> u) -> XSSMatchSetUpdate -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> XSSMatchSetUpdate -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> XSSMatchSetUpdate -> m XSSMatchSetUpdate #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> XSSMatchSetUpdate -> m XSSMatchSetUpdate #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> XSSMatchSetUpdate -> m XSSMatchSetUpdate #

Read XSSMatchSetUpdate Source # 
Show XSSMatchSetUpdate Source # 
Generic XSSMatchSetUpdate Source # 
Hashable XSSMatchSetUpdate Source # 
ToJSON XSSMatchSetUpdate Source # 
NFData XSSMatchSetUpdate Source # 

Methods

rnf :: XSSMatchSetUpdate -> () #

type Rep XSSMatchSetUpdate Source # 
type Rep XSSMatchSetUpdate = D1 (MetaData "XSSMatchSetUpdate" "Network.AWS.WAF.Types.Product" "amazonka-waf-1.4.5-LwyS40mcrMjGU0oCXONgRC" False) (C1 (MetaCons "XSSMatchSetUpdate'" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "_xmsuAction") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 ChangeAction)) (S1 (MetaSel (Just Symbol "_xmsuXSSMatchTuple") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 XSSMatchTuple))))

xssMatchSetUpdate Source #

Creates a value of XSSMatchSetUpdate with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

  • xmsuAction - Specify INSERT to add a XssMatchSetUpdate to an XssMatchSet . Use DELETE to remove a XssMatchSetUpdate from an XssMatchSet .
  • xmsuXSSMatchTuple - Specifies the part of a web request that you want AWS WAF to inspect for cross-site scripting attacks and, if you want AWS WAF to inspect a header, the name of the header.

xmsuAction :: Lens' XSSMatchSetUpdate ChangeAction Source #

Specify INSERT to add a XssMatchSetUpdate to an XssMatchSet . Use DELETE to remove a XssMatchSetUpdate from an XssMatchSet .

xmsuXSSMatchTuple :: Lens' XSSMatchSetUpdate XSSMatchTuple Source #

Specifies the part of a web request that you want AWS WAF to inspect for cross-site scripting attacks and, if you want AWS WAF to inspect a header, the name of the header.

XSSMatchTuple

data XSSMatchTuple Source #

Specifies the part of a web request that you want AWS WAF to inspect for cross-site scripting attacks and, if you want AWS WAF to inspect a header, the name of the header.

See: xssMatchTuple smart constructor.

Instances

Eq XSSMatchTuple Source # 
Data XSSMatchTuple Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> XSSMatchTuple -> c XSSMatchTuple #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c XSSMatchTuple #

toConstr :: XSSMatchTuple -> Constr #

dataTypeOf :: XSSMatchTuple -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c XSSMatchTuple) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c XSSMatchTuple) #

gmapT :: (forall b. Data b => b -> b) -> XSSMatchTuple -> XSSMatchTuple #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> XSSMatchTuple -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> XSSMatchTuple -> r #

gmapQ :: (forall d. Data d => d -> u) -> XSSMatchTuple -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> XSSMatchTuple -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> XSSMatchTuple -> m XSSMatchTuple #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> XSSMatchTuple -> m XSSMatchTuple #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> XSSMatchTuple -> m XSSMatchTuple #

Read XSSMatchTuple Source # 
Show XSSMatchTuple Source # 
Generic XSSMatchTuple Source # 

Associated Types

type Rep XSSMatchTuple :: * -> * #

Hashable XSSMatchTuple Source # 
ToJSON XSSMatchTuple Source # 
FromJSON XSSMatchTuple Source # 
NFData XSSMatchTuple Source # 

Methods

rnf :: XSSMatchTuple -> () #

type Rep XSSMatchTuple Source # 
type Rep XSSMatchTuple = D1 (MetaData "XSSMatchTuple" "Network.AWS.WAF.Types.Product" "amazonka-waf-1.4.5-LwyS40mcrMjGU0oCXONgRC" False) (C1 (MetaCons "XSSMatchTuple'" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "_xmtFieldToMatch") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 FieldToMatch)) (S1 (MetaSel (Just Symbol "_xmtTextTransformation") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 TextTransformation))))

xssMatchTuple Source #

Creates a value of XSSMatchTuple with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

  • xmtFieldToMatch - Undocumented member.
  • xmtTextTransformation - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass AWS WAF. If you specify a transformation, AWS WAF performs the transformation on FieldToMatch before inspecting a request for a match. CMD_LINE When you're concerned that attackers are injecting an operating system commandline command and using unusual formatting to disguise some or all of the command, use this option to perform the following transformations: * Delete the following characters: " ' ^ * Delete spaces before the following characters: / ( * Replace the following characters with a space: , ; * Replace multiple spaces with one space * Convert uppercase letters (A-Z) to lowercase (a-z) COMPRESS_WHITE_SPACE Use this option to replace the following characters with a space character (decimal 32): * f, formfeed, decimal 12 * t, tab, decimal 9 * n, newline, decimal 10 * r, carriage return, decimal 13 * v, vertical tab, decimal 11 * non-breaking space, decimal 160 COMPRESS_WHITE_SPACE also replaces multiple spaces with one space. HTML_ENTITY_DECODE Use this option to replace HTML-encoded characters with unencoded characters. HTML_ENTITY_DECODE performs the following operations: * Replaces (ampersand)quot; with " * Replaces (ampersand)nbsp; with a non-breaking space, decimal 160 * Replaces (ampersand)lt; with a "less than" symbol * Replaces (ampersand)gt; with > * Replaces characters that are represented in hexadecimal format, (ampersand)#xhhhh; , with the corresponding characters * Replaces characters that are represented in decimal format, (ampersand)#nnnn; , with the corresponding characters LOWERCASE Use this option to convert uppercase letters (A-Z) to lowercase (a-z). URL_DECODE Use this option to decode a URL-encoded value. NONE Specify NONE if you don't want to perform any text transformations.

xmtTextTransformation :: Lens' XSSMatchTuple TextTransformation Source #

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass AWS WAF. If you specify a transformation, AWS WAF performs the transformation on FieldToMatch before inspecting a request for a match. CMD_LINE When you're concerned that attackers are injecting an operating system commandline command and using unusual formatting to disguise some or all of the command, use this option to perform the following transformations: * Delete the following characters: " ' ^ * Delete spaces before the following characters: / ( * Replace the following characters with a space: , ; * Replace multiple spaces with one space * Convert uppercase letters (A-Z) to lowercase (a-z) COMPRESS_WHITE_SPACE Use this option to replace the following characters with a space character (decimal 32): * f, formfeed, decimal 12 * t, tab, decimal 9 * n, newline, decimal 10 * r, carriage return, decimal 13 * v, vertical tab, decimal 11 * non-breaking space, decimal 160 COMPRESS_WHITE_SPACE also replaces multiple spaces with one space. HTML_ENTITY_DECODE Use this option to replace HTML-encoded characters with unencoded characters. HTML_ENTITY_DECODE performs the following operations: * Replaces (ampersand)quot; with " * Replaces (ampersand)nbsp; with a non-breaking space, decimal 160 * Replaces (ampersand)lt; with a "less than" symbol * Replaces (ampersand)gt; with > * Replaces characters that are represented in hexadecimal format, (ampersand)#xhhhh; , with the corresponding characters * Replaces characters that are represented in decimal format, (ampersand)#nnnn; , with the corresponding characters LOWERCASE Use this option to convert uppercase letters (A-Z) to lowercase (a-z). URL_DECODE Use this option to decode a URL-encoded value. NONE Specify NONE if you don't want to perform any text transformations.