Skip to content

WebRule

This class encapsulates and extends the ROS resource type ALIYUN::DDoSPro::WebRule.

Initializers

import com.aliyun.ros.cdk.ddospro.WebRule;
WebRule.Builder.create(Construct scope, java.lang.String id, java.lang.Boolean enableResourcePropertyConstraint)
    .domain(java.lang.String)
    .domain(IResolvable)
    .rsType(java.lang.Number)
    .rsType(IResolvable)
    .rules(java.lang.String)
    .rules(IResolvable)
//  .defenseId(java.lang.String)
//  .defenseId(IResolvable)
//  .httpsExt(java.lang.String)
//  .httpsExt(IResolvable)
//  .instanceIds(IResolvable)
//  .instanceIds(java.util.List<java.lang.String)
//  .instanceIds(IResolvable>)
//  .resourceGroupId(java.lang.String)
//  .resourceGroupId(IResolvable)
    .build();
Name Type Description
scope com.aliyun.ros.cdk.core.Construct No description.
id java.lang.String No description.
enableResourcePropertyConstraint java.lang.Boolean No description.
domain java.lang.String OR com.aliyun.ros.cdk.core.IResolvable Property domain: The domain name of the website that you want to add to the instance.
rsType java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable Property rsType: The address type of the origin server.
rules java.lang.String OR com.aliyun.ros.cdk.core.IResolvable Property rules: The details of the forwarding rule.
defenseId java.lang.String OR com.aliyun.ros.cdk.core.IResolvable Property defenseId: The ID of the associated defense.
httpsExt java.lang.String OR com.aliyun.ros.cdk.core.IResolvable Property httpsExt: The advanced HTTPS settings.
instanceIds com.aliyun.ros.cdk.core.IResolvable OR java.util.List Property instanceIds: An array consisting of the IDs of instances that you want to associate.
resourceGroupId java.lang.String OR com.aliyun.ros.cdk.core.IResolvable Property resourceGroupId: The ID of the resource group to which the instance belongs in Resource Management.

scopeRequired

  • Type: com.aliyun.ros.cdk.core.Construct

idRequired

  • Type: java.lang.String

enableResourcePropertyConstraintOptional

  • Type: java.lang.Boolean

domainRequired

  • Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable

Property domain: The domain name of the website that you want to add to the instance.


rsTypeRequired

  • Type: java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable

Property rsType: The address type of the origin server.

Valid values: 0: IP address 1: domain name The domain name of the origin server is returned if you deploy proxies, such as Web Application Firewall (WAF), between the origin server and the instance. In this case, the address of the proxy, such as the CNAME provided by WAF, is returned.


rulesRequired

  • Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable

Property rules: The details of the forwarding rule.

The value is a string that consists of JSON arrays. Each element in a JSON array is a JSON struct that contains the following fields: ProxyRules: the information about the origin server. The information includes the port number and IP address. This field is required and must be a JSON array. Each element in a JSON array is a JSON struct that contains the following fields: ProxyPort: the port number. This field is required and must be an integer; RealServers: the IP address. This field is required and must be a string array. ProxyType: the protocol type. This field is required and must be a string. Valid values: http, https, websocket, and websockets.


defenseIdOptional

  • Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable

Property defenseId: The ID of the associated defense.

This parameter applies to scenarios in which other cloud services, such as Object Storage Service (OSS), are integrated with Anti-DDoS Pro or Anti-DDoS Premium.


httpsExtOptional

  • Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable

Property httpsExt: The advanced HTTPS settings.

