CreateRuleGroup
Creates a RuleGroup per the specifications provided.
A rule group defines a collection of rules to inspect and control web requests that you can use in a WebACL. When you create a rule group, you define an immutable capacity limit. If you update a rule group, you must stay within the capacity. This allows others to reuse the rule group with confidence in its capacity requirements.
Request Syntax
{
"Capacity": number,
"CustomResponseBodies": {
"string" : {
"Content": "string",
"ContentType": "string"
}
},
"Description": "string",
"MonetizationConfig": {
"CryptoConfig": {
"PaymentNetworks": [
{
"Chain": "string",
"Prices": [
{
"Amount": "string",
"Currency": "string"
}
],
"WalletAddress": "string"
}
]
},
"CurrencyMode": "string"
},
"Name": "string",
"Rules": [
{
"Action": {
"Allow": {
"CustomRequestHandling": {
"InsertHeaders": [
{
"Name": "string",
"Value": "string"
}
]
}
},
"Block": {
"CustomResponse": {
"CustomResponseBodyKey": "string",
"ResponseCode": number,
"ResponseHeaders": [
{
"Name": "string",
"Value": "string"
}
]
}
},
"Captcha": {
"CustomRequestHandling": {
"InsertHeaders": [
{
"Name": "string",
"Value": "string"
}
]
}
},
"Challenge": {
"CustomRequestHandling": {
"InsertHeaders": [
{
"Name": "string",
"Value": "string"
}
]
}
},
"Count": {
"CustomRequestHandling": {
"InsertHeaders": [
{
"Name": "string",
"Value": "string"
}
]
}
},
"Monetize": {
"PriceMultiplier": "string"
}
},
"CaptchaConfig": {
"ImmunityTimeProperty": {
"ImmunityTime": number
}
},
"ChallengeConfig": {
"ImmunityTimeProperty": {
"ImmunityTime": number
}
},
"Name": "string",
"OverrideAction": {
"Count": {
"CustomRequestHandling": {
"InsertHeaders": [
{
"Name": "string",
"Value": "string"
}
]
}
},
"None": {
}
},
"Priority": number,
"RuleLabels": [
{
"Name": "string"
}
],
"Statement": {
"AndStatement": {
"Statements": [
"Statement"
]
},
"AsnMatchStatement": {
"AsnList": [ number ],
"ForwardedIPConfig": {
"FallbackBehavior": "string",
"HeaderName": "string"
}
},
"ByteMatchStatement": {
"FieldToMatch": {
"AllQueryArguments": {
},
"Body": {
"OversizeHandling": "string"
},
"Cookies": {
"MatchPattern": {
"All": {
},
"ExcludedCookies": [ "string" ],
"IncludedCookies": [ "string" ]
},
"MatchScope": "string",
"OversizeHandling": "string"
},
"HeaderOrder": {
"OversizeHandling": "string"
},
"Headers": {
"MatchPattern": {
"All": {
},
"ExcludedHeaders": [ "string" ],
"IncludedHeaders": [ "string" ]
},
"MatchScope": "string",
"OversizeHandling": "string"
},
"JA3Fingerprint": {
"FallbackBehavior": "string"
},
"JA4Fingerprint": {
"FallbackBehavior": "string"
},
"JsonBody": {
"InvalidFallbackBehavior": "string",
"MatchPattern": {
"All": {
},
"IncludedPaths": [ "string" ]
},
"MatchScope": "string",
"OversizeHandling": "string"
},
"Method": {
},
"QueryString": {
},
"SingleHeader": {
"Name": "string"
},
"SingleQueryArgument": {
"Name": "string"
},
"UriFragment": {
"FallbackBehavior": "string"
},
"UriPath": {
}
},
"PositionalConstraint": "string",
"PreParseTextTransformations": [
{
"Priority": number,
"Type": "string"
}
],
"SearchString": blob,
"TextTransformations": [
{
"Priority": number,
"Type": "string"
}
]
},
"GeoMatchStatement": {
"CountryCodes": [ "string" ],
"ForwardedIPConfig": {
"FallbackBehavior": "string",
"HeaderName": "string"
}
},
"IPSetReferenceStatement": {
"ARN": "string",
"IPSetForwardedIPConfig": {
"FallbackBehavior": "string",
"HeaderName": "string",
"Position": "string"
}
},
"LabelMatchStatement": {
"Key": "string",
"Scope": "string"
},
"ManagedRuleGroupStatement": {
"ExcludedRules": [
{
"Name": "string"
}
],
"ManagedRuleGroupConfigs": [
{
"AWSManagedRulesACFPRuleSet": {
"CreationPath": "string",
"EnableRegexInPath": boolean,
"RegistrationPagePath": "string",
"RequestInspection": {
"AddressFields": [
{
"Identifier": "string"
}
],
"EmailField": {
"Identifier": "string"
},
"PasswordField": {
"Identifier": "string"
},
"PayloadType": "string",
"PhoneNumberFields": [
{
"Identifier": "string"
}
],
"UsernameField": {
"Identifier": "string"
}
},
"ResponseInspection": {
"BodyContains": {
"FailureStrings": [ "string" ],
"SuccessStrings": [ "string" ]
},
"Header": {
"FailureValues": [ "string" ],
"Name": "string",
"SuccessValues": [ "string" ]
},
"Json": {
"FailureValues": [ "string" ],
"Identifier": "string",
"SuccessValues": [ "string" ]
},
"StatusCode": {
"FailureCodes": [ number ],
"SuccessCodes": [ number ]
}
}
},
"AWSManagedRulesAntiDDoSRuleSet": {
"ClientSideActionConfig": {
"Challenge": {
"ExemptUriRegularExpressions": [
{
"RegexString": "string"
}
],
"Sensitivity": "string",
"UsageOfAction": "string"
}
},
"SensitivityToBlock": "string"
},
"AWSManagedRulesATPRuleSet": {
"EnableRegexInPath": boolean,
"LoginPath": "string",
"RequestInspection": {
"PasswordField": {
"Identifier": "string"
},
"PayloadType": "string",
"UsernameField": {
"Identifier": "string"
}
},
"ResponseInspection": {
"BodyContains": {
"FailureStrings": [ "string" ],
"SuccessStrings": [ "string" ]
},
"Header": {
"FailureValues": [ "string" ],
"Name": "string",
"SuccessValues": [ "string" ]
},
"Json": {
"FailureValues": [ "string" ],
"Identifier": "string",
"SuccessValues": [ "string" ]
},
"StatusCode": {
"FailureCodes": [ number ],
"SuccessCodes": [ number ]
}
}
},
"AWSManagedRulesBotControlRuleSet": {
"EnableMachineLearning": boolean,
"InspectionLevel": "string"
},
"LoginPath": "string",
"PasswordField": {
"Identifier": "string"
},
"PayloadType": "string",
"UsernameField": {
"Identifier": "string"
}
}
],
"Name": "string",
"RuleActionOverrides": [
{
"ActionToUse": {
"Allow": {
"CustomRequestHandling": {
"InsertHeaders": [
{
"Name": "string",
"Value": "string"
}
]
}
},
"Block": {
"CustomResponse": {
"CustomResponseBodyKey": "string",
"ResponseCode": number,
"ResponseHeaders": [
{
"Name": "string",
"Value": "string"
}
]
}
},
"Captcha": {
"CustomRequestHandling": {
"InsertHeaders": [
{
"Name": "string",
"Value": "string"
}
]
}
},
"Challenge": {
"CustomRequestHandling": {
"InsertHeaders": [
{
"Name": "string",
"Value": "string"
}
]
}
},
"Count": {
"CustomRequestHandling": {
"InsertHeaders": [
{
"Name": "string",
"Value": "string"
}
]
}
},
"Monetize": {
"PriceMultiplier": "string"
}
},
"Name": "string"
}
],
"ScopeDownStatement": "Statement",
"VendorName": "string",
"Version": "string"
},
"NotStatement": {
"Statement": "Statement"
},
"OrStatement": {
"Statements": [
"Statement"
]
},
"RateBasedStatement": {
"AggregateKeyType": "string",
"CustomKeys": [
{
"ASN": {
},
"Cookie": {
"Name": "string",
"TextTransformations": [
{
"Priority": number,
"Type": "string"
}
]
},
"ForwardedIP": {
},
"Header": {
"Name": "string",
"TextTransformations": [
{
"Priority": number,
"Type": "string"
}
]
},
"HTTPMethod": {
},
"IP": {
},
"JA3Fingerprint": {
"FallbackBehavior": "string"
},
"JA4Fingerprint": {
"FallbackBehavior": "string"
},
"LabelNamespace": {
"Namespace": "string"
},
"QueryArgument": {
"Name": "string",
"TextTransformations": [
{
"Priority": number,
"Type": "string"
}
]
},
"QueryString": {
"TextTransformations": [
{
"Priority": number,
"Type": "string"
}
]
},
"UriPath": {
"TextTransformations": [
{
"Priority": number,
"Type": "string"
}
]
}
}
],
"EvaluationWindowSec": number,
"ForwardedIPConfig": {
"FallbackBehavior": "string",
"HeaderName": "string"
},
"Limit": number,
"ScopeDownStatement": "Statement"
},
"RegexMatchStatement": {
"FieldToMatch": {
"AllQueryArguments": {
},
"Body": {
"OversizeHandling": "string"
},
"Cookies": {
"MatchPattern": {
"All": {
},
"ExcludedCookies": [ "string" ],
"IncludedCookies": [ "string" ]
},
"MatchScope": "string",
"OversizeHandling": "string"
},
"HeaderOrder": {
"OversizeHandling": "string"
},
"Headers": {
"MatchPattern": {
"All": {
},
"ExcludedHeaders": [ "string" ],
"IncludedHeaders": [ "string" ]
},
"MatchScope": "string",
"OversizeHandling": "string"
},
"JA3Fingerprint": {
"FallbackBehavior": "string"
},
"JA4Fingerprint": {
"FallbackBehavior": "string"
},
"JsonBody": {
"InvalidFallbackBehavior": "string",
"MatchPattern": {
"All": {
},
"IncludedPaths": [ "string" ]
},
"MatchScope": "string",
"OversizeHandling": "string"
},
"Method": {
},
"QueryString": {
},
"SingleHeader": {
"Name": "string"
},
"SingleQueryArgument": {
"Name": "string"
},
"UriFragment": {
"FallbackBehavior": "string"
},
"UriPath": {
}
},
"PreParseTextTransformations": [
{
"Priority": number,
"Type": "string"
}
],
"RegexString": "string",
"TextTransformations": [
{
"Priority": number,
"Type": "string"
}
]
},
"RegexPatternSetReferenceStatement": {
"ARN": "string",
"FieldToMatch": {
"AllQueryArguments": {
},
"Body": {
"OversizeHandling": "string"
},
"Cookies": {
"MatchPattern": {
"All": {
},
"ExcludedCookies": [ "string" ],
"IncludedCookies": [ "string" ]
},
"MatchScope": "string",
"OversizeHandling": "string"
},
"HeaderOrder": {
"OversizeHandling": "string"
},
"Headers": {
"MatchPattern": {
"All": {
},
"ExcludedHeaders": [ "string" ],
"IncludedHeaders": [ "string" ]
},
"MatchScope": "string",
"OversizeHandling": "string"
},
"JA3Fingerprint": {
"FallbackBehavior": "string"
},
"JA4Fingerprint": {
"FallbackBehavior": "string"
},
"JsonBody": {
"InvalidFallbackBehavior": "string",
"MatchPattern": {
"All": {
},
"IncludedPaths": [ "string" ]
},
"MatchScope": "string",
"OversizeHandling": "string"
},
"Method": {
},
"QueryString": {
},
"SingleHeader": {
"Name": "string"
},
"SingleQueryArgument": {
"Name": "string"
},
"UriFragment": {
"FallbackBehavior": "string"
},
"UriPath": {
}
},
"PreParseTextTransformations": [
{
"Priority": number,
"Type": "string"
}
],
"TextTransformations": [
{
"Priority": number,
"Type": "string"
}
]
},
"RuleGroupReferenceStatement": {
"ARN": "string",
"ExcludedRules": [
{
"Name": "string"
}
],
"RuleActionOverrides": [
{
"ActionToUse": {
"Allow": {
"CustomRequestHandling": {
"InsertHeaders": [
{
"Name": "string",
"Value": "string"
}
]
}
},
"Block": {
"CustomResponse": {
"CustomResponseBodyKey": "string",
"ResponseCode": number,
"ResponseHeaders": [
{
"Name": "string",
"Value": "string"
}
]
}
},
"Captcha": {
"CustomRequestHandling": {
"InsertHeaders": [
{
"Name": "string",
"Value": "string"
}
]
}
},
"Challenge": {
"CustomRequestHandling": {
"InsertHeaders": [
{
"Name": "string",
"Value": "string"
}
]
}
},
"Count": {
"CustomRequestHandling": {
"InsertHeaders": [
{
"Name": "string",
"Value": "string"
}
]
}
},
"Monetize": {
"PriceMultiplier": "string"
}
},
"Name": "string"
}
]
},
"SizeConstraintStatement": {
"ComparisonOperator": "string",
"FieldToMatch": {
"AllQueryArguments": {
},
"Body": {
"OversizeHandling": "string"
},
"Cookies": {
"MatchPattern": {
"All": {
},
"ExcludedCookies": [ "string" ],
"IncludedCookies": [ "string" ]
},
"MatchScope": "string",
"OversizeHandling": "string"
},
"HeaderOrder": {
"OversizeHandling": "string"
},
"Headers": {
"MatchPattern": {
"All": {
},
"ExcludedHeaders": [ "string" ],
"IncludedHeaders": [ "string" ]
},
"MatchScope": "string",
"OversizeHandling": "string"
},
"JA3Fingerprint": {
"FallbackBehavior": "string"
},
"JA4Fingerprint": {
"FallbackBehavior": "string"
},
"JsonBody": {
"InvalidFallbackBehavior": "string",
"MatchPattern": {
"All": {
},
"IncludedPaths": [ "string" ]
},
"MatchScope": "string",
"OversizeHandling": "string"
},
"Method": {
},
"QueryString": {
},
"SingleHeader": {
"Name": "string"
},
"SingleQueryArgument": {
"Name": "string"
},
"UriFragment": {
"FallbackBehavior": "string"
},
"UriPath": {
}
},
"PreParseTextTransformations": [
{
"Priority": number,
"Type": "string"
}
],
"Size": number,
"TextTransformations": [
{
"Priority": number,
"Type": "string"
}
]
},
"SqliMatchStatement": {
"FieldToMatch": {
"AllQueryArguments": {
},
"Body": {
"OversizeHandling": "string"
},
"Cookies": {
"MatchPattern": {
"All": {
},
"ExcludedCookies": [ "string" ],
"IncludedCookies": [ "string" ]
},
"MatchScope": "string",
"OversizeHandling": "string"
},
"HeaderOrder": {
"OversizeHandling": "string"
},
"Headers": {
"MatchPattern": {
"All": {
},
"ExcludedHeaders": [ "string" ],
"IncludedHeaders": [ "string" ]
},
"MatchScope": "string",
"OversizeHandling": "string"
},
"JA3Fingerprint": {
"FallbackBehavior": "string"
},
"JA4Fingerprint": {
"FallbackBehavior": "string"
},
"JsonBody": {
"InvalidFallbackBehavior": "string",
"MatchPattern": {
"All": {
},
"IncludedPaths": [ "string" ]
},
"MatchScope": "string",
"OversizeHandling": "string"
},
"Method": {
},
"QueryString": {
},
"SingleHeader": {
"Name": "string"
},
"SingleQueryArgument": {
"Name": "string"
},
"UriFragment": {
"FallbackBehavior": "string"
},
"UriPath": {
}
},
"PreParseTextTransformations": [
{
"Priority": number,
"Type": "string"
}
],
"SensitivityLevel": "string",
"TextTransformations": [
{
"Priority": number,
"Type": "string"
}
]
},
"XssMatchStatement": {
"FieldToMatch": {
"AllQueryArguments": {
},
"Body": {
"OversizeHandling": "string"
},
"Cookies": {
"MatchPattern": {
"All": {
},
"ExcludedCookies": [ "string" ],
"IncludedCookies": [ "string" ]
},
"MatchScope": "string",
"OversizeHandling": "string"
},
"HeaderOrder": {
"OversizeHandling": "string"
},
"Headers": {
"MatchPattern": {
"All": {
},
"ExcludedHeaders": [ "string" ],
"IncludedHeaders": [ "string" ]
},
"MatchScope": "string",
"OversizeHandling": "string"
},
"JA3Fingerprint": {
"FallbackBehavior": "string"
},
"JA4Fingerprint": {
"FallbackBehavior": "string"
},
"JsonBody": {
"InvalidFallbackBehavior": "string",
"MatchPattern": {
"All": {
},
"IncludedPaths": [ "string" ]
},
"MatchScope": "string",
"OversizeHandling": "string"
},
"Method": {
},
"QueryString": {
},
"SingleHeader": {
"Name": "string"
},
"