wafv3

package
v3.55.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 30, 2024 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type DefenseTemplate added in v3.50.0

type DefenseTemplate struct {
	pulumi.CustomResourceState

	// The module to which the protection rule that you want to create belongs. Value:
	// - **waf_group**: the basic protection rule module.
	// - **antiscan**: the scan protection module.
	// - **ip_blacklist**: the IP address blacklist module.
	// - **custom_acl**: the custom rule module.
	// - **whitelist**: the whitelist module.
	// - **region_block**: the region blacklist module.
	// - **custom_response**: the custom response module.
	// - **cc**: the HTTP flood protection module.
	// - **tamperproof**: the website tamper-proofing module.
	// - **dlp**: the data leakage prevention module.
	DefenseScene pulumi.StringOutput `pulumi:"defenseScene"`
	// Template ID.
	DefenseTemplateId pulumi.IntOutput `pulumi:"defenseTemplateId"`
	// The name of the protection rule template.
	DefenseTemplateName pulumi.StringOutput `pulumi:"defenseTemplateName"`
	// The description of the protection rule template. .
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The ID of the Web Application Firewall (WAF) instance. .
	InstanceId pulumi.StringOutput `pulumi:"instanceId"`
	// The ID of the Alibaba Cloud resource group. .
	ResourceManagerResourceGroupId pulumi.StringPtrOutput `pulumi:"resourceManagerResourceGroupId"`
	// The status of the protection rule template. Valid values:
	// - **0**: disabled.
	// - **1**: enabled.
	Status pulumi.StringOutput `pulumi:"status"`
	// The origin of the protection rule template that you want to create. Set the value to **custom**. The value specifies that the protection rule template is a custom template. .
	TemplateOrigin pulumi.StringOutput `pulumi:"templateOrigin"`
	// The type of the protection rule template. Valid values:
	// - **user_default:** default template.
	// - **user_custom:** custom template.
	TemplateType pulumi.StringOutput `pulumi:"templateType"`
}

Provides a WAFV3 Defense Template resource.

