| Copyright | (c) 2013-2018 Brendan Hay |
|---|---|
| License | Mozilla Public License, v. 2.0. |
| Maintainer | Brendan Hay <brendan.g.hay+amazonka@gmail.com> |
| Stability | auto-generated |
| Portability | non-portable (GHC extensions) |
| Safe Haskell | None |
| Language | Haskell2010 |
Network.AWS.WAF.CreateRule
Description
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
IPSetthat matches the IP address192.0.2.44/32 - A
ByteMatchSetthat matchesBadBotin theUser-Agentheader
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, seeCreateByteMatchSet,CreateIPSet, andCreateSqlInjectionMatchSet. - Use
GetChangeTokento get the change token that you provide in theChangeTokenparameter of aCreateRulerequest. - Submit a
CreateRulerequest. - Use
GetChangeTokento get the change token that you provide in theChangeTokenparameter of anUpdateRulerequest. - Submit an
UpdateRulerequest to specify the predicates that you want to include in theRule. - Create and update a
WebACLthat contains theRule. For more information, seeCreateWebACL.
For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide .
Synopsis
- 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
Arguments
| :: Text | |
| -> Text | |
| -> Text | |
| -> CreateRule |
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:
crName- A friendly name or description of theRule. You can't change the name of aRuleafter you create it.crMetricName- A friendly name or description for the metrics for thisRule. The name can contain only alphanumeric characters (A-Z, a-z, 0-9); the name can't contain whitespace. You can't change the name of the metric after you create theRule.crChangeToken- The value returned by the most recent call toGetChangeToken.
data CreateRule Source #
See: createRule smart constructor.
Instances
Request Lenses
crName :: Lens' CreateRule Text Source #
A friendly name or description of the Rule . You can't change the name of a Rule after you create it.
crMetricName :: Lens' CreateRule Text Source #
A friendly name or description for the metrics for this Rule . The name can contain only alphanumeric characters (A-Z, a-z, 0-9); the name can't contain whitespace. You can't change the name of the metric after you create the Rule .
crChangeToken :: Lens' CreateRule Text Source #
The value returned by the most recent call to GetChangeToken .
Destructuring the Response
Arguments
| :: Int | |
| -> CreateRuleResponse |
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:
crrsRule- TheRulereturned in theCreateRuleresponse.crrsChangeToken- TheChangeTokenthat you used to submit theCreateRulerequest. You can also use this value to query the status of the request. For more information, seeGetChangeTokenStatus.crrsResponseStatus- -- | The response status code.
data CreateRuleResponse Source #
See: createRuleResponse smart constructor.
Instances
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.