Copyright | (c) 2013-2016 Brendan Hay |
---|---|
License | Mozilla Public License, v. 2.0. |
Maintainer | Brendan Hay <brendan.g.hay@gmail.com> |
Stability | auto-generated |
Portability | non-portable (GHC extensions) |
Safe Haskell | None |
Language | Haskell2010 |
Creates a Rule
, which contains the IPSet
objects, ByteMatchSet
objects, and other predicates that identify the requests that you want to block. If you add more than one predicate to a Rule
, a request must match all of the specifications to be allowed or blocked. For example, suppose you add the following to a Rule
:
- An
IPSet
that matches the IP address '192.0.2.44\/32' - A
ByteMatchSet
that matchesBadBot
in the 'User-Agent' header
You then add the Rule
to a WebACL
and specify that you want to blocks requests that satisfy the Rule
. For a request to be blocked, it must come from the IP address 192.0.2.44 and the 'User-Agent' header in the request must contain the value BadBot
.
To create and configure a Rule
, perform the following steps:
- Create and update the predicates that you want to include in the
Rule
. For more information, see CreateByteMatchSet, CreateIPSet, and CreateSqlInjectionMatchSet. - Use GetChangeToken to get the change token that you provide in the
ChangeToken
parameter of aCreateRule
request. - Submit a
CreateRule
request. - Use
GetChangeToken
to get the change token that you provide in theChangeToken
parameter of an UpdateRule request. - Submit an
UpdateRule
request to specify the predicates that you want to include in theRule
. - Create and update a
WebACL
that contains theRule
. For more information, see CreateWebACL.
For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide.
- createRule :: Text -> Text -> Text -> CreateRule
- data CreateRule
- crName :: Lens' CreateRule Text
- crMetricName :: Lens' CreateRule Text
- crChangeToken :: Lens' CreateRule Text
- createRuleResponse :: Int -> CreateRuleResponse
- data CreateRuleResponse
- crrsRule :: Lens' CreateRuleResponse (Maybe Rule)
- crrsChangeToken :: Lens' CreateRuleResponse (Maybe Text)
- crrsResponseStatus :: Lens' CreateRuleResponse Int
Creating a Request
Creates a value of CreateRule
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
data CreateRule Source #
See: createRule
smart constructor.
Request Lenses
crChangeToken :: Lens' CreateRule Text Source #
The value returned by the most recent call to GetChangeToken.
Destructuring the Response
Creates a value of CreateRuleResponse
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
data CreateRuleResponse Source #
See: createRuleResponse
smart constructor.
Response Lenses
crrsRule :: Lens' CreateRuleResponse (Maybe Rule) Source #
The Rule returned in the CreateRule
response.
crrsChangeToken :: Lens' CreateRuleResponse (Maybe Text) Source #
The ChangeToken
that you used to submit the CreateRule
request. You can also use this value to query the status of the request. For more information, see GetChangeTokenStatus.
crrsResponseStatus :: Lens' CreateRuleResponse Int Source #
The response status code.