For information about WAFV3 Defense Template and how to use it, see [What is Defense Template](https://www.alibabacloud.com/help/en/web-application-firewall/latest/api-waf-openapi-2021-10-01-createdefensetemplate).

> **NOTE:** Available since v1.218.0.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/wafv3"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		name := "terraform-example"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		_default, err := wafv3.GetInstances(ctx, nil, nil)
		if err != nil {
			return err
		}
		_, err = wafv3.NewDefenseTemplate(ctx, "default", &wafv3.DefenseTemplateArgs{
			Status:                         pulumi.String("1"),
			InstanceId:                     pulumi.String(_default.Ids[0]),
			DefenseTemplateName:            pulumi.String(name),
			TemplateType:                   pulumi.String("user_custom"),
			TemplateOrigin:                 pulumi.String("custom"),
			DefenseScene:                   pulumi.String("antiscan"),
			ResourceManagerResourceGroupId: pulumi.String("example"),
			Description:                    pulumi.String(name),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

WAFV3 Defense Template can be imported using the id, e.g.

```sh $ pulumi import alicloud:wafv3/defenseTemplate:DefenseTemplate example <instance_id>:<defense_template_id> ```

func GetDefenseTemplate added in v3.50.0

func GetDefenseTemplate(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DefenseTemplateState, opts ...pulumi.ResourceOption) (*DefenseTemplate, error)

GetDefenseTemplate gets an existing DefenseTemplate resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewDefenseTemplate added in v3.50.0

func NewDefenseTemplate(ctx *pulumi.Context,
	name string, args *DefenseTemplateArgs, opts ...pulumi.ResourceOption) (*DefenseTemplate, error)

NewDefenseTemplate registers a new resource with the given unique name, arguments, and options.

func (*DefenseTemplate) ElementType added in v3.50.0

func (*DefenseTemplate) ElementType() reflect.Type

func (*DefenseTemplate) ToDefenseTemplateOutput added in v3.50.0

func (i *DefenseTemplate) ToDefenseTemplateOutput() DefenseTemplateOutput

func (*DefenseTemplate) ToDefenseTemplateOutputWithContext added in v3.50.0

func (i *DefenseTemplate) ToDefenseTemplateOutputWithContext(ctx context.Context) DefenseTemplateOutput

type DefenseTemplateArgs added in v3.50.0

type DefenseTemplateArgs struct {
	// The module to which the protection rule that you want to create belongs. Value:
	// - **waf_group**: the basic protection rule module.
	// - **antiscan**: the scan protection module.
	// - **ip_blacklist**: the IP address blacklist module.
	// - **custom_acl**: the custom rule module.
	// - **whitelist**: the whitelist module.
	// - **region_block**: the region blacklist module.
	// - **custom_response**: the custom response module.
	// - **cc**: the HTTP flood protection module.
	// - **tamperproof**: the website tamper-proofing module.
	// - **dlp**: the data leakage prevention module.
	DefenseScene pulumi.StringInput
	// The name of the protection rule template.
	DefenseTemplateName pulumi.StringInput
	// The description of the protection rule template. .
	Description pulumi.StringPtrInput
	// The ID of the Web Application Firewall (WAF) instance. .
	InstanceId pulumi.StringInput
	// The ID of the Alibaba Cloud resource group. .
	ResourceManagerResourceGroupId pulumi.StringPtrInput
	// The status of the protection rule template. Valid values:
	// - **0**: disabled.
	// - **1**: enabled.
	Status pulumi.StringInput
	// The origin of the protection rule template that you want to create. Set the value to **custom**. The value specifies that the protection rule template is a custom template. .
	TemplateOrigin pulumi.StringInput
	// The type of the protection rule template. Valid values:
	// - **user_default:** default template.
	// - **user_custom:** custom template.
	TemplateType pulumi.StringInput
}

The set of arguments for constructing a DefenseTemplate resource.

func (DefenseTemplateArgs) ElementType added in v3.50.0

func (DefenseTemplateArgs) ElementType() reflect.Type

type DefenseTemplateArray added in v3.50.0

type DefenseTemplateArray []DefenseTemplateInput

func (DefenseTemplateArray) ElementType added in v3.50.0

func (DefenseTemplateArray) ElementType() reflect.Type

func (DefenseTemplateArray) ToDefenseTemplateArrayOutput added in v3.50.0

func (i DefenseTemplateArray) ToDefenseTemplateArrayOutput() DefenseTemplateArrayOutput

func (DefenseTemplateArray) ToDefenseTemplateArrayOutputWithContext added in v3.50.0

func (i DefenseTemplateArray) ToDefenseTemplateArrayOutputWithContext(ctx context.Context) DefenseTemplateArrayOutput

type DefenseTemplateArrayInput added in v3.50.0

type DefenseTemplateArrayInput interface {
	pulumi.Input

	ToDefenseTemplateArrayOutput() DefenseTemplateArrayOutput
	ToDefenseTemplateArrayOutputWithContext(context.Context) DefenseTemplateArrayOutput
}

DefenseTemplateArrayInput is an input type that accepts DefenseTemplateArray and DefenseTemplateArrayOutput values. You can construct a concrete instance of `DefenseTemplateArrayInput` via:

DefenseTemplateArray{ DefenseTemplateArgs{...} }

type DefenseTemplateArrayOutput added in v3.50.0

type DefenseTemplateArrayOutput struct{ *pulumi.OutputState }

func (DefenseTemplateArrayOutput) ElementType added in v3.50.0

func (DefenseTemplateArrayOutput) ElementType() reflect.Type

func (DefenseTemplateArrayOutput) Index added in v3.50.0

func (DefenseTemplateArrayOutput) ToDefenseTemplateArrayOutput added in v3.50.0

func (o DefenseTemplateArrayOutput) ToDefenseTemplateArrayOutput() DefenseTemplateArrayOutput

func (DefenseTemplateArrayOutput) ToDefenseTemplateArrayOutputWithContext added in v3.50.0

func (o DefenseTemplateArrayOutput) ToDefenseTemplateArrayOutputWithContext(ctx context.Context) DefenseTemplateArrayOutput

type DefenseTemplateInput added in v3.50.0

type DefenseTemplateInput interface {
	pulumi.Input

	ToDefenseTemplateOutput() DefenseTemplateOutput
	ToDefenseTemplateOutputWithContext(ctx context.Context) DefenseTemplateOutput
}

type DefenseTemplateMap added in v3.50.0

type DefenseTemplateMap map[string]DefenseTemplateInput

func (DefenseTemplateMap) ElementType added in v3.50.0

func (DefenseTemplateMap) ElementType() reflect.Type

func (DefenseTemplateMap) ToDefenseTemplateMapOutput added in v3.50.0

func (i DefenseTemplateMap) ToDefenseTemplateMapOutput() DefenseTemplateMapOutput

func (DefenseTemplateMap) ToDefenseTemplateMapOutputWithContext added in v3.50.0

func (i DefenseTemplateMap) ToDefenseTemplateMapOutputWithContext(ctx context.Context) DefenseTemplateMapOutput

type DefenseTemplateMapInput added in v3.50.0

type DefenseTemplateMapInput interface {
	pulumi.Input

	ToDefenseTemplateMapOutput() DefenseTemplateMapOutput
	ToDefenseTemplateMapOutputWithContext(context.Context) DefenseTemplateMapOutput
}

DefenseTemplateMapInput is an input type that accepts DefenseTemplateMap and DefenseTemplateMapOutput values. You can construct a concrete instance of `DefenseTemplateMapInput` via:

DefenseTemplateMap{ "key": DefenseTemplateArgs{...} }

type DefenseTemplateMapOutput added in v3.50.0

type DefenseTemplateMapOutput struct{ *pulumi.OutputState }

func (DefenseTemplateMapOutput) ElementType added in v3.50.0

func (DefenseTemplateMapOutput) ElementType() reflect.Type

func (DefenseTemplateMapOutput) MapIndex added in v3.50.0

func (DefenseTemplateMapOutput) ToDefenseTemplateMapOutput added in v3.50.0

func (o DefenseTemplateMapOutput) ToDefenseTemplateMapOutput() DefenseTemplateMapOutput

func (DefenseTemplateMapOutput) ToDefenseTemplateMapOutputWithContext added in v3.50.0

func (o DefenseTemplateMapOutput) ToDefenseTemplateMapOutputWithContext(ctx context.Context) DefenseTemplateMapOutput

type DefenseTemplateOutput added in v3.50.0

type DefenseTemplateOutput struct{ *pulumi.OutputState }

func (DefenseTemplateOutput) DefenseScene added in v3.50.0

func (o DefenseTemplateOutput) DefenseScene() pulumi.StringOutput

The module to which the protection rule that you want to create belongs. Value: - **waf_group**: the basic protection rule module. - **antiscan**: the scan protection module. - **ip_blacklist**: the IP address blacklist module. - **custom_acl**: the custom rule module. - **whitelist**: the whitelist module. - **region_block**: the region blacklist module. - **custom_response**: the custom response module. - **cc**: the HTTP flood protection module. - **tamperproof**: the website tamper-proofing module. - **dlp**: the data leakage prevention module.

func (DefenseTemplateOutput) DefenseTemplateId added in v3.50.0

func (o DefenseTemplateOutput) DefenseTemplateId() pulumi.IntOutput

Template ID.

func (DefenseTemplateOutput) DefenseTemplateName added in v3.50.0

func (o DefenseTemplateOutput) DefenseTemplateName() pulumi.StringOutput

The name of the protection rule template.

func (DefenseTemplateOutput) Description added in v3.50.0

The description of the protection rule template. .

func (DefenseTemplateOutput) ElementType added in v3.50.0

func (DefenseTemplateOutput) ElementType() reflect.Type

func (DefenseTemplateOutput) InstanceId added in v3.50.0

func (o DefenseTemplateOutput) InstanceId() pulumi.StringOutput

The ID of the Web Application Firewall (WAF) instance. .

func (DefenseTemplateOutput) ResourceManagerResourceGroupId added in v3.50.0

func (o DefenseTemplateOutput) ResourceManagerResourceGroupId() pulumi.StringPtrOutput

The ID of the Alibaba Cloud resource group. .

func (DefenseTemplateOutput) Status added in v3.50.0

The status of the protection rule template. Valid values: - **0**: disabled. - **1**: enabled.

func (DefenseTemplateOutput) TemplateOrigin added in v3.50.0

func (o DefenseTemplateOutput) TemplateOrigin() pulumi.StringOutput

The origin of the protection rule template that you want to create. Set the value to **custom**. The value specifies that the protection rule template is a custom template. .

func (DefenseTemplateOutput) TemplateType added in v3.50.0

func (o DefenseTemplateOutput) TemplateType() pulumi.StringOutput

The type of the protection rule template. Valid values: - **user_default:** default template. - **user_custom:** custom template.

func (DefenseTemplateOutput) ToDefenseTemplateOutput added in v3.50.0

func (o DefenseTemplateOutput) ToDefenseTemplateOutput() DefenseTemplateOutput

func (DefenseTemplateOutput) ToDefenseTemplateOutputWithContext added in v3.50.0

func (o DefenseTemplateOutput) ToDefenseTemplateOutputWithContext(ctx context.Context) DefenseTemplateOutput

type DefenseTemplateState added in v3.50.0

type DefenseTemplateState struct {
	// The module to which the protection rule that you want to create belongs. Value:
	// - **waf_group**: the basic protection rule module.
	// - **antiscan**: the scan protection module.
	// - **ip_blacklist**: the IP address blacklist module.
	// - **custom_acl**: the custom rule module.
	// - **whitelist**: the whitelist module.
	// - **region_block**: the region blacklist module.
	// - **custom_response**: the custom response module.
	// - **cc**: the HTTP flood protection module.
	// - **tamperproof**: the website tamper-proofing module.
	// - **dlp**: the data leakage prevention module.
	DefenseScene pulumi.StringPtrInput
	// Template ID.
	DefenseTemplateId pulumi.IntPtrInput
	// The name of the protection rule template.
	DefenseTemplateName pulumi.StringPtrInput
	// The description of the protection rule template. .
	Description pulumi.StringPtrInput
	// The ID of the Web Application Firewall (WAF) instance. .
	InstanceId pulumi.StringPtrInput
	// The ID of the Alibaba Cloud resource group. .
	ResourceManagerResourceGroupId pulumi.StringPtrInput
	// The status of the protection rule template. Valid values:
	// - **0**: disabled.
	// - **1**: enabled.
	Status pulumi.StringPtrInput
	// The origin of the protection rule template that you want to create. Set the value to **custom**. The value specifies that the protection rule template is a custom template. .
	TemplateOrigin pulumi.StringPtrInput
	// The type of the protection rule template. Valid values:
	// - **user_default:** default template.
	// - **user_custom:** custom template.
	TemplateType pulumi.StringPtrInput
}

func (DefenseTemplateState) ElementType added in v3.50.0

func (DefenseTemplateState) ElementType() reflect.Type

type Domain

type Domain struct {
	pulumi.CustomResourceState

	// The access type of the WAF instance. Value: **share** (default): CNAME access.
	AccessType pulumi.StringPtrOutput `pulumi:"accessType"`
	// The name of the domain name to query.
	Domain pulumi.StringOutput `pulumi:"domain"`
	// WAF instance ID
	InstanceId pulumi.StringOutput `pulumi:"instanceId"`
	// Configure listening information. See `listen` below.
	Listen DomainListenOutput `pulumi:"listen"`
	// Configure forwarding information. See `redirect` below.
	Redirect DomainRedirectOutput `pulumi:"redirect"`
	// The ID of the resource group.
	ResourceManagerResourceGroupId pulumi.StringOutput `pulumi:"resourceManagerResourceGroupId"`
	// The status of the resource.
	Status pulumi.StringOutput `pulumi:"status"`
}

Provides a Wafv3 Domain resource.

For information about Wafv3 Domain and how to use it, see [What is Domain](https://www.alibabacloud.com/help/en/web-application-firewall/latest/api-waf-openapi-2021-10-01-createdomain).

> **NOTE:** Available since v1.200.0.

## Import

Wafv3 Domain can be imported using the id, e.g.

```sh $ pulumi import alicloud:wafv3/domain:Domain example <instance_id>:<domain> ```

func GetDomain

func GetDomain(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DomainState, opts ...pulumi.ResourceOption) (*Domain, error)

GetDomain gets an existing Domain resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewDomain

func NewDomain(ctx *pulumi.Context,
	name string, args *DomainArgs, opts ...pulumi.ResourceOption) (*Domain, error)

NewDomain registers a new resource with the given unique name, arguments, and options.

func (*Domain) ElementType

func (*Domain) ElementType() reflect.Type

func (*Domain) ToDomainOutput

func (i *Domain) ToDomainOutput() DomainOutput

func (*Domain) ToDomainOutputWithContext

func (i *Domain) ToDomainOutputWithContext(ctx context.Context) DomainOutput

type DomainArgs

type DomainArgs struct {
	// The access type of the WAF instance. Value: **share** (default): CNAME access.
	AccessType pulumi.StringPtrInput
	// The name of the domain name to query.
	Domain pulumi.StringInput
	// WAF instance ID
	InstanceId pulumi.StringInput
	// Configure listening information. See `listen` below.
	Listen DomainListenInput
	// Configure forwarding information. See `redirect` below.
	Redirect DomainRedirectInput
}

The set of arguments for constructing a Domain resource.

func (DomainArgs) ElementType

func (DomainArgs) ElementType() reflect.Type

type DomainArray

type DomainArray []DomainInput

func (DomainArray) ElementType

func (DomainArray) ElementType() reflect.Type

func (DomainArray) ToDomainArrayOutput

func (i DomainArray) ToDomainArrayOutput() DomainArrayOutput

func (DomainArray) ToDomainArrayOutputWithContext

func (i DomainArray) ToDomainArrayOutputWithContext(ctx context.Context) DomainArrayOutput

type DomainArrayInput

type DomainArrayInput interface {
	pulumi.Input

	ToDomainArrayOutput() DomainArrayOutput
	ToDomainArrayOutputWithContext(context.Context) DomainArrayOutput
}

DomainArrayInput is an input type that accepts DomainArray and DomainArrayOutput values. You can construct a concrete instance of `DomainArrayInput` via:

DomainArray{ DomainArgs{...} }

type DomainArrayOutput

type DomainArrayOutput struct{ *pulumi.OutputState }

func (DomainArrayOutput) ElementType

func (DomainArrayOutput) ElementType() reflect.Type

func (DomainArrayOutput) Index

func (DomainArrayOutput) ToDomainArrayOutput

func (o DomainArrayOutput) ToDomainArrayOutput() DomainArrayOutput

func (DomainArrayOutput) ToDomainArrayOutputWithContext

func (o DomainArrayOutput) ToDomainArrayOutputWithContext(ctx context.Context) DomainArrayOutput

type DomainInput

type DomainInput interface {
	pulumi.Input

	ToDomainOutput() DomainOutput
	ToDomainOutputWithContext(ctx context.Context) DomainOutput
}

type DomainListen

type DomainListen struct {
	// The ID of the certificate to be added. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol).
	CertId *string `pulumi:"certId"`
	// The type of encryption suite to add. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol). Value:
	// - **1**: indicates that all encryption suites are added.
	// - **2**: indicates that a strong encryption package is added. You can select this value only if the value of **tls_version** is `tlsv1.2`.
	// - **99**: indicates that a custom encryption suite is added.
	CipherSuite *int `pulumi:"cipherSuite"`
	// The specific custom encryption suite to add.
	CustomCiphers []string `pulumi:"customCiphers"`
	// Whether TSL1.3 version is supported. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol). Value:
	// - **true**: indicates that TSL1.3 is supported.
	// - **false**: indicates that TSL1.3 is not supported.
	EnableTlsv3 *bool `pulumi:"enableTlsv3"`
	// Whether to enable exclusive IP address. This parameter is used only when the value of **ipv6_enabled** is **false** (indicating that IPv6 is not enabled) and the value of **protection_resource** is **share** (indicating that a shared cluster is used). Value:
	// - **true**: indicates that the exclusive IP address is enabled.
	// - **false** (default): indicates that exclusive IP address is not enabled.
	ExclusiveIp *bool `pulumi:"exclusiveIp"`
	// Whether to enable the forced jump of HTTPS. This parameter is used only when the value of `httpsPorts` is not empty (indicating that the domain name uses HTTPS protocol) and the value of httports is empty (indicating that the domain name does not use HTTP protocol). Value:
	// - **true**: indicates that HTTPS forced redirection is enabled.
	// - **false**: indicates that HTTPS forced redirection is not enabled.
	FocusHttps *bool `pulumi:"focusHttps"`
	// Whether to turn on http2. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol). Value:
	// - **true:** indicates that HTTP2 is enabled.
	// - **false** (default): indicates that HTTP2 is not enabled.
	Http2Enabled *bool `pulumi:"http2Enabled"`
	// The listening port of the HTTP protocol.
	HttpPorts []int `pulumi:"httpPorts"`
	// The listening port of the HTTPS protocol.
	HttpsPorts []int `pulumi:"httpsPorts"`
	// Whether IPv6 is turned on. Value:
	// - **true**: indicates that IPv6 is enabled.
	// - **false** (default): indicates that IPv6 is not enabled.
	Ipv6Enabled *bool `pulumi:"ipv6Enabled"`
	// The type of protection resource to use. Value:
	// - **share** (default): indicates that a shared cluster is used.
	// - **gslb**: indicates that the shared cluster intelligent load balancing is used.
	ProtectionResource *string `pulumi:"protectionResource"`
	// The version of TLS to add. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol). Value: **tlsv1**, **tlsv1.1**, **tlsv1.2**.
	TlsVersion *string `pulumi:"tlsVersion"`
	// WAF obtains the real IP address of the client. Value:
	// - **0** (default): indicates that the client has not forwarded the traffic to WAF through other layer -7 agents.
	// - **1**: indicates that the first value of the X-Forwarded-For(XFF) field in the WAF read request header is used as the client IP address.
	// - **2**: indicates that the custom field value set by you in the WAF read request header is used as the client IP address.
	XffHeaderMode *int `pulumi:"xffHeaderMode"`
	// Set the list of custom fields used to obtain the client IP address.
	XffHeaders []string `pulumi:"xffHeaders"`
}

type DomainListenArgs

type DomainListenArgs struct {
	// The ID of the certificate to be added. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol).
	CertId pulumi.StringPtrInput `pulumi:"certId"`
	// The type of encryption suite to add. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol). Value:
	// - **1**: indicates that all encryption suites are added.
	// - **2**: indicates that a strong encryption package is added. You can select this value only if the value of **tls_version** is `tlsv1.2`.
	// - **99**: indicates that a custom encryption suite is added.
	CipherSuite pulumi.IntPtrInput `pulumi:"cipherSuite"`
	// The specific custom encryption suite to add.
	CustomCiphers pulumi.StringArrayInput `pulumi:"customCiphers"`
	// Whether TSL1.3 version is supported. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol). Value:
	// - **true**: indicates that TSL1.3 is supported.
	// - **false**: indicates that TSL1.3 is not supported.
	EnableTlsv3 pulumi.BoolPtrInput `pulumi:"enableTlsv3"`
	// Whether to enable exclusive IP address. This parameter is used only when the value of **ipv6_enabled** is **false** (indicating that IPv6 is not enabled) and the value of **protection_resource** is **share** (indicating that a shared cluster is used). Value:
	// - **true**: indicates that the exclusive IP address is enabled.
	// - **false** (default): indicates that exclusive IP address is not enabled.
	ExclusiveIp pulumi.BoolPtrInput `pulumi:"exclusiveIp"`
	// Whether to enable the forced jump of HTTPS. This parameter is used only when the value of `httpsPorts` is not empty (indicating that the domain name uses HTTPS protocol) and the value of httports is empty (indicating that the domain name does not use HTTP protocol). Value:
	// - **true**: indicates that HTTPS forced redirection is enabled.
	// - **false**: indicates that HTTPS forced redirection is not enabled.
	FocusHttps pulumi.BoolPtrInput `pulumi:"focusHttps"`
	// Whether to turn on http2. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol). Value:
	// - **true:** indicates that HTTP2 is enabled.
	// - **false** (default): indicates that HTTP2 is not enabled.
	Http2Enabled pulumi.BoolPtrInput `pulumi:"http2Enabled"`
	// The listening port of the HTTP protocol.
	HttpPorts pulumi.IntArrayInput `pulumi:"httpPorts"`
	// The listening port of the HTTPS protocol.
	HttpsPorts pulumi.IntArrayInput `pulumi:"httpsPorts"`
	// Whether IPv6 is turned on. Value:
	// - **true**: indicates that IPv6 is enabled.
	// - **false** (default): indicates that IPv6 is not enabled.
	Ipv6Enabled pulumi.BoolPtrInput `pulumi:"ipv6Enabled"`
	// The type of protection resource to use. Value:
	// - **share** (default): indicates that a shared cluster is used.
	// - **gslb**: indicates that the shared cluster intelligent load balancing is used.
	ProtectionResource pulumi.StringPtrInput `pulumi:"protectionResource"`
	// The version of TLS to add. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol). Value: **tlsv1**, **tlsv1.1**, **tlsv1.2**.
	TlsVersion pulumi.StringPtrInput `pulumi:"tlsVersion"`
	// WAF obtains the real IP address of the client. Value:
	// - **0** (default): indicates that the client has not forwarded the traffic to WAF through other layer -7 agents.
	// - **1**: indicates that the first value of the X-Forwarded-For(XFF) field in the WAF read request header is used as the client IP address.
	// - **2**: indicates that the custom field value set by you in the WAF read request header is used as the client IP address.
	XffHeaderMode pulumi.IntPtrInput `pulumi:"xffHeaderMode"`
	// Set the list of custom fields used to obtain the client IP address.
	XffHeaders pulumi.StringArrayInput `pulumi:"xffHeaders"`
}

func (DomainListenArgs) ElementType

func (DomainListenArgs) ElementType() reflect.Type

func (DomainListenArgs) ToDomainListenOutput

func (i DomainListenArgs) ToDomainListenOutput() DomainListenOutput

func (DomainListenArgs) ToDomainListenOutputWithContext

func (i DomainListenArgs) ToDomainListenOutputWithContext(ctx context.Context) DomainListenOutput

func (DomainListenArgs) ToDomainListenPtrOutput

func (i DomainListenArgs) ToDomainListenPtrOutput() DomainListenPtrOutput

func (DomainListenArgs) ToDomainListenPtrOutputWithContext

func (i DomainListenArgs) ToDomainListenPtrOutputWithContext(ctx context.Context) DomainListenPtrOutput

type DomainListenInput

type DomainListenInput interface {
	pulumi.Input

	ToDomainListenOutput() DomainListenOutput
	ToDomainListenOutputWithContext(context.Context) DomainListenOutput
}

DomainListenInput is an input type that accepts DomainListenArgs and DomainListenOutput values. You can construct a concrete instance of `DomainListenInput` via:

DomainListenArgs{...}

type DomainListenOutput

type DomainListenOutput struct{ *pulumi.OutputState }

func (DomainListenOutput) CertId

The ID of the certificate to be added. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol).

func (DomainListenOutput) CipherSuite

func (o DomainListenOutput) CipherSuite() pulumi.IntPtrOutput

The type of encryption suite to add. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol). Value: - **1**: indicates that all encryption suites are added. - **2**: indicates that a strong encryption package is added. You can select this value only if the value of **tls_version** is `tlsv1.2`. - **99**: indicates that a custom encryption suite is added.

func (DomainListenOutput) CustomCiphers

func (o DomainListenOutput) CustomCiphers() pulumi.StringArrayOutput

The specific custom encryption suite to add.

func (DomainListenOutput) ElementType

func (DomainListenOutput) ElementType() reflect.Type

func (DomainListenOutput) EnableTlsv3

func (o DomainListenOutput) EnableTlsv3() pulumi.BoolPtrOutput

Whether TSL1.3 version is supported. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol). Value: - **true**: indicates that TSL1.3 is supported. - **false**: indicates that TSL1.3 is not supported.

func (DomainListenOutput) ExclusiveIp

func (o DomainListenOutput) ExclusiveIp() pulumi.BoolPtrOutput

Whether to enable exclusive IP address. This parameter is used only when the value of **ipv6_enabled** is **false** (indicating that IPv6 is not enabled) and the value of **protection_resource** is **share** (indicating that a shared cluster is used). Value: - **true**: indicates that the exclusive IP address is enabled. - **false** (default): indicates that exclusive IP address is not enabled.

func (DomainListenOutput) FocusHttps

func (o DomainListenOutput) FocusHttps() pulumi.BoolPtrOutput

Whether to enable the forced jump of HTTPS. This parameter is used only when the value of `httpsPorts` is not empty (indicating that the domain name uses HTTPS protocol) and the value of httports is empty (indicating that the domain name does not use HTTP protocol). Value: - **true**: indicates that HTTPS forced redirection is enabled. - **false**: indicates that HTTPS forced redirection is not enabled.

func (DomainListenOutput) Http2Enabled

func (o DomainListenOutput) Http2Enabled() pulumi.BoolPtrOutput

Whether to turn on http2. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol). Value: - **true:** indicates that HTTP2 is enabled. - **false** (default): indicates that HTTP2 is not enabled.

