@Generated(value="software.amazon.awssdk:codegen") public final class Rule extends Object implements StructuredPojo, ToCopyableBuilder<Rule.Builder,Rule>
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
.
Modifier and Type | Class and Description |
---|---|
static interface |
Rule.Builder |
Modifier and Type | Method and Description |
---|---|
static Rule.Builder |
builder() |
boolean |
equals(Object obj) |
<T> Optional<T> |
getValueForField(String fieldName,
Class<T> clazz) |
int |
hashCode() |
void |
marshall(ProtocolMarshaller protocolMarshaller)
Marshalls this structured data using the given
ProtocolMarshaller . |
String |
metricName()
A friendly name or description for the metrics for this
Rule . |
String |
name()
The friendly name or description for the
Rule . |
List<Predicate> |
predicates()
The
Predicates object contains one Predicate element for each ByteMatchSet,
IPSet, or SqlInjectionMatchSet object that you want to include in a Rule . |
String |
ruleId()
A unique identifier for a
Rule . |
static Class<? extends Rule.Builder> |
serializableBuilderClass() |
Rule.Builder |
toBuilder()
Take this object and create a builder that contains all of the current property values of this object.
|
String |
toString() |
copy
public String ruleId()
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.
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.
public String name()
The friendly name or description for the Rule
. You can't change the name of a Rule
after you create it.
Rule
. You can't change the name of a
Rule
after you create it.public String metricName()
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 MetricName
after you
create the Rule
.
Rule
. The name can contain only
alphanumeric characters (A-Z, a-z, 0-9); the name can't contain whitespace. You can't change
MetricName
after you create the Rule
.public List<Predicate> predicates()
The Predicates
object contains one Predicate
element for each ByteMatchSet,
IPSet, or SqlInjectionMatchSet object that you want to include in a Rule
.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
Predicates
object contains one Predicate
element for each
ByteMatchSet, IPSet, or SqlInjectionMatchSet object that you want to include in a
Rule
.public Rule.Builder toBuilder()
ToCopyableBuilder
toBuilder
in interface ToCopyableBuilder<Rule.Builder,Rule>
public static Rule.Builder builder()
public static Class<? extends Rule.Builder> serializableBuilderClass()
public void marshall(ProtocolMarshaller protocolMarshaller)
StructuredPojo
ProtocolMarshaller
.marshall
in interface StructuredPojo
protocolMarshaller
- Implementation of ProtocolMarshaller
used to marshall this object's data.Copyright © 2017 Amazon Web Services, Inc. All Rights Reserved.