public final class ConditionFactory
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
CURRENT_TIME_CONDITION_KEY
Condition key for the current time.
|
static java.lang.String |
EPOCH_TIME_CONDITION_KEY
Condition key for the current time, in epoch seconds.
|
static java.lang.String |
REFERER_CONDITION_KEY
Condition key for the referer specified by a request.
|
static java.lang.String |
SECURE_TRANSPORT_CONDITION_KEY
Condition key for whether or not an incoming request is using a secure
transport to make the request (i.e.
|
static java.lang.String |
SOURCE_ARN_CONDITION_KEY
Condition key for the Amazon Resource Name (ARN) of the source specified
in a request.
|
static java.lang.String |
SOURCE_IP_CONDITION_KEY
Condition key for the source IP from which a request originates.
|
static java.lang.String |
USER_AGENT_CONDITION_KEY
Condition key for the user agent included in a request.
|
Modifier and Type | Method and Description |
---|---|
static Condition |
newRefererCondition(StringCondition.StringComparisonType comparisonType,
java.lang.String value)
Constructs a new access control policy condition that tests the incoming
request's referer field against the specified value, using the specified
comparison type.
|
static Condition |
newSecureTransportCondition()
Constructs a new access control policy condition that tests if the
incoming request was sent over a secure transport (HTTPS).
|
static Condition |
newSourceArnCondition(java.lang.String arnPattern)
Constructs a new access policy condition that compares the Amazon
Resource Name (ARN) of the source of an AWS resource that is modifying
another AWS resource with the specified pattern.
|
static Condition |
newUserAgentCondition(StringCondition.StringComparisonType comparisonType,
java.lang.String value)
Constructs a new access control policy condition that tests the incoming
request's user agent field against the specified value, using the
specified comparison type.
|
public static final java.lang.String CURRENT_TIME_CONDITION_KEY
This condition key should only be used with DateCondition
objects.
public static final java.lang.String SECURE_TRANSPORT_CONDITION_KEY
This condition key should only be used with BooleanCondition
objects.
public static final java.lang.String SOURCE_IP_CONDITION_KEY
This condition key should only be used with IpAddressCondition
objects.
public static final java.lang.String USER_AGENT_CONDITION_KEY
This condition key should only be used with StringCondition
objects.
public static final java.lang.String EPOCH_TIME_CONDITION_KEY
This condition key should only be used with NumericCondition
objects.
public static final java.lang.String REFERER_CONDITION_KEY
This condition key should only be used with StringCondition
objects.
public static final java.lang.String SOURCE_ARN_CONDITION_KEY
This condition key should only be used with ArnCondition
objects.
public static Condition newSourceArnCondition(java.lang.String arnPattern)
For example, the source ARN could be an Amazon SNS topic ARN that is sending messages to an Amazon SQS queue. In that case, the SNS topic ARN would be compared the ARN pattern specified here.
The endpoint pattern may optionally contain the multi-character wildcard (*) or the single-character wildcard (?). Each of the six colon-delimited components of the ARN is checked separately and each can include a wildcard.
Policy policy = new Policy("MyQueuePolicy"); policy.withStatements(new Statement("AllowSNSMessages", Effect.Allow) .withPrincipals(new Principal("*")).withActions(SQSActions.SendMessage) .withResources(new Resource(myQueueArn)) .withConditions(ConditionFactory.newSourceArnCondition(myTopicArn)));
arnPattern
- The ARN pattern against which the source ARN will be
compared. Each of the six colon-delimited components of the
ARN is checked separately and each can include a wildcard.public static Condition newSecureTransportCondition()
public static Condition newUserAgentCondition(StringCondition.StringComparisonType comparisonType, java.lang.String value)
comparisonType
- The type of string comparison to perform when
testing an incoming request's user agent field with the
specified value.value
- The value against which to compare the incoming request's
user agent.public static Condition newRefererCondition(StringCondition.StringComparisonType comparisonType, java.lang.String value)
comparisonType
- The type of string comparison to perform when
testing an incoming request's referer field with the specified
value.value
- The value against which to compare the incoming request's
referer field.Copyright © 2018 Amazon Web Services, Inc. All Rights Reserved.