func (DomainListenOutput) HttpPorts

The listening port of the HTTP protocol.

func (DomainListenOutput) HttpsPorts

func (o DomainListenOutput) HttpsPorts() pulumi.IntArrayOutput

The listening port of the HTTPS protocol.

func (DomainListenOutput) Ipv6Enabled

func (o DomainListenOutput) Ipv6Enabled() pulumi.BoolPtrOutput

Whether IPv6 is turned on. Value: - **true**: indicates that IPv6 is enabled. - **false** (default): indicates that IPv6 is not enabled.

func (DomainListenOutput) ProtectionResource

func (o DomainListenOutput) ProtectionResource() pulumi.StringPtrOutput

The type of protection resource to use. Value: - **share** (default): indicates that a shared cluster is used. - **gslb**: indicates that the shared cluster intelligent load balancing is used.

func (DomainListenOutput) TlsVersion

func (o DomainListenOutput) TlsVersion() pulumi.StringPtrOutput

The version of TLS to add. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol). Value: **tlsv1**, **tlsv1.1**, **tlsv1.2**.

func (DomainListenOutput) ToDomainListenOutput

func (o DomainListenOutput) ToDomainListenOutput() DomainListenOutput

func (DomainListenOutput) ToDomainListenOutputWithContext

func (o DomainListenOutput) ToDomainListenOutputWithContext(ctx context.Context) DomainListenOutput

func (DomainListenOutput) ToDomainListenPtrOutput

func (o DomainListenOutput) ToDomainListenPtrOutput() DomainListenPtrOutput

func (DomainListenOutput) ToDomainListenPtrOutputWithContext

func (o DomainListenOutput) ToDomainListenPtrOutputWithContext(ctx context.Context) DomainListenPtrOutput

func (DomainListenOutput) XffHeaderMode

func (o DomainListenOutput) XffHeaderMode() pulumi.IntPtrOutput

WAF obtains the real IP address of the client. Value: - **0** (default): indicates that the client has not forwarded the traffic to WAF through other layer -7 agents. - **1**: indicates that the first value of the X-Forwarded-For(XFF) field in the WAF read request header is used as the client IP address. - **2**: indicates that the custom field value set by you in the WAF read request header is used as the client IP address.

func (DomainListenOutput) XffHeaders

Set the list of custom fields used to obtain the client IP address.

type DomainListenPtrInput

type DomainListenPtrInput interface {
	pulumi.Input

	ToDomainListenPtrOutput() DomainListenPtrOutput
	ToDomainListenPtrOutputWithContext(context.Context) DomainListenPtrOutput
}

DomainListenPtrInput is an input type that accepts DomainListenArgs, DomainListenPtr and DomainListenPtrOutput values. You can construct a concrete instance of `DomainListenPtrInput` via:

        DomainListenArgs{...}

or:

        nil

type DomainListenPtrOutput

type DomainListenPtrOutput struct{ *pulumi.OutputState }

func (DomainListenPtrOutput) CertId

The ID of the certificate to be added. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol).

func (DomainListenPtrOutput) CipherSuite

func (o DomainListenPtrOutput) CipherSuite() pulumi.IntPtrOutput

The type of encryption suite to add. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol). Value: - **1**: indicates that all encryption suites are added. - **2**: indicates that a strong encryption package is added. You can select this value only if the value of **tls_version** is `tlsv1.2`. - **99**: indicates that a custom encryption suite is added.

func (DomainListenPtrOutput) CustomCiphers

The specific custom encryption suite to add.

func (DomainListenPtrOutput) Elem

func (DomainListenPtrOutput) ElementType

func (DomainListenPtrOutput) ElementType() reflect.Type

func (DomainListenPtrOutput) EnableTlsv3

func (o DomainListenPtrOutput) EnableTlsv3() pulumi.BoolPtrOutput

Whether TSL1.3 version is supported. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol). Value: - **true**: indicates that TSL1.3 is supported. - **false**: indicates that TSL1.3 is not supported.

func (DomainListenPtrOutput) ExclusiveIp

func (o DomainListenPtrOutput) ExclusiveIp() pulumi.BoolPtrOutput

Whether to enable exclusive IP address. This parameter is used only when the value of **ipv6_enabled** is **false** (indicating that IPv6 is not enabled) and the value of **protection_resource** is **share** (indicating that a shared cluster is used). Value: - **true**: indicates that the exclusive IP address is enabled. - **false** (default): indicates that exclusive IP address is not enabled.

func (DomainListenPtrOutput) FocusHttps

Whether to enable the forced jump of HTTPS. This parameter is used only when the value of `httpsPorts` is not empty (indicating that the domain name uses HTTPS protocol) and the value of httports is empty (indicating that the domain name does not use HTTP protocol). Value: - **true**: indicates that HTTPS forced redirection is enabled. - **false**: indicates that HTTPS forced redirection is not enabled.

func (DomainListenPtrOutput) Http2Enabled

func (o DomainListenPtrOutput) Http2Enabled() pulumi.BoolPtrOutput

Whether to turn on http2. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol). Value: - **true:** indicates that HTTP2 is enabled. - **false** (default): indicates that HTTP2 is not enabled.

func (DomainListenPtrOutput) HttpPorts

The listening port of the HTTP protocol.

func (DomainListenPtrOutput) HttpsPorts

The listening port of the HTTPS protocol.

func (DomainListenPtrOutput) Ipv6Enabled

func (o DomainListenPtrOutput) Ipv6Enabled() pulumi.BoolPtrOutput

Whether IPv6 is turned on. Value: - **true**: indicates that IPv6 is enabled. - **false** (default): indicates that IPv6 is not enabled.

func (DomainListenPtrOutput) ProtectionResource

func (o DomainListenPtrOutput) ProtectionResource() pulumi.StringPtrOutput

The type of protection resource to use. Value: - **share** (default): indicates that a shared cluster is used. - **gslb**: indicates that the shared cluster intelligent load balancing is used.

func (DomainListenPtrOutput) TlsVersion

The version of TLS to add. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol). Value: **tlsv1**, **tlsv1.1**, **tlsv1.2**.

func (DomainListenPtrOutput) ToDomainListenPtrOutput

func (o DomainListenPtrOutput) ToDomainListenPtrOutput() DomainListenPtrOutput

func (DomainListenPtrOutput) ToDomainListenPtrOutputWithContext

func (o DomainListenPtrOutput) ToDomainListenPtrOutputWithContext(ctx context.Context) DomainListenPtrOutput

func (DomainListenPtrOutput) XffHeaderMode

func (o DomainListenPtrOutput) XffHeaderMode() pulumi.IntPtrOutput

WAF obtains the real IP address of the client. Value: - **0** (default): indicates that the client has not forwarded the traffic to WAF through other layer -7 agents. - **1**: indicates that the first value of the X-Forwarded-For(XFF) field in the WAF read request header is used as the client IP address. - **2**: indicates that the custom field value set by you in the WAF read request header is used as the client IP address.

func (DomainListenPtrOutput) XffHeaders

Set the list of custom fields used to obtain the client IP address.

type DomainMap

type DomainMap map[string]DomainInput

func (DomainMap) ElementType

func (DomainMap) ElementType() reflect.Type

func (DomainMap) ToDomainMapOutput

func (i DomainMap) ToDomainMapOutput() DomainMapOutput

func (DomainMap) ToDomainMapOutputWithContext

func (i DomainMap) ToDomainMapOutputWithContext(ctx context.Context) DomainMapOutput

type DomainMapInput

type DomainMapInput interface {
	pulumi.Input

	ToDomainMapOutput() DomainMapOutput
	ToDomainMapOutputWithContext(context.Context) DomainMapOutput
}

DomainMapInput is an input type that accepts DomainMap and DomainMapOutput values. You can construct a concrete instance of `DomainMapInput` via:

DomainMap{ "key": DomainArgs{...} }

type DomainMapOutput

type DomainMapOutput struct{ *pulumi.OutputState }

func (DomainMapOutput) ElementType

func (DomainMapOutput) ElementType() reflect.Type

func (DomainMapOutput) MapIndex

func (DomainMapOutput) ToDomainMapOutput

func (o DomainMapOutput) ToDomainMapOutput() DomainMapOutput

func (DomainMapOutput) ToDomainMapOutputWithContext

func (o DomainMapOutput) ToDomainMapOutputWithContext(ctx context.Context) DomainMapOutput

type DomainOutput

type DomainOutput struct{ *pulumi.OutputState }

func (DomainOutput) AccessType

func (o DomainOutput) AccessType() pulumi.StringPtrOutput

The access type of the WAF instance. Value: **share** (default): CNAME access.

func (DomainOutput) Domain

func (o DomainOutput) Domain() pulumi.StringOutput

The name of the domain name to query.

func (DomainOutput) ElementType

func (DomainOutput) ElementType() reflect.Type

func (DomainOutput) InstanceId

func (o DomainOutput) InstanceId() pulumi.StringOutput

WAF instance ID

func (DomainOutput) Listen

func (o DomainOutput) Listen() DomainListenOutput

Configure listening information. See `listen` below.

func (DomainOutput) Redirect

func (o DomainOutput) Redirect() DomainRedirectOutput

Configure forwarding information. See `redirect` below.

func (DomainOutput) ResourceManagerResourceGroupId

func (o DomainOutput) ResourceManagerResourceGroupId() pulumi.StringOutput

The ID of the resource group.

func (DomainOutput) Status

func (o DomainOutput) Status() pulumi.StringOutput

The status of the resource.

func (DomainOutput) ToDomainOutput

func (o DomainOutput) ToDomainOutput() DomainOutput

func (DomainOutput) ToDomainOutputWithContext

func (o DomainOutput) ToDomainOutputWithContext(ctx context.Context) DomainOutput

type DomainRedirect

type DomainRedirect struct {
	// The IP address of the origin server corresponding to the domain name or the back-to-origin domain name of the server.
	Backends []string `pulumi:"backends"`
	// Connection timeout. Unit: seconds, value range: 5~120.
	ConnectTimeout *int `pulumi:"connectTimeout"`
	// Whether to enable forced HTTP back-to-origin. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol). Value:
	// - **true**: indicates that forced HTTP back-to-origin is enabled.
	// - **false**: indicates that forced HTTP back-to-origin is not enabled.
	FocusHttpBackend *bool `pulumi:"focusHttpBackend"`
	// Open long connection, default true.
	Keepalive *bool `pulumi:"keepalive"`
	// Number of long connections,  default: `60`. range :60-1000.
	KeepaliveRequests *int `pulumi:"keepaliveRequests"`
	// Long connection over time, default: `15`. Range: 1-60.
	KeepaliveTimeout *int `pulumi:"keepaliveTimeout"`
	// The load balancing algorithm used when returning to the source. Value:
	// - **iphash**: indicates the IPHash algorithm.
	// - **roundRobin**: indicates the polling algorithm.
	// - **leastTime**: indicates the Least Time algorithm.
	// - This value can be selected only if the value of **protection_resource** is **gslb** (indicating that the protected resource type uses shared cluster intelligent load balancing).
	Loadbalance string `pulumi:"loadbalance"`
	// Read timeout duration. **Unit**: seconds, **Value range**: 5~1800.
	ReadTimeout *int `pulumi:"readTimeout"`
	// The traffic tag field and value of the domain name which used to mark the traffic processed by WAF.
	// It formats as `[{" k ":"_key_"," v ":"_value_"}]`. Where the `k` represents the specified custom request header field,
	// and the `v` represents the value set for this field. By specifying the custom request header field and the corresponding value,
	// when the access traffic of the domain name passes through WAF, WAF automatically adds the specified custom field value
	// to the request header as the traffic mark, which is convenient for backend service statistics.Explain that if the
	// custom header field already exists in the request, the system will overwrite the value of the custom field in the
	// request with the set traffic tag value. See `requestHeaders` below.
	RequestHeaders []DomainRedirectRequestHeader `pulumi:"requestHeaders"`
	// Back to Source Retry. default: true, retry 3 times by default.
	Retry *bool `pulumi:"retry"`
	// Whether to enable back-to-source SNI. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol). Value:
	// - **true**: indicates that the back-to-source SNI is enabled.
	// - **false** (default) indicates that the back-to-source SNI is not enabled.
	SniEnabled *bool `pulumi:"sniEnabled"`
	// Sets the value of the custom SNI extension field. If this parameter is not set, the value of the **Host** field in the request header is used as the value of the SNI extension field by default.In general, you do not need to customize SNI unless your business has special configuration requirements. You want WAF to use SNI that is inconsistent with the actual request Host in the back-to-origin request (that is, the custom SNI set here).> This parameter is required only when **sni_enalbed** is set to **true** (indicating that back-to-source SNI is enabled).
	SniHost *string `pulumi:"sniHost"`
	// Write timeout duration> **Unit**: seconds, **Value range**: 5~1800.
	WriteTimeout *int `pulumi:"writeTimeout"`
}

type DomainRedirectArgs