This parameter takes effect only when the value of the ProxyType parameter includes https. The value is a string that consists of a JSON struct. The JSON struct contains the following fields: Http2https: specifies whether to turn on Enforce HTTPS Routing. This field is optional and must be an integer. Valid values: 0 and 1. The value 0 indicates that Enforce HTTPS Routing is turned off. The value 1 indicates that Enforce HTTPS Routing is turned on. The default value is 0. If your website supports both HTTP and HTTPS, this feature meets your business requirements. If you enable this feature, all HTTP requests to access the website are redirected to HTTPS requests on the standard port 443. Https2http: specifies whether to turn on Enable HTTP. This field is optional and must be an integer. Valid values: 0 and 1. The value 0 indicates that Enable HTTP is turned off. The value 1 indicates that Enable HTTP is turned on. The default value is 0. If your website does not support HTTPS, this feature meets your business requirements If this feature is enabled, all HTTPS requests are redirected to HTTP requests and forwarded to origin servers. This feature can redirect WebSockets requests to WebSocket requests. Requests are redirected over the standard port 80. Http2: specifies whether to turn on Enable HTTP/2. This field is optional and must be an integer. Valid values: 0 and 1. The value 0 indicates that Enable HTTP/2 is turned off. The value 1 indicates that Enable HTTP/2 is turned on. The default value is 0. After you turn on Enable HTTP/2, the protocol type is HTTP/2.


instanceIdsOptional

  • Type: com.aliyun.ros.cdk.core.IResolvable OR java.util.List

Property instanceIds: An array consisting of the IDs of instances that you want to associate.


resourceGroupIdOptional

  • Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable

Property resourceGroupId: The ID of the resource group to which the instance belongs in Resource Management.

This parameter is empty by default, which indicates that the instance belongs to the default resource group.


Methods

Name Description
toString Returns a string representation of this construct.
synthesize Allows this construct to emit artifacts into the cloud assembly during synthesis.
addCondition No description.
addCount No description.
addDependency No description.
addResourceDesc No description.
applyRemovalPolicy No description.
getAtt No description.
setMetadata No description.

toString

public java.lang.String toString()

Returns a string representation of this construct.

synthesize

public void synthesize(ISynthesisSession session)

Allows this construct to emit artifacts into the cloud assembly during synthesis.

This method is usually implemented by framework-level constructs such as Stack and Asset as they participate in synthesizing the cloud assembly.

sessionRequired

  • Type: com.aliyun.ros.cdk.core.ISynthesisSession

The synthesis session.


addCondition

public void addCondition(RosCondition condition)

conditionRequired

  • Type: com.aliyun.ros.cdk.core.RosCondition

addCount

public void addCount(java.lang.Number OR IResolvable count)

countRequired

  • Type: java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable

addDependency

public void addDependency(Resource resource)

resourceRequired

  • Type: com.aliyun.ros.cdk.core.Resource

addResourceDesc

public void addResourceDesc(java.lang.String desc)

descRequired

  • Type: java.lang.String

applyRemovalPolicy

public void applyRemovalPolicy(RemovalPolicy policy)

policyRequired

  • Type: com.aliyun.ros.cdk.core.RemovalPolicy

getAtt

public IResolvable getAtt(java.lang.String name)

nameRequired

  • Type: java.lang.String

setMetadata

public void setMetadata(java.lang.String key, java.lang.Object value)

keyRequired

  • Type: java.lang.String

valueRequired

  • Type: java.lang.Object

Static Functions

Name Description
isConstruct Return whether the given object is a Construct.

isConstruct

import com.aliyun.ros.cdk.ddospro.WebRule;
WebRule.isConstruct(java.lang.Object x)

Return whether the given object is a Construct.

xRequired

  • Type: java.lang.Object

Properties

Name Type Description
node com.aliyun.ros.cdk.core.ConstructNode The construct tree node associated with this construct.
ref java.lang.String No description.
stack com.aliyun.ros.cdk.core.Stack The stack in which this resource is defined.
resource com.aliyun.ros.cdk.core.RosResource No description.
attrDomain com.aliyun.ros.cdk.core.IResolvable Attribute Domain: The domain name of the website that you want to add to the instance.

nodeRequired

public ConstructNode getNode();
  • Type: com.aliyun.ros.cdk.core.ConstructNode

The construct tree node associated with this construct.


refRequired

public java.lang.String getRef();
  • Type: java.lang.String

stackRequired

public Stack getStack();
  • Type: com.aliyun.ros.cdk.core.Stack

The stack in which this resource is defined.


resourceOptional

public RosResource getResource();
  • Type: com.aliyun.ros.cdk.core.RosResource

attrDomainRequired

public IResolvable getAttrDomain();
  • Type: com.aliyun.ros.cdk.core.IResolvable

Attribute Domain: The domain name of the website that you want to add to the instance.


Structs