type DomainRedirectArgs struct {
	// The IP address of the origin server corresponding to the domain name or the back-to-origin domain name of the server.
	Backends pulumi.StringArrayInput `pulumi:"backends"`
	// Connection timeout. Unit: seconds, value range: 5~120.
	ConnectTimeout pulumi.IntPtrInput `pulumi:"connectTimeout"`
	// Whether to enable forced HTTP back-to-origin. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol). Value:
	// - **true**: indicates that forced HTTP back-to-origin is enabled.
	// - **false**: indicates that forced HTTP back-to-origin is not enabled.
	FocusHttpBackend pulumi.BoolPtrInput `pulumi:"focusHttpBackend"`
	// Open long connection, default true.
	Keepalive pulumi.BoolPtrInput `pulumi:"keepalive"`
	// Number of long connections,  default: `60`. range :60-1000.
	KeepaliveRequests pulumi.IntPtrInput `pulumi:"keepaliveRequests"`
	// Long connection over time, default: `15`. Range: 1-60.
	KeepaliveTimeout pulumi.IntPtrInput `pulumi:"keepaliveTimeout"`
	// The load balancing algorithm used when returning to the source. Value:
	// - **iphash**: indicates the IPHash algorithm.
	// - **roundRobin**: indicates the polling algorithm.
	// - **leastTime**: indicates the Least Time algorithm.
	// - This value can be selected only if the value of **protection_resource** is **gslb** (indicating that the protected resource type uses shared cluster intelligent load balancing).
	Loadbalance pulumi.StringInput `pulumi:"loadbalance"`
	// Read timeout duration. **Unit**: seconds, **Value range**: 5~1800.
	ReadTimeout pulumi.IntPtrInput `pulumi:"readTimeout"`
	// The traffic tag field and value of the domain name which used to mark the traffic processed by WAF.
	// It formats as `[{" k ":"_key_"," v ":"_value_"}]`. Where the `k` represents the specified custom request header field,
	// and the `v` represents the value set for this field. By specifying the custom request header field and the corresponding value,
	// when the access traffic of the domain name passes through WAF, WAF automatically adds the specified custom field value
	// to the request header as the traffic mark, which is convenient for backend service statistics.Explain that if the
	// custom header field already exists in the request, the system will overwrite the value of the custom field in the
	// request with the set traffic tag value. See `requestHeaders` below.
	RequestHeaders DomainRedirectRequestHeaderArrayInput `pulumi:"requestHeaders"`
	// Back to Source Retry. default: true, retry 3 times by default.
	Retry pulumi.BoolPtrInput `pulumi:"retry"`
	// Whether to enable back-to-source SNI. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol). Value:
	// - **true**: indicates that the back-to-source SNI is enabled.
	// - **false** (default) indicates that the back-to-source SNI is not enabled.
	SniEnabled pulumi.BoolPtrInput `pulumi:"sniEnabled"`
	// Sets the value of the custom SNI extension field. If this parameter is not set, the value of the **Host** field in the request header is used as the value of the SNI extension field by default.In general, you do not need to customize SNI unless your business has special configuration requirements. You want WAF to use SNI that is inconsistent with the actual request Host in the back-to-origin request (that is, the custom SNI set here).> This parameter is required only when **sni_enalbed** is set to **true** (indicating that back-to-source SNI is enabled).
	SniHost pulumi.StringPtrInput `pulumi:"sniHost"`
	// Write timeout duration> **Unit**: seconds, **Value range**: 5~1800.
	WriteTimeout pulumi.IntPtrInput `pulumi:"writeTimeout"`
}

func (DomainRedirectArgs) ElementType

func (DomainRedirectArgs) ElementType() reflect.Type

func (DomainRedirectArgs) ToDomainRedirectOutput

func (i DomainRedirectArgs) ToDomainRedirectOutput() DomainRedirectOutput

func (DomainRedirectArgs) ToDomainRedirectOutputWithContext

func (i DomainRedirectArgs) ToDomainRedirectOutputWithContext(ctx context.Context) DomainRedirectOutput

func (DomainRedirectArgs) ToDomainRedirectPtrOutput

func (i DomainRedirectArgs) ToDomainRedirectPtrOutput() DomainRedirectPtrOutput

func (DomainRedirectArgs) ToDomainRedirectPtrOutputWithContext

func (i DomainRedirectArgs) ToDomainRedirectPtrOutputWithContext(ctx context.Context) DomainRedirectPtrOutput

type DomainRedirectInput

type DomainRedirectInput interface {
	pulumi.Input

	ToDomainRedirectOutput() DomainRedirectOutput
	ToDomainRedirectOutputWithContext(context.Context) DomainRedirectOutput
}

DomainRedirectInput is an input type that accepts DomainRedirectArgs and DomainRedirectOutput values. You can construct a concrete instance of `DomainRedirectInput` via:

DomainRedirectArgs{...}

type DomainRedirectOutput

type DomainRedirectOutput struct{ *pulumi.OutputState }

func (DomainRedirectOutput) Backends

The IP address of the origin server corresponding to the domain name or the back-to-origin domain name of the server.

func (DomainRedirectOutput) ConnectTimeout

func (o DomainRedirectOutput) ConnectTimeout() pulumi.IntPtrOutput

Connection timeout. Unit: seconds, value range: 5~120.

func (DomainRedirectOutput) ElementType

func (DomainRedirectOutput) ElementType() reflect.Type

func (DomainRedirectOutput) FocusHttpBackend

func (o DomainRedirectOutput) FocusHttpBackend() pulumi.BoolPtrOutput

Whether to enable forced HTTP back-to-origin. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol). Value: - **true**: indicates that forced HTTP back-to-origin is enabled. - **false**: indicates that forced HTTP back-to-origin is not enabled.

func (DomainRedirectOutput) Keepalive

Open long connection, default true.

func (DomainRedirectOutput) KeepaliveRequests

func (o DomainRedirectOutput) KeepaliveRequests() pulumi.IntPtrOutput

Number of long connections, default: `60`. range :60-1000.

func (DomainRedirectOutput) KeepaliveTimeout

func (o DomainRedirectOutput) KeepaliveTimeout() pulumi.IntPtrOutput

Long connection over time, default: `15`. Range: 1-60.

func (DomainRedirectOutput) Loadbalance

func (o DomainRedirectOutput) Loadbalance() pulumi.StringOutput

The load balancing algorithm used when returning to the source. Value: - **iphash**: indicates the IPHash algorithm. - **roundRobin**: indicates the polling algorithm. - **leastTime**: indicates the Least Time algorithm. - This value can be selected only if the value of **protection_resource** is **gslb** (indicating that the protected resource type uses shared cluster intelligent load balancing).

func (DomainRedirectOutput) ReadTimeout

func (o DomainRedirectOutput) ReadTimeout() pulumi.IntPtrOutput

Read timeout duration. **Unit**: seconds, **Value range**: 5~1800.

func (DomainRedirectOutput) RequestHeaders

The traffic tag field and value of the domain name which used to mark the traffic processed by WAF. It formats as `[{" k ":"_key_"," v ":"_value_"}]`. Where the `k` represents the specified custom request header field, and the `v` represents the value set for this field. By specifying the custom request header field and the corresponding value, when the access traffic of the domain name passes through WAF, WAF automatically adds the specified custom field value to the request header as the traffic mark, which is convenient for backend service statistics.Explain that if the custom header field already exists in the request, the system will overwrite the value of the custom field in the request with the set traffic tag value. See `requestHeaders` below.

func (DomainRedirectOutput) Retry

Back to Source Retry. default: true, retry 3 times by default.

func (DomainRedirectOutput) SniEnabled

func (o DomainRedirectOutput) SniEnabled() pulumi.BoolPtrOutput

Whether to enable back-to-source SNI. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol). Value: - **true**: indicates that the back-to-source SNI is enabled. - **false** (default) indicates that the back-to-source SNI is not enabled.

func (DomainRedirectOutput) SniHost

Sets the value of the custom SNI extension field. If this parameter is not set, the value of the **Host** field in the request header is used as the value of the SNI extension field by default.In general, you do not need to customize SNI unless your business has special configuration requirements. You want WAF to use SNI that is inconsistent with the actual request Host in the back-to-origin request (that is, the custom SNI set here).> This parameter is required only when **sni_enalbed** is set to **true** (indicating that back-to-source SNI is enabled).

func (DomainRedirectOutput) ToDomainRedirectOutput

func (o DomainRedirectOutput) ToDomainRedirectOutput() DomainRedirectOutput

func (DomainRedirectOutput) ToDomainRedirectOutputWithContext

func (o DomainRedirectOutput) ToDomainRedirectOutputWithContext(ctx context.Context) DomainRedirectOutput

func (DomainRedirectOutput) ToDomainRedirectPtrOutput

func (o DomainRedirectOutput) ToDomainRedirectPtrOutput() DomainRedirectPtrOutput

func (DomainRedirectOutput) ToDomainRedirectPtrOutputWithContext

func (o DomainRedirectOutput) ToDomainRedirectPtrOutputWithContext(ctx context.Context) DomainRedirectPtrOutput

func (DomainRedirectOutput) WriteTimeout

func (o DomainRedirectOutput) WriteTimeout() pulumi.IntPtrOutput

Write timeout duration> **Unit**: seconds, **Value range**: 5~1800.

type DomainRedirectPtrInput

type DomainRedirectPtrInput interface {
	pulumi.Input

	ToDomainRedirectPtrOutput() DomainRedirectPtrOutput
	ToDomainRedirectPtrOutputWithContext(context.Context) DomainRedirectPtrOutput
}

DomainRedirectPtrInput is an input type that accepts DomainRedirectArgs, DomainRedirectPtr and DomainRedirectPtrOutput values. You can construct a concrete instance of `DomainRedirectPtrInput` via:

        DomainRedirectArgs{...}

or:

        nil

type DomainRedirectPtrOutput

type DomainRedirectPtrOutput struct{ *pulumi.OutputState }

func (DomainRedirectPtrOutput) Backends

The IP address of the origin server corresponding to the domain name or the back-to-origin domain name of the server.

func (DomainRedirectPtrOutput) ConnectTimeout

func (o DomainRedirectPtrOutput) ConnectTimeout() pulumi.IntPtrOutput

Connection timeout. Unit: seconds, value range: 5~120.

func (DomainRedirectPtrOutput) Elem

func (DomainRedirectPtrOutput) ElementType

func (DomainRedirectPtrOutput) ElementType() reflect.Type

func (DomainRedirectPtrOutput) FocusHttpBackend

func (o DomainRedirectPtrOutput) FocusHttpBackend() pulumi.BoolPtrOutput

Whether to enable forced HTTP back-to-origin. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol). Value: - **true**: indicates that forced HTTP back-to-origin is enabled. - **false**: indicates that forced HTTP back-to-origin is not enabled.

func (DomainRedirectPtrOutput) Keepalive

Open long connection, default true.

func (DomainRedirectPtrOutput) KeepaliveRequests

func (o DomainRedirectPtrOutput) KeepaliveRequests() pulumi.IntPtrOutput

Number of long connections, default: `60`. range :60-1000.

func (DomainRedirectPtrOutput) KeepaliveTimeout

func (o DomainRedirectPtrOutput) KeepaliveTimeout() pulumi.IntPtrOutput

Long connection over time, default: `15`. Range: 1-60.

func (DomainRedirectPtrOutput) Loadbalance

The load balancing algorithm used when returning to the source. Value: - **iphash**: indicates the IPHash algorithm. - **roundRobin**: indicates the polling algorithm. - **leastTime**: indicates the Least Time algorithm. - This value can be selected only if the value of **protection_resource** is **gslb** (indicating that the protected resource type uses shared cluster intelligent load balancing).

func (DomainRedirectPtrOutput) ReadTimeout

Read timeout duration. **Unit**: seconds, **Value range**: 5~1800.

func (DomainRedirectPtrOutput) RequestHeaders

The traffic tag field and value of the domain name which used to mark the traffic processed by WAF. It formats as `[{" k ":"_key_"," v ":"_value_"}]`. Where the `k` represents the specified custom request header field, and the `v` represents the value set for this field. By specifying the custom request header field and the corresponding value, when the access traffic of the domain name passes through WAF, WAF automatically adds the specified custom field value to the request header as the traffic mark, which is convenient for backend service statistics.Explain that if the custom header field already exists in the request, the system will overwrite the value of the custom field in the request with the set traffic tag value. See `requestHeaders` below.

func (DomainRedirectPtrOutput) Retry

Back to Source Retry. default: true, retry 3 times by default.

func (DomainRedirectPtrOutput) SniEnabled

Whether to enable back-to-source SNI. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol). Value: - **true**: indicates that the back-to-source SNI is enabled. - **false** (default) indicates that the back-to-source SNI is not enabled.

func (DomainRedirectPtrOutput) SniHost

Sets the value of the custom SNI extension field. If this parameter is not set, the value of the **Host** field in the request header is used as the value of the SNI extension field by default.In general, you do not need to customize SNI unless your business has special configuration requirements. You want WAF to use SNI that is inconsistent with the actual request Host in the back-to-origin request (that is, the custom SNI set here).> This parameter is required only when **sni_enalbed** is set to **true** (indicating that back-to-source SNI is enabled).

func (DomainRedirectPtrOutput) ToDomainRedirectPtrOutput

func (o DomainRedirectPtrOutput) ToDomainRedirectPtrOutput() DomainRedirectPtrOutput

func (DomainRedirectPtrOutput) ToDomainRedirectPtrOutputWithContext

func (o DomainRedirectPtrOutput) ToDomainRedirectPtrOutputWithContext(ctx context.Context) DomainRedirectPtrOutput

func (DomainRedirectPtrOutput) WriteTimeout

func (o DomainRedirectPtrOutput) WriteTimeout() pulumi.IntPtrOutput

Write timeout duration> **Unit**: seconds, **Value range**: 5~1800.

type DomainRedirectRequestHeader

type DomainRedirectRequestHeader struct {
	Key   *string `pulumi:"key"`
	Value *string `pulumi:"value"`
}

type DomainRedirectRequestHeaderArgs

type DomainRedirectRequestHeaderArgs struct {
	Key   pulumi.StringPtrInput `pulumi:"key"`
	Value pulumi.StringPtrInput `pulumi:"value"`
}

func (DomainRedirectRequestHeaderArgs) ElementType

func (DomainRedirectRequestHeaderArgs) ToDomainRedirectRequestHeaderOutput

func (i DomainRedirectRequestHeaderArgs) ToDomainRedirectRequestHeaderOutput() DomainRedirectRequestHeaderOutput

func (DomainRedirectRequestHeaderArgs) ToDomainRedirectRequestHeaderOutputWithContext

func (i DomainRedirectRequestHeaderArgs) ToDomainRedirectRequestHeaderOutputWithContext(ctx context.Context) DomainRedirectRequestHeaderOutput

type DomainRedirectRequestHeaderArray

type DomainRedirectRequestHeaderArray []DomainRedirectRequestHeaderInput

func (DomainRedirectRequestHeaderArray) ElementType

func (DomainRedirectRequestHeaderArray) ToDomainRedirectRequestHeaderArrayOutput

func (i DomainRedirectRequestHeaderArray) ToDomainRedirectRequestHeaderArrayOutput() DomainRedirectRequestHeaderArrayOutput

func (DomainRedirectRequestHeaderArray) ToDomainRedirectRequestHeaderArrayOutputWithContext

func (i DomainRedirectRequestHeaderArray) ToDomainRedirectRequestHeaderArrayOutputWithContext(ctx context.Context) DomainRedirectRequestHeaderArrayOutput

type DomainRedirectRequestHeaderArrayInput

type DomainRedirectRequestHeaderArrayInput interface {
	pulumi.Input

	ToDomainRedirectRequestHeaderArrayOutput() DomainRedirectRequestHeaderArrayOutput
	ToDomainRedirectRequestHeaderArrayOutputWithContext(context.Context) DomainRedirectRequestHeaderArrayOutput
}

DomainRedirectRequestHeaderArrayInput is an input type that accepts DomainRedirectRequestHeaderArray and DomainRedirectRequestHeaderArrayOutput values. You can construct a concrete instance of `DomainRedirectRequestHeaderArrayInput` via:

DomainRedirectRequestHeaderArray{ DomainRedirectRequestHeaderArgs{...} }

type DomainRedirectRequestHeaderArrayOutput

type DomainRedirectRequestHeaderArrayOutput struct{ *pulumi.OutputState }

func (DomainRedirectRequestHeaderArrayOutput) ElementType

func (DomainRedirectRequestHeaderArrayOutput) Index

func (DomainRedirectRequestHeaderArrayOutput) ToDomainRedirectRequestHeaderArrayOutput

func (o DomainRedirectRequestHeaderArrayOutput) ToDomainRedirectRequestHeaderArrayOutput() DomainRedirectRequestHeaderArrayOutput

func (DomainRedirectRequestHeaderArrayOutput) ToDomainRedirectRequestHeaderArrayOutputWithContext

func (o DomainRedirectRequestHeaderArrayOutput) ToDomainRedirectRequestHeaderArrayOutputWithContext(ctx context.Context) DomainRedirectRequestHeaderArrayOutput

type DomainRedirectRequestHeaderInput

type DomainRedirectRequestHeaderInput interface {
	pulumi.Input

	ToDomainRedirectRequestHeaderOutput() DomainRedirectRequestHeaderOutput
	ToDomainRedirectRequestHeaderOutputWithContext(context.Context) DomainRedirectRequestHeaderOutput
}

DomainRedirectRequestHeaderInput is an input type that accepts DomainRedirectRequestHeaderArgs and DomainRedirectRequestHeaderOutput values. You can construct a concrete instance of `DomainRedirectRequestHeaderInput` via:

DomainRedirectRequestHeaderArgs{...}

type DomainRedirectRequestHeaderOutput

type DomainRedirectRequestHeaderOutput struct{ *pulumi.OutputState }

func (DomainRedirectRequestHeaderOutput) ElementType

func (DomainRedirectRequestHeaderOutput) Key

func (DomainRedirectRequestHeaderOutput) ToDomainRedirectRequestHeaderOutput

func (o DomainRedirectRequestHeaderOutput) ToDomainRedirectRequestHeaderOutput() DomainRedirectRequestHeaderOutput

func (DomainRedirectRequestHeaderOutput) ToDomainRedirectRequestHeaderOutputWithContext

func (o DomainRedirectRequestHeaderOutput) ToDomainRedirectRequestHeaderOutputWithContext(ctx context.Context) DomainRedirectRequestHeaderOutput

func (DomainRedirectRequestHeaderOutput) Value

type DomainState

type DomainState struct {
	// The access type of the WAF instance. Value: **share** (default): CNAME access.
	AccessType pulumi.StringPtrInput
	// The name of the domain name to query.
	Domain pulumi.StringPtrInput
	// WAF instance ID
	InstanceId pulumi.StringPtrInput
	// Configure listening information. See `listen` below.
	Listen DomainListenPtrInput
	// Configure forwarding information. See `redirect` below.
	Redirect DomainRedirectPtrInput
	// The ID of the resource group.
	ResourceManagerResourceGroupId pulumi.StringPtrInput
	// The status of the resource.
	Status pulumi.StringPtrInput
}

func (DomainState) ElementType

func (DomainState) ElementType() reflect.Type

type GetDomainsArgs

type GetDomainsArgs struct {
	// The address type of the origin server. The address can be an IP address or a domain name. You can specify only one type of address.
	Backend *string `pulumi:"backend"`
	// The name of the domain name to query.
	Domain *string `pulumi:"domain"`
	// Default to `false`. Set it to `true` can output more details about resource attributes.
	EnableDetails *bool `pulumi:"enableDetails"`
	// A list of domain IDs.
	Ids []string `pulumi:"ids"`
	// The WAF instance ID.
	InstanceId string `pulumi:"instanceId"`
	// File name where to save data source results (after running `pulumi preview`).
	OutputFile *string `pulumi:"outputFile"`
	PageNumber *int    `pulumi:"pageNumber"`
	PageSize   *int    `pulumi:"pageSize"`
}

A collection of arguments for invoking getDomains.

type GetDomainsDomain

type GetDomainsDomain struct {
	// The name of the domain name to query.
	Domain string `pulumi:"domain"`
	// The ID of the domain. It formats as `<instance_id>:<domain>`.
	Id string `pulumi:"id"`
	// Configure listening information
	Listens []GetDomainsDomainListen `pulumi:"listens"`
	// Configure forwarding information.
	Redirects []GetDomainsDomainRedirect `pulumi:"redirects"`
	// The ID of the resource group.
	ResourceManagerResourceGroupId string `pulumi:"resourceManagerResourceGroupId"`
	// The status of the domain.
	Status string `pulumi:"status"`
}

type GetDomainsDomainArgs

type GetDomainsDomainArgs struct {
	// The name of the domain name to query.
	Domain pulumi.StringInput `pulumi:"domain"`
	// The ID of the domain. It formats as `<instance_id>:<domain>`.
	Id pulumi.StringInput `pulumi:"id"`
	// Configure listening information
	Listens GetDomainsDomainListenArrayInput `pulumi:"listens"`
	// Configure forwarding information.
	Redirects GetDomainsDomainRedirectArrayInput `pulumi:"redirects"`
	// The ID of the resource group.
	ResourceManagerResourceGroupId pulumi.StringInput `pulumi:"resourceManagerResourceGroupId"`
	// The status of the domain.
	Status pulumi.StringInput `pulumi:"status"`
}

func (GetDomainsDomainArgs) ElementType

func (GetDomainsDomainArgs) ElementType() reflect.Type

func (GetDomainsDomainArgs) ToGetDomainsDomainOutput

func (i GetDomainsDomainArgs) ToGetDomainsDomainOutput() GetDomainsDomainOutput

func (GetDomainsDomainArgs) ToGetDomainsDomainOutputWithContext

func (i GetDomainsDomainArgs) ToGetDomainsDomainOutputWithContext(ctx context.Context) GetDomainsDomainOutput

type GetDomainsDomainArray

type GetDomainsDomainArray []GetDomainsDomainInput

func (GetDomainsDomainArray) ElementType

func (GetDomainsDomainArray) ElementType() reflect.Type

func (GetDomainsDomainArray) ToGetDomainsDomainArrayOutput

func (i GetDomainsDomainArray) ToGetDomainsDomainArrayOutput() GetDomainsDomainArrayOutput

func (GetDomainsDomainArray) ToGetDomainsDomainArrayOutputWithContext

func (i GetDomainsDomainArray) ToGetDomainsDomainArrayOutputWithContext(ctx context.Context) GetDomainsDomainArrayOutput

type GetDomainsDomainArrayInput

type GetDomainsDomainArrayInput interface {
	pulumi.Input

	ToGetDomainsDomainArrayOutput() GetDomainsDomainArrayOutput
	ToGetDomainsDomainArrayOutputWithContext(context.Context) GetDomainsDomainArrayOutput
}

GetDomainsDomainArrayInput is an input type that accepts GetDomainsDomainArray and GetDomainsDomainArrayOutput values. You can construct a concrete instance of `GetDomainsDomainArrayInput` via:

GetDomainsDomainArray{ GetDomainsDomainArgs{...} }

type GetDomainsDomainArrayOutput

type GetDomainsDomainArrayOutput struct{ *pulumi.OutputState }

func (GetDomainsDomainArrayOutput) ElementType

func (GetDomainsDomainArrayOutput) Index

func (GetDomainsDomainArrayOutput) ToGetDomainsDomainArrayOutput

func (o GetDomainsDomainArrayOutput) ToGetDomainsDomainArrayOutput() GetDomainsDomainArrayOutput

func (GetDomainsDomainArrayOutput) ToGetDomainsDomainArrayOutputWithContext

func (o GetDomainsDomainArrayOutput) ToGetDomainsDomainArrayOutputWithContext(ctx context.Context) GetDomainsDomainArrayOutput

type GetDomainsDomainInput

type GetDomainsDomainInput interface {
	pulumi.Input

	ToGetDomainsDomainOutput() GetDomainsDomainOutput
	ToGetDomainsDomainOutputWithContext(context.Context) GetDomainsDomainOutput
}

GetDomainsDomainInput is an input type that accepts GetDomainsDomainArgs and GetDomainsDomainOutput values. You can construct a concrete instance of `GetDomainsDomainInput` via:

GetDomainsDomainArgs{...}

type GetDomainsDomainListen

type GetDomainsDomainListen struct {
	// The ID of the certificate to be added. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol).
	CertId string `pulumi:"certId"`
	// The type of encryption suite to add. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol).
	CipherSuite int `pulumi:"cipherSuite"`
	// The specific custom encryption suite to add.
	CustomCiphers []string `pulumi:"customCiphers"`
	// Whether TSL1.3 version is supported. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol).
	EnableTlsv3 bool `pulumi:"enableTlsv3"`
	// Whether to enable exclusive IP address. This parameter is used only when the value of **ipv6_enabled** is **false** (indicating that IPv6 is not enabled) and the value of **protection_resource** is **share** (indicating that a shared cluster is used).
	ExclusiveIp bool `pulumi:"exclusiveIp"`
	// Whether to enable the forced jump of HTTPS. This parameter is used only when the value of `httpsPorts` is not empty (indicating that the domain name uses HTTPS protocol) and the value of httports is empty (indicating that the domain name does not use HTTP protocol).
	FocusHttps bool `pulumi:"focusHttps"`
	// Whether to turn on http2. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol).
	Http2Enabled bool `pulumi:"http2Enabled"`
	// The listening port of the HTTP protocol.
	HttpPorts []int `pulumi:"httpPorts"`
	// The listening port of the HTTPS protocol.
	HttpsPorts []int `pulumi:"httpsPorts"`
	// Whether IPv6 is turned on.
	Ipv6Enabled bool `pulumi:"ipv6Enabled"`
	// The type of protection resource to use.
	ProtectionResource string `pulumi:"protectionResource"`
	// The version of TLS to add. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol).
	TlsVersion string `pulumi:"tlsVersion"`
	// WAF obtains the real IP address of the client.
	XffHeaderMode int `pulumi:"xffHeaderMode"`
	// Set the list of custom fields used to obtain the client IP address.
	XffHeaders []string `pulumi:"xffHeaders"`
}

type GetDomainsDomainListenArgs

type GetDomainsDomainListenArgs struct {
	// The ID of the certificate to be added. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol).
	CertId pulumi.StringInput `pulumi:"certId"`
	// The type of encryption suite to add. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol).
	CipherSuite pulumi.IntInput `pulumi:"cipherSuite"`
	// The specific custom encryption suite to add.
	CustomCiphers pulumi.StringArrayInput `pulumi:"customCiphers"`
	// Whether TSL1.3 version is supported. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol).
	EnableTlsv3 pulumi.BoolInput `pulumi:"enableTlsv3"`
	// Whether to enable exclusive IP address. This parameter is used only when the value of **ipv6_enabled** is **false** (indicating that IPv6 is not enabled) and the value of **protection_resource** is **share** (indicating that a shared cluster is used).
	ExclusiveIp pulumi.BoolInput `pulumi:"exclusiveIp"`
	// Whether to enable the forced jump of HTTPS. This parameter is used only when the value of `httpsPorts` is not empty (indicating that the domain name uses HTTPS protocol) and the value of httports is empty (indicating that the domain name does not use HTTP protocol).
	FocusHttps pulumi.BoolInput `pulumi:"focusHttps"`
	// Whether to turn on http2. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol).
	Http2Enabled pulumi.BoolInput `pulumi:"http2Enabled"`
	// The listening port of the HTTP protocol.
	HttpPorts pulumi.IntArrayInput `pulumi:"httpPorts"`
	// The listening port of the HTTPS protocol.
	HttpsPorts pulumi.IntArrayInput `pulumi:"httpsPorts"`
	// Whether IPv6 is turned on.
	Ipv6Enabled pulumi.BoolInput `pulumi:"ipv6Enabled"`
	// The type of protection resource to use.
	ProtectionResource pulumi.StringInput `pulumi:"protectionResource"`
	// The version of TLS to add. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol).
	TlsVersion pulumi.StringInput `pulumi:"tlsVersion"`
	// WAF obtains the real IP address of the client.
	XffHeaderMode pulumi.IntInput `pulumi:"xffHeaderMode"`
	// Set the list of custom fields used to obtain the client IP address.
	XffHeaders pulumi.StringArrayInput `pulumi:"xffHeaders"`
}

func (GetDomainsDomainListenArgs) ElementType

func (GetDomainsDomainListenArgs) ElementType() reflect.Type

func (GetDomainsDomainListenArgs) ToGetDomainsDomainListenOutput

func (i GetDomainsDomainListenArgs) ToGetDomainsDomainListenOutput() GetDomainsDomainListenOutput

func (GetDomainsDomainListenArgs) ToGetDomainsDomainListenOutputWithContext

func (i GetDomainsDomainListenArgs) ToGetDomainsDomainListenOutputWithContext(ctx context.Context) GetDomainsDomainListenOutput

type GetDomainsDomainListenArray

type GetDomainsDomainListenArray []GetDomainsDomainListenInput

func (GetDomainsDomainListenArray) ElementType

func (GetDomainsDomainListenArray) ToGetDomainsDomainListenArrayOutput

func (i GetDomainsDomainListenArray) ToGetDomainsDomainListenArrayOutput() GetDomainsDomainListenArrayOutput

func (GetDomainsDomainListenArray) ToGetDomainsDomainListenArrayOutputWithContext

func (i GetDomainsDomainListenArray) ToGetDomainsDomainListenArrayOutputWithContext(ctx context.Context) GetDomainsDomainListenArrayOutput

type GetDomainsDomainListenArrayInput

type GetDomainsDomainListenArrayInput interface {
	pulumi.Input

	ToGetDomainsDomainListenArrayOutput() GetDomainsDomainListenArrayOutput
	ToGetDomainsDomainListenArrayOutputWithContext(context.Context) GetDomainsDomainListenArrayOutput
}

GetDomainsDomainListenArrayInput is an input type that accepts GetDomainsDomainListenArray and GetDomainsDomainListenArrayOutput values. You can construct a concrete instance of `GetDomainsDomainListenArrayInput` via:

GetDomainsDomainListenArray{ GetDomainsDomainListenArgs{...} }

type GetDomainsDomainListenArrayOutput

type GetDomainsDomainListenArrayOutput struct{ *pulumi.OutputState }

func (GetDomainsDomainListenArrayOutput) ElementType

func (GetDomainsDomainListenArrayOutput) Index

func (GetDomainsDomainListenArrayOutput) ToGetDomainsDomainListenArrayOutput

func (o GetDomainsDomainListenArrayOutput) ToGetDomainsDomainListenArrayOutput() GetDomainsDomainListenArrayOutput

func (GetDomainsDomainListenArrayOutput) ToGetDomainsDomainListenArrayOutputWithContext

func (o GetDomainsDomainListenArrayOutput) ToGetDomainsDomainListenArrayOutputWithContext(ctx context.Context) GetDomainsDomainListenArrayOutput

type GetDomainsDomainListenInput

type GetDomainsDomainListenInput interface {
	pulumi.Input

	ToGetDomainsDomainListenOutput() GetDomainsDomainListenOutput
	ToGetDomainsDomainListenOutputWithContext(context.Context) GetDomainsDomainListenOutput
}

GetDomainsDomainListenInput is an input type that accepts GetDomainsDomainListenArgs and GetDomainsDomainListenOutput values. You can construct a concrete instance of `GetDomainsDomainListenInput` via:

GetDomainsDomainListenArgs{...}

type GetDomainsDomainListenOutput

type GetDomainsDomainListenOutput struct{ *pulumi.OutputState }

func (GetDomainsDomainListenOutput) CertId

The ID of the certificate to be added. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol).

func (GetDomainsDomainListenOutput) CipherSuite

The type of encryption suite to add. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol).

func (GetDomainsDomainListenOutput) CustomCiphers

The specific custom encryption suite to add.

func (GetDomainsDomainListenOutput) ElementType

func (GetDomainsDomainListenOutput) EnableTlsv3

Whether TSL1.3 version is supported. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol).

func (GetDomainsDomainListenOutput) ExclusiveIp

Whether to enable exclusive IP address. This parameter is used only when the value of **ipv6_enabled** is **false** (indicating that IPv6 is not enabled) and the value of **protection_resource** is **share** (indicating that a shared cluster is used).

func (GetDomainsDomainListenOutput) FocusHttps

Whether to enable the forced jump of HTTPS. This parameter is used only when the value of `httpsPorts` is not empty (indicating that the domain name uses HTTPS protocol) and the value of httports is empty (indicating that the domain name does not use HTTP protocol).

func (GetDomainsDomainListenOutput) Http2Enabled

Whether to turn on http2. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol).

func (GetDomainsDomainListenOutput) HttpPorts

The listening port of the HTTP protocol.

func (GetDomainsDomainListenOutput) HttpsPorts

The listening port of the HTTPS protocol.

func (GetDomainsDomainListenOutput) Ipv6Enabled

Whether IPv6 is turned on.

func (GetDomainsDomainListenOutput) ProtectionResource

func (o GetDomainsDomainListenOutput) ProtectionResource() pulumi.StringOutput

The type of protection resource to use.

func (GetDomainsDomainListenOutput) TlsVersion

The version of TLS to add. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol).

func (GetDomainsDomainListenOutput) ToGetDomainsDomainListenOutput

func (o GetDomainsDomainListenOutput) ToGetDomainsDomainListenOutput() GetDomainsDomainListenOutput

func (GetDomainsDomainListenOutput) ToGetDomainsDomainListenOutputWithContext

func (o GetDomainsDomainListenOutput) ToGetDomainsDomainListenOutputWithContext(ctx context.Context) GetDomainsDomainListenOutput

func (GetDomainsDomainListenOutput) XffHeaderMode

func (o GetDomainsDomainListenOutput) XffHeaderMode() pulumi.IntOutput

WAF obtains the real IP address of the client.

func (GetDomainsDomainListenOutput) XffHeaders

Set the list of custom fields used to obtain the client IP address.

type GetDomainsDomainOutput

type GetDomainsDomainOutput struct{ *pulumi.OutputState }

func (GetDomainsDomainOutput) Domain

The name of the domain name to query.

func (GetDomainsDomainOutput) ElementType

func (GetDomainsDomainOutput) ElementType() reflect.Type

func (GetDomainsDomainOutput) Id

The ID of the domain. It formats as `<instance_id>:<domain>`.

func (GetDomainsDomainOutput) Listens

Configure listening information

func (GetDomainsDomainOutput) Redirects

Configure forwarding information.

func (GetDomainsDomainOutput) ResourceManagerResourceGroupId

func (o GetDomainsDomainOutput) ResourceManagerResourceGroupId() pulumi.StringOutput

The ID of the resource group.

func (GetDomainsDomainOutput) Status

The status of the domain.

func (GetDomainsDomainOutput) ToGetDomainsDomainOutput

func (o GetDomainsDomainOutput) ToGetDomainsDomainOutput() GetDomainsDomainOutput

func (GetDomainsDomainOutput) ToGetDomainsDomainOutputWithContext

func (o GetDomainsDomainOutput) ToGetDomainsDomainOutputWithContext(ctx context.Context) GetDomainsDomainOutput

type GetDomainsDomainRedirect

type GetDomainsDomainRedirect struct {
	// The IP address of the origin server corresponding to the domain name or the back-to-origin domain name of the server.
	Backends []string `pulumi:"backends"`
	// Connection timeout, Unit: seconds, value range: 5~120.
	ConnectTimeout int `pulumi:"connectTimeout"`
	// Whether to enable forced HTTP back-to-origin. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol).
	FocusHttpBackend bool `pulumi:"focusHttpBackend"`
	// Open long connection, default true.
	Keepalive bool `pulumi:"keepalive"`
	// Number of long connections, default: `60`. range :60-1000.
	KeepaliveRequests int `pulumi:"keepaliveRequests"`
	// Long connection over time, default: `15`. Range: 1-60.
	KeepaliveTimeout int `pulumi:"keepaliveTimeout"`
	// The load balancing algorithm used when returning to the source.
	Loadbalance string `pulumi:"loadbalance"`
	// Read timeout duration. Unit: seconds, Value range: 5~1800.
	ReadTimeout int `pulumi:"readTimeout"`
	// The traffic tag field and value of the domain name, which is used to mark the traffic processed by WAF. the format of this parameter value is **[{" k ":"_key_"," v ":"_value_"}]**. whereKeyRepresents the specified custom request header field, andValueRepresents the value set for this field.By specifying the custom request header field and the corresponding value, when the access traffic of the domain name passes through WAF, WAF automatically adds the specified custom field value to the request header as the traffic mark, which is convenient for backend service statistics.Explain that if the custom header field already exists in the request, the system will overwrite the value of the custom field in the request with the set traffic tag value.
	RequestHeaders []GetDomainsDomainRedirectRequestHeader `pulumi:"requestHeaders"`
	// Back to Source Retry. default `true`, retry 3 times by default.
	Retry bool `pulumi:"retry"`
	// Whether to enable back-to-source SNI. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol).
	SniEnabled bool `pulumi:"sniEnabled"`
	// Sets the value of the custom SNI extension field. If this parameter is not set, the value of the **Host** field in the request header is used as the value of the SNI extension field by default.In general, you do not need to customize SNI unless your business has special configuration requirements. You want WAF to use SNI that is inconsistent with the actual request Host in the back-to-origin request (that is, the custom SNI set here).> This parameter is required only when **sni_enalbed** is set to **true** (indicating that back-to-source SNI is enabled).
	SniHost string `pulumi:"sniHost"`
	// Write timeout duration. **Unit**: seconds, **Value range**:5~1800.
	WriteTimeout int `pulumi:"writeTimeout"`
}

type GetDomainsDomainRedirectArgs

type GetDomainsDomainRedirectArgs struct {
	// The IP address of the origin server corresponding to the domain name or the back-to-origin domain name of the server.
	Backends pulumi.StringArrayInput `pulumi:"backends"`
	// Connection timeout, Unit: seconds, value range: 5~120.
	ConnectTimeout pulumi.IntInput `pulumi:"connectTimeout"`
	// Whether to enable forced HTTP back-to-origin. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol).
	FocusHttpBackend pulumi.BoolInput `pulumi:"focusHttpBackend"`
	// Open long connection, default true.
	Keepalive pulumi.BoolInput `pulumi:"keepalive"`
	// Number of long connections, default: `60`. range :60-1000.
	KeepaliveRequests pulumi.IntInput `pulumi:"keepaliveRequests"`
	// Long connection over time, default: `15`. Range: 1-60.
	KeepaliveTimeout pulumi.IntInput `pulumi:"keepaliveTimeout"`
	// The load balancing algorithm used when returning to the source.
	Loadbalance pulumi.StringInput `pulumi:"loadbalance"`
	// Read timeout duration. Unit: seconds, Value range: 5~1800.
	ReadTimeout pulumi.IntInput `pulumi:"readTimeout"`
	// The traffic tag field and value of the domain name, which is used to mark the traffic processed by WAF. the format of this parameter value is **[{" k ":"_key_"," v ":"_value_"}]**. whereKeyRepresents the specified custom request header field, andValueRepresents the value set for this field.By specifying the custom request header field and the corresponding value, when the access traffic of the domain name passes through WAF, WAF automatically adds the specified custom field value to the request header as the traffic mark, which is convenient for backend service statistics.Explain that if the custom header field already exists in the request, the system will overwrite the value of the custom field in the request with the set traffic tag value.
	RequestHeaders GetDomainsDomainRedirectRequestHeaderArrayInput `pulumi:"requestHeaders"`
	// Back to Source Retry. default `true`, retry 3 times by default.
	Retry pulumi.BoolInput `pulumi:"retry"`
	// Whether to enable back-to-source SNI. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol).
	SniEnabled pulumi.BoolInput `pulumi:"sniEnabled"`
	// Sets the value of the custom SNI extension field. If this parameter is not set, the value of the **Host** field in the request header is used as the value of the SNI extension field by default.In general, you do not need to customize SNI unless your business has special configuration requirements. You want WAF to use SNI that is inconsistent with the actual request Host in the back-to-origin request (that is, the custom SNI set here).> This parameter is required only when **sni_enalbed** is set to **true** (indicating that back-to-source SNI is enabled).
	SniHost pulumi.StringInput `pulumi:"sniHost"`
	// Write timeout duration. **Unit**: seconds, **Value range**:5~1800.
	WriteTimeout pulumi.IntInput `pulumi:"writeTimeout"`
}

func (GetDomainsDomainRedirectArgs) ElementType

func (GetDomainsDomainRedirectArgs) ToGetDomainsDomainRedirectOutput

func (i GetDomainsDomainRedirectArgs) ToGetDomainsDomainRedirectOutput() GetDomainsDomainRedirectOutput

func (GetDomainsDomainRedirectArgs) ToGetDomainsDomainRedirectOutputWithContext

func (i GetDomainsDomainRedirectArgs) ToGetDomainsDomainRedirectOutputWithContext(ctx context.Context) GetDomainsDomainRedirectOutput

type GetDomainsDomainRedirectArray

type GetDomainsDomainRedirectArray []GetDomainsDomainRedirectInput

func (GetDomainsDomainRedirectArray) ElementType

func (GetDomainsDomainRedirectArray) ToGetDomainsDomainRedirectArrayOutput

func (i GetDomainsDomainRedirectArray) ToGetDomainsDomainRedirectArrayOutput() GetDomainsDomainRedirectArrayOutput

func (GetDomainsDomainRedirectArray) ToGetDomainsDomainRedirectArrayOutputWithContext

func (i GetDomainsDomainRedirectArray) ToGetDomainsDomainRedirectArrayOutputWithContext(ctx context.Context) GetDomainsDomainRedirectArrayOutput

type GetDomainsDomainRedirectArrayInput

type GetDomainsDomainRedirectArrayInput interface {
	pulumi.Input

	ToGetDomainsDomainRedirectArrayOutput() GetDomainsDomainRedirectArrayOutput
	ToGetDomainsDomainRedirectArrayOutputWithContext(context.Context) GetDomainsDomainRedirectArrayOutput
}

GetDomainsDomainRedirectArrayInput is an input type that accepts GetDomainsDomainRedirectArray and GetDomainsDomainRedirectArrayOutput values. You can construct a concrete instance of `GetDomainsDomainRedirectArrayInput` via:

GetDomainsDomainRedirectArray{ GetDomainsDomainRedirectArgs{...} }

type GetDomainsDomainRedirectArrayOutput

type GetDomainsDomainRedirectArrayOutput struct{ *pulumi.OutputState }

func (GetDomainsDomainRedirectArrayOutput) ElementType

func (GetDomainsDomainRedirectArrayOutput) Index

func (GetDomainsDomainRedirectArrayOutput) ToGetDomainsDomainRedirectArrayOutput

func (o GetDomainsDomainRedirectArrayOutput) ToGetDomainsDomainRedirectArrayOutput() GetDomainsDomainRedirectArrayOutput

func (GetDomainsDomainRedirectArrayOutput) ToGetDomainsDomainRedirectArrayOutputWithContext

func (o GetDomainsDomainRedirectArrayOutput) ToGetDomainsDomainRedirectArrayOutputWithContext(ctx context.Context) GetDomainsDomainRedirectArrayOutput

type GetDomainsDomainRedirectInput

type GetDomainsDomainRedirectInput interface {
	pulumi.Input

	ToGetDomainsDomainRedirectOutput() GetDomainsDomainRedirectOutput
	ToGetDomainsDomainRedirectOutputWithContext(context.Context) GetDomainsDomainRedirectOutput
}

GetDomainsDomainRedirectInput is an input type that accepts GetDomainsDomainRedirectArgs and GetDomainsDomainRedirectOutput values. You can construct a concrete instance of `GetDomainsDomainRedirectInput` via:

GetDomainsDomainRedirectArgs{...}

type GetDomainsDomainRedirectOutput

type GetDomainsDomainRedirectOutput struct{ *pulumi.OutputState }

func (GetDomainsDomainRedirectOutput) Backends

The IP address of the origin server corresponding to the domain name or the back-to-origin domain name of the server.

func (GetDomainsDomainRedirectOutput) ConnectTimeout

func (o GetDomainsDomainRedirectOutput) ConnectTimeout() pulumi.IntOutput

Connection timeout, Unit: seconds, value range: 5~120.

func (GetDomainsDomainRedirectOutput) ElementType

func (GetDomainsDomainRedirectOutput) FocusHttpBackend

func (o GetDomainsDomainRedirectOutput) FocusHttpBackend() pulumi.BoolOutput

Whether to enable forced HTTP back-to-origin. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol).

func (GetDomainsDomainRedirectOutput) Keepalive

Open long connection, default true.

func (GetDomainsDomainRedirectOutput) KeepaliveRequests

func (o GetDomainsDomainRedirectOutput) KeepaliveRequests() pulumi.IntOutput

Number of long connections, default: `60`. range :60-1000.

func (GetDomainsDomainRedirectOutput) KeepaliveTimeout

func (o GetDomainsDomainRedirectOutput) KeepaliveTimeout() pulumi.IntOutput

Long connection over time, default: `15`. Range: 1-60.

func (GetDomainsDomainRedirectOutput) Loadbalance

The load balancing algorithm used when returning to the source.

func (GetDomainsDomainRedirectOutput) ReadTimeout

Read timeout duration. Unit: seconds, Value range: 5~1800.

func (GetDomainsDomainRedirectOutput) RequestHeaders

The traffic tag field and value of the domain name, which is used to mark the traffic processed by WAF. the format of this parameter value is **[{" k ":"_key_"," v ":"_value_"}]**. whereKeyRepresents the specified custom request header field, andValueRepresents the value set for this field.By specifying the custom request header field and the corresponding value, when the access traffic of the domain name passes through WAF, WAF automatically adds the specified custom field value to the request header as the traffic mark, which is convenient for backend service statistics.Explain that if the custom header field already exists in the request, the system will overwrite the value of the custom field in the request with the set traffic tag value.

func (GetDomainsDomainRedirectOutput) Retry

Back to Source Retry. default `true`, retry 3 times by default.

func (GetDomainsDomainRedirectOutput) SniEnabled

Whether to enable back-to-source SNI. This parameter is used only if the value of **https_ports** is not empty (indicating that the domain name uses the HTTPS protocol).

func (GetDomainsDomainRedirectOutput) SniHost

Sets the value of the custom SNI extension field. If this parameter is not set, the value of the **Host** field in the request header is used as the value of the SNI extension field by default.In general, you do not need to customize SNI unless your business has special configuration requirements. You want WAF to use SNI that is inconsistent with the actual request Host in the back-to-origin request (that is, the custom SNI set here).> This parameter is required only when **sni_enalbed** is set to **true** (indicating that back-to-source SNI is enabled).

func (GetDomainsDomainRedirectOutput) ToGetDomainsDomainRedirectOutput

func (o GetDomainsDomainRedirectOutput) ToGetDomainsDomainRedirectOutput() GetDomainsDomainRedirectOutput

func (GetDomainsDomainRedirectOutput) ToGetDomainsDomainRedirectOutputWithContext

func (o GetDomainsDomainRedirectOutput) ToGetDomainsDomainRedirectOutputWithContext(ctx context.Context) GetDomainsDomainRedirectOutput

func (GetDomainsDomainRedirectOutput) WriteTimeout

Write timeout duration. **Unit**: seconds, **Value range**:5~1800.

type GetDomainsDomainRedirectRequestHeader

type GetDomainsDomainRedirectRequestHeader struct {
	// The traffic tag field and value of the domain name, which is used to mark the traffic processed by WAF. the format of this parameter value is **[{" k ":"_key_"," v ":"_value_"}]**. whereKeyRepresents the specified custom request header field, andValueRepresents the value set for this field.By specifying the custom request header field and the corresponding value, when the access traffic of the domain name passes through WAF, WAF automatically adds the specified custom field value to the request header as the traffic mark, which is convenient for backend service statistics.Explain that if the custom header field already exists in the request, the system will overwrite the value of the custom field in the request with the set traffic tag value.
	Key string `pulumi:"key"`
	// The traffic tag field and value of the domain name, which is used to mark the traffic processed by WAF. the format of this parameter value is **[{" k ":"_key_"," v ":"_value_"}]**. whereKeyRepresents the specified custom request header field, andValueRepresents the value set for this field.By specifying the custom request header field and the corresponding value, when the access traffic of the domain name passes through WAF, WAF automatically adds the specified custom field value to the request header as the traffic mark, which is convenient for backend service statistics.Explain that if the custom header field already exists in the request, the system will overwrite the value of the custom field in the request with the set traffic tag value.
	Value string `pulumi:"value"`
}

type GetDomainsDomainRedirectRequestHeaderArgs

type GetDomainsDomainRedirectRequestHeaderArgs struct {
	// The traffic tag field and value of the domain name, which is used to mark the traffic processed by WAF. the format of this parameter value is **[{" k ":"_key_"," v ":"_value_"}]**. whereKeyRepresents the specified custom request header field, andValueRepresents the value set for this field.By specifying the custom request header field and the corresponding value, when the access traffic of the domain name passes through WAF, WAF automatically adds the specified custom field value to the request header as the traffic mark, which is convenient for backend service statistics.Explain that if the custom header field already exists in the request, the system will overwrite the value of the custom field in the request with the set traffic tag value.
	Key pulumi.StringInput `pulumi:"key"`
	// The traffic tag field and value of the domain name, which is used to mark the traffic processed by WAF. the format of this parameter value is **[{" k ":"_key_"," v ":"_value_"}]**. whereKeyRepresents the specified custom request header field, andValueRepresents the value set for this field.By specifying the custom request header field and the corresponding value, when the access traffic of the domain name passes through WAF, WAF automatically adds the specified custom field value to the request header as the traffic mark, which is convenient for backend service statistics.Explain that if the custom header field already exists in the request, the system will overwrite the value of the custom field in the request with the set traffic tag value.
	Value pulumi.StringInput `pulumi:"value"`
}

func (GetDomainsDomainRedirectRequestHeaderArgs) ElementType

func (GetDomainsDomainRedirectRequestHeaderArgs) ToGetDomainsDomainRedirectRequestHeaderOutput

func (i GetDomainsDomainRedirectRequestHeaderArgs) ToGetDomainsDomainRedirectRequestHeaderOutput() GetDomainsDomainRedirectRequestHeaderOutput

func (GetDomainsDomainRedirectRequestHeaderArgs) ToGetDomainsDomainRedirectRequestHeaderOutputWithContext

func (i GetDomainsDomainRedirectRequestHeaderArgs) ToGetDomainsDomainRedirectRequestHeaderOutputWithContext(ctx context.Context) GetDomainsDomainRedirectRequestHeaderOutput

type GetDomainsDomainRedirectRequestHeaderArray

type GetDomainsDomainRedirectRequestHeaderArray []GetDomainsDomainRedirectRequestHeaderInput

func (GetDomainsDomainRedirectRequestHeaderArray) ElementType

func (GetDomainsDomainRedirectRequestHeaderArray) ToGetDomainsDomainRedirectRequestHeaderArrayOutput

func (i GetDomainsDomainRedirectRequestHeaderArray) ToGetDomainsDomainRedirectRequestHeaderArrayOutput() GetDomainsDomainRedirectRequestHeaderArrayOutput

func (GetDomainsDomainRedirectRequestHeaderArray) ToGetDomainsDomainRedirectRequestHeaderArrayOutputWithContext

func (i GetDomainsDomainRedirectRequestHeaderArray) ToGetDomainsDomainRedirectRequestHeaderArrayOutputWithContext(ctx context.Context) GetDomainsDomainRedirectRequestHeaderArrayOutput

type GetDomainsDomainRedirectRequestHeaderArrayInput

type GetDomainsDomainRedirectRequestHeaderArrayInput interface {
	pulumi.Input

	ToGetDomainsDomainRedirectRequestHeaderArrayOutput() GetDomainsDomainRedirectRequestHeaderArrayOutput
	ToGetDomainsDomainRedirectRequestHeaderArrayOutputWithContext(context.Context) GetDomainsDomainRedirectRequestHeaderArrayOutput
}

GetDomainsDomainRedirectRequestHeaderArrayInput is an input type that accepts GetDomainsDomainRedirectRequestHeaderArray and GetDomainsDomainRedirectRequestHeaderArrayOutput values. You can construct a concrete instance of `GetDomainsDomainRedirectRequestHeaderArrayInput` via:

GetDomainsDomainRedirectRequestHeaderArray{ GetDomainsDomainRedirectRequestHeaderArgs{...} }

type GetDomainsDomainRedirectRequestHeaderArrayOutput

type GetDomainsDomainRedirectRequestHeaderArrayOutput struct{ *pulumi.OutputState }

func (GetDomainsDomainRedirectRequestHeaderArrayOutput) ElementType

func (GetDomainsDomainRedirectRequestHeaderArrayOutput) Index

func (GetDomainsDomainRedirectRequestHeaderArrayOutput) ToGetDomainsDomainRedirectRequestHeaderArrayOutput

func (o GetDomainsDomainRedirectRequestHeaderArrayOutput) ToGetDomainsDomainRedirectRequestHeaderArrayOutput() GetDomainsDomainRedirectRequestHeaderArrayOutput

func (GetDomainsDomainRedirectRequestHeaderArrayOutput) ToGetDomainsDomainRedirectRequestHeaderArrayOutputWithContext

func (o GetDomainsDomainRedirectRequestHeaderArrayOutput) ToGetDomainsDomainRedirectRequestHeaderArrayOutputWithContext(ctx context.Context) GetDomainsDomainRedirectRequestHeaderArrayOutput

type GetDomainsDomainRedirectRequestHeaderInput

type GetDomainsDomainRedirectRequestHeaderInput interface {
	pulumi.Input

	ToGetDomainsDomainRedirectRequestHeaderOutput() GetDomainsDomainRedirectRequestHeaderOutput
	ToGetDomainsDomainRedirectRequestHeaderOutputWithContext(context.Context) GetDomainsDomainRedirectRequestHeaderOutput
}

GetDomainsDomainRedirectRequestHeaderInput is an input type that accepts GetDomainsDomainRedirectRequestHeaderArgs and GetDomainsDomainRedirectRequestHeaderOutput values. You can construct a concrete instance of `GetDomainsDomainRedirectRequestHeaderInput` via:

GetDomainsDomainRedirectRequestHeaderArgs{...}

type GetDomainsDomainRedirectRequestHeaderOutput

type GetDomainsDomainRedirectRequestHeaderOutput struct{ *pulumi.OutputState }

func (GetDomainsDomainRedirectRequestHeaderOutput) ElementType

func (GetDomainsDomainRedirectRequestHeaderOutput) Key

The traffic tag field and value of the domain name, which is used to mark the traffic processed by WAF. the format of this parameter value is **[{" k ":"_key_"," v ":"_value_"}]**. whereKeyRepresents the specified custom request header field, andValueRepresents the value set for this field.By specifying the custom request header field and the corresponding value, when the access traffic of the domain name passes through WAF, WAF automatically adds the specified custom field value to the request header as the traffic mark, which is convenient for backend service statistics.Explain that if the custom header field already exists in the request, the system will overwrite the value of the custom field in the request with the set traffic tag value.

func (GetDomainsDomainRedirectRequestHeaderOutput) ToGetDomainsDomainRedirectRequestHeaderOutput

func (o GetDomainsDomainRedirectRequestHeaderOutput) ToGetDomainsDomainRedirectRequestHeaderOutput() GetDomainsDomainRedirectRequestHeaderOutput

func (GetDomainsDomainRedirectRequestHeaderOutput) ToGetDomainsDomainRedirectRequestHeaderOutputWithContext

func (o GetDomainsDomainRedirectRequestHeaderOutput) ToGetDomainsDomainRedirectRequestHeaderOutputWithContext(ctx context.Context) GetDomainsDomainRedirectRequestHeaderOutput

func (GetDomainsDomainRedirectRequestHeaderOutput) Value

The traffic tag field and value of the domain name, which is used to mark the traffic processed by WAF. the format of this parameter value is **[{" k ":"_key_"," v ":"_value_"}]**. whereKeyRepresents the specified custom request header field, andValueRepresents the value set for this field.By specifying the custom request header field and the corresponding value, when the access traffic of the domain name passes through WAF, WAF automatically adds the specified custom field value to the request header as the traffic mark, which is convenient for backend service statistics.Explain that if the custom header field already exists in the request, the system will overwrite the value of the custom field in the request with the set traffic tag value.

type GetDomainsOutputArgs

type GetDomainsOutputArgs struct {
	// The address type of the origin server. The address can be an IP address or a domain name. You can specify only one type of address.
	Backend pulumi.StringPtrInput `pulumi:"backend"`
	// The name of the domain name to query.
	Domain pulumi.StringPtrInput `pulumi:"domain"`
	// Default to `false`. Set it to `true` can output more details about resource attributes.
	EnableDetails pulumi.BoolPtrInput `pulumi:"enableDetails"`
	// A list of domain IDs.
	Ids pulumi.StringArrayInput `pulumi:"ids"`
	// The WAF instance ID.
	InstanceId pulumi.StringInput `pulumi:"instanceId"`
	// File name where to save data source results (after running `pulumi preview`).
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
	PageNumber pulumi.IntPtrInput    `pulumi:"pageNumber"`
	PageSize   pulumi.IntPtrInput    `pulumi:"pageSize"`
}

A collection of arguments for invoking getDomains.

func (GetDomainsOutputArgs) ElementType

func (GetDomainsOutputArgs) ElementType() reflect.Type

type GetDomainsResult

type GetDomainsResult struct {
	Backend *string `pulumi:"backend"`
	// The name of the domain.
	Domain *string `pulumi:"domain"`
	// A list of Domain Entries. Each element contains the following attributes:
	Domains       []GetDomainsDomain `pulumi:"domains"`
	EnableDetails *bool              `pulumi:"enableDetails"`
	// The provider-assigned unique ID for this managed resource.
	Id         string   `pulumi:"id"`
	Ids        []string `pulumi:"ids"`
	InstanceId string   `pulumi:"instanceId"`
	OutputFile *string  `pulumi:"outputFile"`
	PageNumber *int     `pulumi:"pageNumber"`
	PageSize   *int     `pulumi:"pageSize"`
}

A collection of values returned by getDomains.

func GetDomains

func GetDomains(ctx *pulumi.Context, args *GetDomainsArgs, opts ...pulumi.InvokeOption) (*GetDomainsResult, error)

This data source provides the Wafv3 Domains of the current Alibaba Cloud user.

> **NOTE:** Available since v1.200.0.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/wafv3"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_default, err := wafv3.GetInstances(ctx, nil, nil)
		if err != nil {
			return err
		}
		ids, err := wafv3.GetDomains(ctx, &wafv3.GetDomainsArgs{
			InstanceId: _default.Ids[0],
			Ids: []string{
				"example_id",
			},
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("wafv3DomainsId1", ids.Domains[0].Id)
		defaultGetDomains, err := wafv3.GetDomains(ctx, &wafv3.GetDomainsArgs{
			InstanceId: _default.Ids[0],
			Domain:     pulumi.StringRef("zctest12.wafqax.top"),
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("wafv3DomainsId2", defaultGetDomains.Domains[0].Id)
		return nil
	})
}

```

type GetDomainsResultOutput

type GetDomainsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getDomains.

func (GetDomainsResultOutput) Backend

func (GetDomainsResultOutput) Domain

The name of the domain.

func (GetDomainsResultOutput) Domains

A list of Domain Entries. Each element contains the following attributes:

func (GetDomainsResultOutput) ElementType

func (GetDomainsResultOutput) ElementType() reflect.Type

func (GetDomainsResultOutput) EnableDetails

func (o GetDomainsResultOutput) EnableDetails() pulumi.BoolPtrOutput

func (GetDomainsResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetDomainsResultOutput) Ids

func (GetDomainsResultOutput) InstanceId

func (GetDomainsResultOutput) OutputFile

func (GetDomainsResultOutput) PageNumber

func (GetDomainsResultOutput) PageSize

func (GetDomainsResultOutput) ToGetDomainsResultOutput

func (o GetDomainsResultOutput) ToGetDomainsResultOutput() GetDomainsResultOutput

func (GetDomainsResultOutput) ToGetDomainsResultOutputWithContext

func (o GetDomainsResultOutput) ToGetDomainsResultOutputWithContext(ctx context.Context) GetDomainsResultOutput

type GetInstancesArgs

type GetInstancesArgs struct {
	// File name where to save data source results (after running `pulumi preview`).
	OutputFile *string `pulumi:"outputFile"`
}

A collection of arguments for invoking getInstances.

type GetInstancesInstance

type GetInstancesInstance struct {
	// The creation time of the resource.
	CreateTime string `pulumi:"createTime"`
	// The ID of the resource.
	Id string `pulumi:"id"`
	// The first ID of the resource.
	InstanceId string `pulumi:"instanceId"`
	// The status of the resource.
	Status string `pulumi:"status"`
}

type GetInstancesInstanceArgs

type GetInstancesInstanceArgs struct {
	// The creation time of the resource.
	CreateTime pulumi.StringInput `pulumi:"createTime"`
	// The ID of the resource.
	Id pulumi.StringInput `pulumi:"id"`
	// The first ID of the resource.
	InstanceId pulumi.StringInput `pulumi:"instanceId"`
	// The status of the resource.
	Status pulumi.StringInput `pulumi:"status"`
}

func (GetInstancesInstanceArgs) ElementType

func (GetInstancesInstanceArgs) ElementType() reflect.Type

func (GetInstancesInstanceArgs) ToGetInstancesInstanceOutput

func (i GetInstancesInstanceArgs) ToGetInstancesInstanceOutput() GetInstancesInstanceOutput

func (GetInstancesInstanceArgs) ToGetInstancesInstanceOutputWithContext

func (i GetInstancesInstanceArgs) ToGetInstancesInstanceOutputWithContext(ctx context.Context) GetInstancesInstanceOutput

type GetInstancesInstanceArray

type GetInstancesInstanceArray []GetInstancesInstanceInput

func (GetInstancesInstanceArray) ElementType

func (GetInstancesInstanceArray) ElementType() reflect.Type

func (GetInstancesInstanceArray) ToGetInstancesInstanceArrayOutput

func (i GetInstancesInstanceArray) ToGetInstancesInstanceArrayOutput() GetInstancesInstanceArrayOutput

func (GetInstancesInstanceArray) ToGetInstancesInstanceArrayOutputWithContext

func (i GetInstancesInstanceArray) ToGetInstancesInstanceArrayOutputWithContext(ctx context.Context) GetInstancesInstanceArrayOutput

type GetInstancesInstanceArrayInput

type GetInstancesInstanceArrayInput interface {
	pulumi.Input

	ToGetInstancesInstanceArrayOutput() GetInstancesInstanceArrayOutput
	ToGetInstancesInstanceArrayOutputWithContext(context.Context) GetInstancesInstanceArrayOutput
}

GetInstancesInstanceArrayInput is an input type that accepts GetInstancesInstanceArray and GetInstancesInstanceArrayOutput values. You can construct a concrete instance of `GetInstancesInstanceArrayInput` via:

GetInstancesInstanceArray{ GetInstancesInstanceArgs{...} }

type GetInstancesInstanceArrayOutput

type GetInstancesInstanceArrayOutput struct{ *pulumi.OutputState }

func (GetInstancesInstanceArrayOutput) ElementType

func (GetInstancesInstanceArrayOutput) Index

func (GetInstancesInstanceArrayOutput) ToGetInstancesInstanceArrayOutput

func (o GetInstancesInstanceArrayOutput) ToGetInstancesInstanceArrayOutput() GetInstancesInstanceArrayOutput

func (GetInstancesInstanceArrayOutput) ToGetInstancesInstanceArrayOutputWithContext

func (o GetInstancesInstanceArrayOutput) ToGetInstancesInstanceArrayOutputWithContext(ctx context.Context) GetInstancesInstanceArrayOutput

type GetInstancesInstanceInput

type GetInstancesInstanceInput interface {
	pulumi.Input

	ToGetInstancesInstanceOutput() GetInstancesInstanceOutput
	ToGetInstancesInstanceOutputWithContext(context.Context) GetInstancesInstanceOutput
}

GetInstancesInstanceInput is an input type that accepts GetInstancesInstanceArgs and GetInstancesInstanceOutput values. You can construct a concrete instance of `GetInstancesInstanceInput` via:

GetInstancesInstanceArgs{...}

type GetInstancesInstanceOutput

type GetInstancesInstanceOutput struct{ *pulumi.OutputState }

func (GetInstancesInstanceOutput) CreateTime

The creation time of the resource.

func (GetInstancesInstanceOutput) ElementType

func (GetInstancesInstanceOutput) ElementType() reflect.Type

func (GetInstancesInstanceOutput) Id

The ID of the resource.

func (GetInstancesInstanceOutput) InstanceId

The first ID of the resource.

func (GetInstancesInstanceOutput) Status

The status of the resource.

func (GetInstancesInstanceOutput) ToGetInstancesInstanceOutput

func (o GetInstancesInstanceOutput) ToGetInstancesInstanceOutput() GetInstancesInstanceOutput

func (GetInstancesInstanceOutput) ToGetInstancesInstanceOutputWithContext

func (o GetInstancesInstanceOutput) ToGetInstancesInstanceOutputWithContext(ctx context.Context) GetInstancesInstanceOutput

type GetInstancesOutputArgs

type GetInstancesOutputArgs struct {
	// File name where to save data source results (after running `pulumi preview`).
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
}

A collection of arguments for invoking getInstances.

func (GetInstancesOutputArgs) ElementType

func (GetInstancesOutputArgs) ElementType() reflect.Type

type GetInstancesResult

type GetInstancesResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A list of Instance IDs.
	Ids []string `pulumi:"ids"`
	// A list of Instance Entries. Each element contains the following attributes:
	Instances  []GetInstancesInstance `pulumi:"instances"`
	OutputFile *string                `pulumi:"outputFile"`
}

A collection of values returned by getInstances.

func GetInstances

func GetInstances(ctx *pulumi.Context, args *GetInstancesArgs, opts ...pulumi.InvokeOption) (*GetInstancesResult, error)

This data source provides Wafv3 Instance available to the user.[What is Instance](https://www.alibabacloud.com/help/en/web-application-firewall/latest/what-is-waf)

> **NOTE:** Available in 1.200.0+

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/wafv3"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_default, err := wafv3.GetInstances(ctx, nil, nil)
		if err != nil {
			return err
		}
		ctx.Export("alicloudWafv3InstanceExampleId", _default.Instances[0].Id)
		return nil
	})
}

```

type GetInstancesResultOutput

type GetInstancesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getInstances.

func (GetInstancesResultOutput) ElementType

func (GetInstancesResultOutput) ElementType() reflect.Type

func (GetInstancesResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetInstancesResultOutput) Ids

A list of Instance IDs.

func (GetInstancesResultOutput) Instances

A list of Instance Entries. Each element contains the following attributes:

func (GetInstancesResultOutput) OutputFile

func (GetInstancesResultOutput) ToGetInstancesResultOutput

func (o GetInstancesResultOutput) ToGetInstancesResultOutput() GetInstancesResultOutput

func (GetInstancesResultOutput) ToGetInstancesResultOutputWithContext

func (o GetInstancesResultOutput) ToGetInstancesResultOutputWithContext(ctx context.Context) GetInstancesResultOutput

type Instance

type Instance struct {
	pulumi.CustomResourceState

	// The creation time of the resource
	CreateTime pulumi.StringOutput `pulumi:"createTime"`
	// The first ID of the resource
	InstanceId pulumi.StringOutput `pulumi:"instanceId"`
	// The status of the resource
	Status pulumi.StringOutput `pulumi:"status"`
}

Provides a Wafv3 Instance resource.

For information about Wafv3 Instance and how to use it, see [What is Instance](https://www.alibabacloud.com/help/en/web-application-firewall/latest/what-is-waf).

> **NOTE:** Available in v1.200.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/wafv3"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := wafv3.NewInstance(ctx, "default", nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Wafv3 Instance can be imported using the id, e.g.

```sh $ pulumi import alicloud:wafv3/instance:Instance example <id> ```

func GetInstance

func GetInstance(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *InstanceState, opts ...pulumi.ResourceOption) (*Instance, error)

GetInstance gets an existing Instance resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewInstance

func NewInstance(ctx *pulumi.Context,
	name string, args *InstanceArgs, opts ...pulumi.ResourceOption) (*Instance, error)

NewInstance registers a new resource with the given unique name, arguments, and options.

func (*Instance) ElementType

func (*Instance) ElementType() reflect.Type

func (*Instance) ToInstanceOutput

func (i *Instance) ToInstanceOutput() InstanceOutput

func (*Instance) ToInstanceOutputWithContext

func (i *Instance) ToInstanceOutputWithContext(ctx context.Context) InstanceOutput

type InstanceArgs

type InstanceArgs struct {
}

The set of arguments for constructing a Instance resource.

func (InstanceArgs) ElementType

func (InstanceArgs) ElementType() reflect.Type

type InstanceArray

type InstanceArray []InstanceInput

func (InstanceArray) ElementType

func (InstanceArray) ElementType() reflect.Type

func (InstanceArray) ToInstanceArrayOutput

func (i InstanceArray) ToInstanceArrayOutput() InstanceArrayOutput

func (InstanceArray) ToInstanceArrayOutputWithContext

func (i InstanceArray) ToInstanceArrayOutputWithContext(ctx context.Context) InstanceArrayOutput

type InstanceArrayInput

type InstanceArrayInput interface {
	pulumi.Input

	ToInstanceArrayOutput() InstanceArrayOutput
	ToInstanceArrayOutputWithContext(context.Context) InstanceArrayOutput
}

InstanceArrayInput is an input type that accepts InstanceArray and InstanceArrayOutput values. You can construct a concrete instance of `InstanceArrayInput` via:

InstanceArray{ InstanceArgs{...} }

type InstanceArrayOutput

type InstanceArrayOutput struct{ *pulumi.OutputState }

func (InstanceArrayOutput) ElementType

func (InstanceArrayOutput) ElementType() reflect.Type

func (InstanceArrayOutput) Index

func (InstanceArrayOutput) ToInstanceArrayOutput

func (o InstanceArrayOutput) ToInstanceArrayOutput() InstanceArrayOutput

func (InstanceArrayOutput) ToInstanceArrayOutputWithContext

func (o InstanceArrayOutput) ToInstanceArrayOutputWithContext(ctx context.Context) InstanceArrayOutput

type InstanceInput

type InstanceInput interface {
	pulumi.Input

	ToInstanceOutput() InstanceOutput
	ToInstanceOutputWithContext(ctx context.Context) InstanceOutput
}

type InstanceMap

type InstanceMap map[string]InstanceInput

func (InstanceMap) ElementType

func (InstanceMap) ElementType() reflect.Type

func (InstanceMap) ToInstanceMapOutput

func (i InstanceMap) ToInstanceMapOutput() InstanceMapOutput

func (InstanceMap) ToInstanceMapOutputWithContext

func (i InstanceMap) ToInstanceMapOutputWithContext(ctx context.Context) InstanceMapOutput

type InstanceMapInput

type InstanceMapInput interface {
	pulumi.Input

	ToInstanceMapOutput() InstanceMapOutput
	ToInstanceMapOutputWithContext(context.Context) InstanceMapOutput
}

InstanceMapInput is an input type that accepts InstanceMap and InstanceMapOutput values. You can construct a concrete instance of `InstanceMapInput` via:

InstanceMap{ "key": InstanceArgs{...} }

type InstanceMapOutput

type InstanceMapOutput struct{ *pulumi.OutputState }

func (InstanceMapOutput) ElementType

func (InstanceMapOutput) ElementType() reflect.Type

func (InstanceMapOutput) MapIndex

func (InstanceMapOutput) ToInstanceMapOutput

func (o InstanceMapOutput) ToInstanceMapOutput() InstanceMapOutput

func (InstanceMapOutput) ToInstanceMapOutputWithContext

func (o InstanceMapOutput) ToInstanceMapOutputWithContext(ctx context.Context) InstanceMapOutput

type InstanceOutput

type InstanceOutput struct{ *pulumi.OutputState }

func (InstanceOutput) CreateTime

func (o InstanceOutput) CreateTime() pulumi.StringOutput

The creation time of the resource

func (InstanceOutput) ElementType

func (InstanceOutput) ElementType() reflect.Type

func (InstanceOutput) InstanceId

func (o InstanceOutput) InstanceId() pulumi.StringOutput

The first ID of the resource

func (InstanceOutput) Status

func (o InstanceOutput) Status() pulumi.StringOutput

The status of the resource

func (InstanceOutput) ToInstanceOutput

func (o InstanceOutput) ToInstanceOutput() InstanceOutput

func (InstanceOutput) ToInstanceOutputWithContext

func (o InstanceOutput) ToInstanceOutputWithContext(ctx context.Context) InstanceOutput

type InstanceState

type InstanceState struct {
	// The creation time of the resource
	CreateTime pulumi.StringPtrInput
	// The first ID of the resource
	InstanceId pulumi.StringPtrInput
	// The status of the resource
	Status pulumi.StringPtrInput
}

func (InstanceState) ElementType

func (InstanceState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL