waas

package
v1.33.0 Latest Latest
Warning

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

Go to latest
Published: Apr 25, 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 AddressList

type AddressList struct {
	pulumi.CustomResourceState

	// The total number of unique IP addresses in the address list.
	AddressCount pulumi.Float64Output `pulumi:"addressCount"`
	// (Updatable) A list of IP addresses or CIDR notations.
	Addresses pulumi.StringArrayOutput `pulumi:"addresses"`
	// (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment in which to create the address list.
	CompartmentId pulumi.StringOutput `pulumi:"compartmentId"`
	// (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Operations.CostCenter": "42"}`
	DefinedTags pulumi.MapOutput `pulumi:"definedTags"`
	// (Updatable) A user-friendly name for the address list.
	DisplayName pulumi.StringOutput `pulumi:"displayName"`
	// (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Department": "Finance"}`
	//
	// ** IMPORTANT **
	// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
	FreeformTags pulumi.MapOutput `pulumi:"freeformTags"`
	// The current lifecycle state of the address list.
	State pulumi.StringOutput `pulumi:"state"`
	// The date and time the address list was created, expressed in RFC 3339 timestamp format.
	TimeCreated pulumi.StringOutput `pulumi:"timeCreated"`
}

This resource provides the Address List resource in Oracle Cloud Infrastructure Web Application Acceleration and Security service.

Creates an address list in a set compartment and allows it to be used in a WAAS policy and referenced by access rules. Addresses can be IP addresses and CIDR notations.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-oci/sdk/go/oci/Waas"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Waas.NewAddressList(ctx, "test_address_list", &Waas.AddressListArgs{
			Addresses:     pulumi.Any(addressListAddresses),
			CompartmentId: pulumi.Any(compartmentId),
			DisplayName:   pulumi.Any(addressListDisplayName),
			DefinedTags: pulumi.Map{
				"Operations.CostCenter": pulumi.Any("42"),
			},
			FreeformTags: pulumi.Map{
				"Department": pulumi.Any("Finance"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

AddressLists can be imported using the `id`, e.g.

```sh $ pulumi import oci:Waas/addressList:AddressList test_address_list "id" ```

func GetAddressList

func GetAddressList(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AddressListState, opts ...pulumi.ResourceOption) (*AddressList, error)

GetAddressList gets an existing AddressList 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 NewAddressList

func NewAddressList(ctx *pulumi.Context,
	name string, args *AddressListArgs, opts ...pulumi.ResourceOption) (*AddressList, error)

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

func (*AddressList) ElementType

func (*AddressList) ElementType() reflect.Type

func (*AddressList) ToAddressListOutput

func (i *AddressList) ToAddressListOutput() AddressListOutput

func (*AddressList) ToAddressListOutputWithContext

func (i *AddressList) ToAddressListOutputWithContext(ctx context.Context) AddressListOutput

type AddressListArgs

type AddressListArgs struct {
	// (Updatable) A list of IP addresses or CIDR notations.
	Addresses pulumi.StringArrayInput
	// (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment in which to create the address list.
	CompartmentId pulumi.StringInput
	// (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Operations.CostCenter": "42"}`
	DefinedTags pulumi.MapInput
	// (Updatable) A user-friendly name for the address list.
	DisplayName pulumi.StringInput
	// (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Department": "Finance"}`
	//
	// ** IMPORTANT **
	// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
	FreeformTags pulumi.MapInput
}

The set of arguments for constructing a AddressList resource.

func (AddressListArgs) ElementType

func (AddressListArgs) ElementType() reflect.Type

type AddressListArray

type AddressListArray []AddressListInput

func (AddressListArray) ElementType

func (AddressListArray) ElementType() reflect.Type

func (AddressListArray) ToAddressListArrayOutput

func (i AddressListArray) ToAddressListArrayOutput() AddressListArrayOutput

func (AddressListArray) ToAddressListArrayOutputWithContext

func (i AddressListArray) ToAddressListArrayOutputWithContext(ctx context.Context) AddressListArrayOutput

type AddressListArrayInput

type AddressListArrayInput interface {
	pulumi.Input

	ToAddressListArrayOutput() AddressListArrayOutput
	ToAddressListArrayOutputWithContext(context.Context) AddressListArrayOutput
}

AddressListArrayInput is an input type that accepts AddressListArray and AddressListArrayOutput values. You can construct a concrete instance of `AddressListArrayInput` via:

AddressListArray{ AddressListArgs{...} }

type AddressListArrayOutput

type AddressListArrayOutput struct{ *pulumi.OutputState }

func (AddressListArrayOutput) ElementType

func (AddressListArrayOutput) ElementType() reflect.Type

func (AddressListArrayOutput) Index

func (AddressListArrayOutput) ToAddressListArrayOutput

func (o AddressListArrayOutput) ToAddressListArrayOutput() AddressListArrayOutput

func (AddressListArrayOutput) ToAddressListArrayOutputWithContext

func (o AddressListArrayOutput) ToAddressListArrayOutputWithContext(ctx context.Context) AddressListArrayOutput

type AddressListInput

type AddressListInput interface {
	pulumi.Input

	ToAddressListOutput() AddressListOutput
	ToAddressListOutputWithContext(ctx context.Context) AddressListOutput
}

type AddressListMap

type AddressListMap map[string]AddressListInput

func (AddressListMap) ElementType

func (AddressListMap) ElementType() reflect.Type

func (AddressListMap) ToAddressListMapOutput

func (i AddressListMap) ToAddressListMapOutput() AddressListMapOutput

func (AddressListMap) ToAddressListMapOutputWithContext

func (i AddressListMap) ToAddressListMapOutputWithContext(ctx context.Context) AddressListMapOutput

type AddressListMapInput

type AddressListMapInput interface {
	pulumi.Input

	ToAddressListMapOutput() AddressListMapOutput
	ToAddressListMapOutputWithContext(context.Context) AddressListMapOutput
}

AddressListMapInput is an input type that accepts AddressListMap and AddressListMapOutput values. You can construct a concrete instance of `AddressListMapInput` via:

AddressListMap{ "key": AddressListArgs{...} }

type AddressListMapOutput

type AddressListMapOutput struct{ *pulumi.OutputState }

func (AddressListMapOutput) ElementType

func (AddressListMapOutput) ElementType() reflect.Type

func (AddressListMapOutput) MapIndex

func (AddressListMapOutput) ToAddressListMapOutput

func (o AddressListMapOutput) ToAddressListMapOutput() AddressListMapOutput

func (AddressListMapOutput) ToAddressListMapOutputWithContext

func (o AddressListMapOutput) ToAddressListMapOutputWithContext(ctx context.Context) AddressListMapOutput

type AddressListOutput

type AddressListOutput struct{ *pulumi.OutputState }

func (AddressListOutput) AddressCount added in v0.4.0

func (o AddressListOutput) AddressCount() pulumi.Float64Output

The total number of unique IP addresses in the address list.

func (AddressListOutput) Addresses added in v0.4.0

(Updatable) A list of IP addresses or CIDR notations.

func (AddressListOutput) CompartmentId added in v0.4.0

func (o AddressListOutput) CompartmentId() pulumi.StringOutput

(Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment in which to create the address list.

func (AddressListOutput) DefinedTags added in v0.4.0

func (o AddressListOutput) DefinedTags() pulumi.MapOutput

(Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Operations.CostCenter": "42"}`

func (AddressListOutput) DisplayName added in v0.4.0

func (o AddressListOutput) DisplayName() pulumi.StringOutput

(Updatable) A user-friendly name for the address list.

func (AddressListOutput) ElementType

func (AddressListOutput) ElementType() reflect.Type

func (AddressListOutput) FreeformTags added in v0.4.0

func (o AddressListOutput) FreeformTags() pulumi.MapOutput

(Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Department": "Finance"}`

** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

func (AddressListOutput) State added in v0.4.0

The current lifecycle state of the address list.

func (AddressListOutput) TimeCreated added in v0.4.0

func (o AddressListOutput) TimeCreated() pulumi.StringOutput

The date and time the address list was created, expressed in RFC 3339 timestamp format.

func (AddressListOutput) ToAddressListOutput

func (o AddressListOutput) ToAddressListOutput() AddressListOutput

func (AddressListOutput) ToAddressListOutputWithContext

func (o AddressListOutput) ToAddressListOutputWithContext(ctx context.Context) AddressListOutput

type AddressListState

type AddressListState struct {
	// The total number of unique IP addresses in the address list.
	AddressCount pulumi.Float64PtrInput
	// (Updatable) A list of IP addresses or CIDR notations.
	Addresses pulumi.StringArrayInput
	// (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment in which to create the address list.
	CompartmentId pulumi.StringPtrInput
	// (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Operations.CostCenter": "42"}`
	DefinedTags pulumi.MapInput
	// (Updatable) A user-friendly name for the address list.
	DisplayName pulumi.StringPtrInput
	// (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Department": "Finance"}`
	//
	// ** IMPORTANT **
	// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
	FreeformTags pulumi.MapInput
	// The current lifecycle state of the address list.
	State pulumi.StringPtrInput
	// The date and time the address list was created, expressed in RFC 3339 timestamp format.
	TimeCreated pulumi.StringPtrInput
}

func (AddressListState) ElementType

func (AddressListState) ElementType() reflect.Type

type Certificate

type Certificate struct {
	pulumi.CustomResourceState

	// The data of the SSL certificate.
	//
	// **Note:** Many SSL certificate providers require an intermediate certificate chain to ensure a trusted status. If your SSL certificate requires an intermediate certificate chain, please append the intermediate certificate key in the `certificateData` field after the leaf certificate issued by the SSL certificate provider. If you are unsure if your certificate requires an intermediate certificate chain, see your certificate provider's documentation.
	//
	// The example below shows an intermediate certificate appended to a leaf certificate.
	CertificateData pulumi.StringOutput `pulumi:"certificateData"`
	// (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment in which to create the SSL certificate.
	CompartmentId pulumi.StringOutput `pulumi:"compartmentId"`
	// (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Operations.CostCenter": "42"}`
	DefinedTags pulumi.MapOutput `pulumi:"definedTags"`
	// (Updatable) A user-friendly name for the SSL certificate. The name can be changed and does not need to be unique.
	DisplayName pulumi.StringOutput `pulumi:"displayName"`
	// Additional attributes associated with users or public keys for managing relationships between Certificate Authorities.
	Extensions CertificateExtensionArrayOutput `pulumi:"extensions"`
	// (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Department": "Finance"}`
	FreeformTags pulumi.MapOutput `pulumi:"freeformTags"`
	// Set to `true` if the SSL certificate is self-signed.
	IsTrustVerificationDisabled pulumi.BoolOutput   `pulumi:"isTrustVerificationDisabled"`
	IssuedBy                    pulumi.StringOutput `pulumi:"issuedBy"`
	// The issuer of the certificate.
	IssuerNames CertificateIssuerNameArrayOutput `pulumi:"issuerNames"`
	// The private key of the SSL certificate.
	//
	// ** IMPORTANT **
	// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
	PrivateKeyData pulumi.StringOutput `pulumi:"privateKeyData"`
	// Information about the public key and the algorithm used by the public key.
	PublicKeyInfos CertificatePublicKeyInfoArrayOutput `pulumi:"publicKeyInfos"`
	// A unique, positive integer assigned by the Certificate Authority (CA). The issuer name and serial number identify a unique certificate.
	SerialNumber pulumi.StringOutput `pulumi:"serialNumber"`
	// The identifier for the cryptographic algorithm used by the Certificate Authority (CA) to sign this certificate.
	SignatureAlgorithm pulumi.StringOutput `pulumi:"signatureAlgorithm"`
	// The current lifecycle state of the SSL certificate.
	State pulumi.StringOutput `pulumi:"state"`
	// The entity to be secured by the certificate.
	SubjectNames CertificateSubjectNameArrayOutput `pulumi:"subjectNames"`
	// The date and time the certificate was created, expressed in RFC 3339 timestamp format.
	TimeCreated pulumi.StringOutput `pulumi:"timeCreated"`
	// The date and time the certificate will expire, expressed in RFC 3339 timestamp format.
	TimeNotValidAfter pulumi.StringOutput `pulumi:"timeNotValidAfter"`
	// The date and time the certificate will become valid, expressed in RFC 3339 timestamp format.
	TimeNotValidBefore pulumi.StringOutput `pulumi:"timeNotValidBefore"`
	// The version of the encoded certificate.
	Version pulumi.IntOutput `pulumi:"version"`
}

This resource provides the Certificate resource in Oracle Cloud Infrastructure Web Application Acceleration and Security service.

Allows an SSL certificate to be added to a WAAS policy. The Web Application Firewall terminates SSL connections to inspect requests in runtime, and then re-encrypts requests before sending them to the origin for fulfillment.

For more information, see [WAF Settings](https://docs.cloud.oracle.com/iaas/Content/WAF/Tasks/wafsettings.htm).

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-oci/sdk/go/oci/Waas"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Waas.NewCertificate(ctx, "test_certificate", &Waas.CertificateArgs{
			CertificateData: pulumi.Any(certificateCertificateData),
			CompartmentId:   pulumi.Any(compartmentId),
			PrivateKeyData:  pulumi.Any(certificatePrivateKeyData),
			DefinedTags: pulumi.Map{
				"Operations.CostCenter": pulumi.Any("42"),
			},
			DisplayName: pulumi.Any(certificateDisplayName),
			FreeformTags: pulumi.Map{
				"Department": pulumi.Any("Finance"),
			},
			IsTrustVerificationDisabled: pulumi.Any(certificateIsTrustVerificationDisabled),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Import is not supported for this resource.

func GetCertificate

func GetCertificate(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *CertificateState, opts ...pulumi.ResourceOption) (*Certificate, error)

GetCertificate gets an existing Certificate 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 NewCertificate

func NewCertificate(ctx *pulumi.Context,
	name string, args *CertificateArgs, opts ...pulumi.ResourceOption) (*Certificate, error)

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

func (*Certificate) ElementType

func (*Certificate) ElementType() reflect.Type

func (*Certificate) ToCertificateOutput

func (i *Certificate) ToCertificateOutput() CertificateOutput

func (*Certificate) ToCertificateOutputWithContext

func (i *Certificate) ToCertificateOutputWithContext(ctx context.Context) CertificateOutput

type CertificateArgs

type CertificateArgs struct {
	// The data of the SSL certificate.
	//
	// **Note:** Many SSL certificate providers require an intermediate certificate chain to ensure a trusted status. If your SSL certificate requires an intermediate certificate chain, please append the intermediate certificate key in the `certificateData` field after the leaf certificate issued by the SSL certificate provider. If you are unsure if your certificate requires an intermediate certificate chain, see your certificate provider's documentation.
	//
	// The example below shows an intermediate certificate appended to a leaf certificate.
	CertificateData pulumi.StringInput
	// (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment in which to create the SSL certificate.
	CompartmentId pulumi.StringInput
	// (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Operations.CostCenter": "42"}`
	DefinedTags pulumi.MapInput
	// (Updatable) A user-friendly name for the SSL certificate. The name can be changed and does not need to be unique.
	DisplayName pulumi.StringPtrInput
	// (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Department": "Finance"}`
	FreeformTags pulumi.MapInput
	// Set to `true` if the SSL certificate is self-signed.
	IsTrustVerificationDisabled pulumi.BoolPtrInput
	// The private key of the SSL certificate.
	//
	// ** IMPORTANT **
	// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
	PrivateKeyData pulumi.StringInput
}

The set of arguments for constructing a Certificate resource.

func (CertificateArgs) ElementType

func (CertificateArgs) ElementType() reflect.Type

type CertificateArray

type CertificateArray []CertificateInput

func (CertificateArray) ElementType

func (CertificateArray) ElementType() reflect.Type

func (CertificateArray) ToCertificateArrayOutput

func (i CertificateArray) ToCertificateArrayOutput() CertificateArrayOutput

func (CertificateArray) ToCertificateArrayOutputWithContext

func (i CertificateArray) ToCertificateArrayOutputWithContext(ctx context.Context) CertificateArrayOutput

type CertificateArrayInput

type CertificateArrayInput interface {
	pulumi.Input

	ToCertificateArrayOutput() CertificateArrayOutput
	ToCertificateArrayOutputWithContext(context.Context) CertificateArrayOutput
}

CertificateArrayInput is an input type that accepts CertificateArray and CertificateArrayOutput values. You can construct a concrete instance of `CertificateArrayInput` via:

CertificateArray{ CertificateArgs{...} }

type CertificateArrayOutput

type CertificateArrayOutput struct{ *pulumi.OutputState }

func (CertificateArrayOutput) ElementType

func (CertificateArrayOutput) ElementType() reflect.Type

func (CertificateArrayOutput) Index

func (CertificateArrayOutput) ToCertificateArrayOutput

func (o CertificateArrayOutput) ToCertificateArrayOutput() CertificateArrayOutput

func (CertificateArrayOutput) ToCertificateArrayOutputWithContext

func (o CertificateArrayOutput) ToCertificateArrayOutputWithContext(ctx context.Context) CertificateArrayOutput

type CertificateExtension

type CertificateExtension struct {
	// The critical flag of the extension. Critical extensions must be processed, non-critical extensions can be ignored.
	IsCritical *bool `pulumi:"isCritical"`
	// The certificate extension name.
	Name *string `pulumi:"name"`
	// The certificate extension value.
	Value *string `pulumi:"value"`
}

type CertificateExtensionArgs

type CertificateExtensionArgs struct {
	// The critical flag of the extension. Critical extensions must be processed, non-critical extensions can be ignored.
	IsCritical pulumi.BoolPtrInput `pulumi:"isCritical"`
	// The certificate extension name.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// The certificate extension value.
	Value pulumi.StringPtrInput `pulumi:"value"`
}

func (CertificateExtensionArgs) ElementType

func (CertificateExtensionArgs) ElementType() reflect.Type

func (CertificateExtensionArgs) ToCertificateExtensionOutput

func (i CertificateExtensionArgs) ToCertificateExtensionOutput() CertificateExtensionOutput

func (CertificateExtensionArgs) ToCertificateExtensionOutputWithContext

func (i CertificateExtensionArgs) ToCertificateExtensionOutputWithContext(ctx context.Context) CertificateExtensionOutput

type CertificateExtensionArray

type CertificateExtensionArray []CertificateExtensionInput

func (CertificateExtensionArray) ElementType

func (CertificateExtensionArray) ElementType() reflect.Type

func (CertificateExtensionArray) ToCertificateExtensionArrayOutput

func (i CertificateExtensionArray) ToCertificateExtensionArrayOutput() CertificateExtensionArrayOutput

func (CertificateExtensionArray) ToCertificateExtensionArrayOutputWithContext

func (i CertificateExtensionArray) ToCertificateExtensionArrayOutputWithContext(ctx context.Context) CertificateExtensionArrayOutput

type CertificateExtensionArrayInput

type CertificateExtensionArrayInput interface {
	pulumi.Input

	ToCertificateExtensionArrayOutput() CertificateExtensionArrayOutput
	ToCertificateExtensionArrayOutputWithContext(context.Context) CertificateExtensionArrayOutput
}

CertificateExtensionArrayInput is an input type that accepts CertificateExtensionArray and CertificateExtensionArrayOutput values. You can construct a concrete instance of `CertificateExtensionArrayInput` via:

CertificateExtensionArray{ CertificateExtensionArgs{...} }

type CertificateExtensionArrayOutput

type CertificateExtensionArrayOutput struct{ *pulumi.OutputState }

func (CertificateExtensionArrayOutput) ElementType

func (CertificateExtensionArrayOutput) Index

func (CertificateExtensionArrayOutput) ToCertificateExtensionArrayOutput

func (o CertificateExtensionArrayOutput) ToCertificateExtensionArrayOutput() CertificateExtensionArrayOutput

func (CertificateExtensionArrayOutput) ToCertificateExtensionArrayOutputWithContext

func (o CertificateExtensionArrayOutput) ToCertificateExtensionArrayOutputWithContext(ctx context.Context) CertificateExtensionArrayOutput

type CertificateExtensionInput

type CertificateExtensionInput interface {
	pulumi.Input

	ToCertificateExtensionOutput() CertificateExtensionOutput
	ToCertificateExtensionOutputWithContext(context.Context) CertificateExtensionOutput
}

CertificateExtensionInput is an input type that accepts CertificateExtensionArgs and CertificateExtensionOutput values. You can construct a concrete instance of `CertificateExtensionInput` via:

CertificateExtensionArgs{...}

type CertificateExtensionOutput

type CertificateExtensionOutput struct{ *pulumi.OutputState }

func (CertificateExtensionOutput) ElementType

func (CertificateExtensionOutput) ElementType() reflect.Type

func (CertificateExtensionOutput) IsCritical

The critical flag of the extension. Critical extensions must be processed, non-critical extensions can be ignored.

func (CertificateExtensionOutput) Name

The certificate extension name.

func (CertificateExtensionOutput) ToCertificateExtensionOutput

func (o CertificateExtensionOutput) ToCertificateExtensionOutput() CertificateExtensionOutput

func (CertificateExtensionOutput) ToCertificateExtensionOutputWithContext

func (o CertificateExtensionOutput) ToCertificateExtensionOutputWithContext(ctx context.Context) CertificateExtensionOutput

func (CertificateExtensionOutput) Value

The certificate extension value.

type CertificateInput

type CertificateInput interface {
	pulumi.Input

	ToCertificateOutput() CertificateOutput
	ToCertificateOutputWithContext(ctx context.Context) CertificateOutput
}

type CertificateIssuerName

type CertificateIssuerName struct {
	// The fully qualified domain name used for DNS lookups of the server.
	CommonName *string `pulumi:"commonName"`
	// ISO 3166-1 alpha-2 code of the country where the organization is located. For a list of codes, see [ISO's website](https://www.iso.org/obp/ui/#search/code/).
	Country *string `pulumi:"country"`
	// The email address of the server's administrator.
	EmailAddress *string `pulumi:"emailAddress"`
	// The city in which the organization is located.
	Locality *string `pulumi:"locality"`
	// The organization name.
	Organization *string `pulumi:"organization"`
	// The field to differentiate between divisions within an organization.
	OrganizationalUnit *string `pulumi:"organizationalUnit"`
	// The province where the organization is located.
	StateProvince *string `pulumi:"stateProvince"`
}

type CertificateIssuerNameArgs

type CertificateIssuerNameArgs struct {
	// The fully qualified domain name used for DNS lookups of the server.
	CommonName pulumi.StringPtrInput `pulumi:"commonName"`
	// ISO 3166-1 alpha-2 code of the country where the organization is located. For a list of codes, see [ISO's website](https://www.iso.org/obp/ui/#search/code/).
	Country pulumi.StringPtrInput `pulumi:"country"`
	// The email address of the server's administrator.
	EmailAddress pulumi.StringPtrInput `pulumi:"emailAddress"`
	// The city in which the organization is located.
	Locality pulumi.StringPtrInput `pulumi:"locality"`
	// The organization name.
	Organization pulumi.StringPtrInput `pulumi:"organization"`
	// The field to differentiate between divisions within an organization.
	OrganizationalUnit pulumi.StringPtrInput `pulumi:"organizationalUnit"`
	// The province where the organization is located.
	StateProvince pulumi.StringPtrInput `pulumi:"stateProvince"`
}

func (CertificateIssuerNameArgs) ElementType

func (CertificateIssuerNameArgs) ElementType() reflect.Type

func (CertificateIssuerNameArgs) ToCertificateIssuerNameOutput

func (i CertificateIssuerNameArgs) ToCertificateIssuerNameOutput() CertificateIssuerNameOutput

func (CertificateIssuerNameArgs) ToCertificateIssuerNameOutputWithContext

func (i CertificateIssuerNameArgs) ToCertificateIssuerNameOutputWithContext(ctx context.Context) CertificateIssuerNameOutput

type CertificateIssuerNameArray

type CertificateIssuerNameArray []CertificateIssuerNameInput

func (CertificateIssuerNameArray) ElementType

func (CertificateIssuerNameArray) ElementType() reflect.Type

func (CertificateIssuerNameArray) ToCertificateIssuerNameArrayOutput

func (i CertificateIssuerNameArray) ToCertificateIssuerNameArrayOutput() CertificateIssuerNameArrayOutput

func (CertificateIssuerNameArray) ToCertificateIssuerNameArrayOutputWithContext

func (i CertificateIssuerNameArray) ToCertificateIssuerNameArrayOutputWithContext(ctx context.Context) CertificateIssuerNameArrayOutput

type CertificateIssuerNameArrayInput

type CertificateIssuerNameArrayInput interface {
	pulumi.Input

	ToCertificateIssuerNameArrayOutput() CertificateIssuerNameArrayOutput
	ToCertificateIssuerNameArrayOutputWithContext(context.Context) CertificateIssuerNameArrayOutput
}

CertificateIssuerNameArrayInput is an input type that accepts CertificateIssuerNameArray and CertificateIssuerNameArrayOutput values. You can construct a concrete instance of `CertificateIssuerNameArrayInput` via:

CertificateIssuerNameArray{ CertificateIssuerNameArgs{...} }

type CertificateIssuerNameArrayOutput

type CertificateIssuerNameArrayOutput struct{ *pulumi.OutputState }

func (CertificateIssuerNameArrayOutput) ElementType

func (CertificateIssuerNameArrayOutput) Index

func (CertificateIssuerNameArrayOutput) ToCertificateIssuerNameArrayOutput

func (o CertificateIssuerNameArrayOutput) ToCertificateIssuerNameArrayOutput() CertificateIssuerNameArrayOutput

func (CertificateIssuerNameArrayOutput) ToCertificateIssuerNameArrayOutputWithContext

func (o CertificateIssuerNameArrayOutput) ToCertificateIssuerNameArrayOutputWithContext(ctx context.Context) CertificateIssuerNameArrayOutput

type CertificateIssuerNameInput

type CertificateIssuerNameInput interface {
	pulumi.Input

	ToCertificateIssuerNameOutput() CertificateIssuerNameOutput
	ToCertificateIssuerNameOutputWithContext(context.Context) CertificateIssuerNameOutput
}

CertificateIssuerNameInput is an input type that accepts CertificateIssuerNameArgs and CertificateIssuerNameOutput values. You can construct a concrete instance of `CertificateIssuerNameInput` via:

CertificateIssuerNameArgs{...}

type CertificateIssuerNameOutput

type CertificateIssuerNameOutput struct{ *pulumi.OutputState }

func (CertificateIssuerNameOutput) CommonName

The fully qualified domain name used for DNS lookups of the server.

func (CertificateIssuerNameOutput) Country

ISO 3166-1 alpha-2 code of the country where the organization is located. For a list of codes, see [ISO's website](https://www.iso.org/obp/ui/#search/code/).

func (CertificateIssuerNameOutput) ElementType

func (CertificateIssuerNameOutput) EmailAddress

The email address of the server's administrator.

func (CertificateIssuerNameOutput) Locality

The city in which the organization is located.

func (CertificateIssuerNameOutput) Organization

The organization name.

func (CertificateIssuerNameOutput) OrganizationalUnit

func (o CertificateIssuerNameOutput) OrganizationalUnit() pulumi.StringPtrOutput

The field to differentiate between divisions within an organization.

func (CertificateIssuerNameOutput) StateProvince

The province where the organization is located.

func (CertificateIssuerNameOutput) ToCertificateIssuerNameOutput

func (o CertificateIssuerNameOutput) ToCertificateIssuerNameOutput() CertificateIssuerNameOutput

func (CertificateIssuerNameOutput) ToCertificateIssuerNameOutputWithContext

func (o CertificateIssuerNameOutput) ToCertificateIssuerNameOutputWithContext(ctx context.Context) CertificateIssuerNameOutput

type CertificateMap

type CertificateMap map[string]CertificateInput

func (CertificateMap) ElementType

func (CertificateMap) ElementType() reflect.Type

func (CertificateMap) ToCertificateMapOutput

func (i CertificateMap) ToCertificateMapOutput() CertificateMapOutput

func (CertificateMap) ToCertificateMapOutputWithContext

func (i CertificateMap) ToCertificateMapOutputWithContext(ctx context.Context) CertificateMapOutput

type CertificateMapInput

type CertificateMapInput interface {
	pulumi.Input

	ToCertificateMapOutput() CertificateMapOutput
	ToCertificateMapOutputWithContext(context.Context) CertificateMapOutput
}

CertificateMapInput is an input type that accepts CertificateMap and CertificateMapOutput values. You can construct a concrete instance of `CertificateMapInput` via:

CertificateMap{ "key": CertificateArgs{...} }

type CertificateMapOutput

type CertificateMapOutput struct{ *pulumi.OutputState }

func (CertificateMapOutput) ElementType

func (CertificateMapOutput) ElementType() reflect.Type

func (CertificateMapOutput) MapIndex

func (CertificateMapOutput) ToCertificateMapOutput

func (o CertificateMapOutput) ToCertificateMapOutput() CertificateMapOutput

func (CertificateMapOutput) ToCertificateMapOutputWithContext

func (o CertificateMapOutput) ToCertificateMapOutputWithContext(ctx context.Context) CertificateMapOutput

type CertificateOutput

type CertificateOutput struct{ *pulumi.OutputState }

func (CertificateOutput) CertificateData added in v0.4.0

func (o CertificateOutput) CertificateData() pulumi.StringOutput

The data of the SSL certificate.

**Note:** Many SSL certificate providers require an intermediate certificate chain to ensure a trusted status. If your SSL certificate requires an intermediate certificate chain, please append the intermediate certificate key in the `certificateData` field after the leaf certificate issued by the SSL certificate provider. If you are unsure if your certificate requires an intermediate certificate chain, see your certificate provider's documentation.

The example below shows an intermediate certificate appended to a leaf certificate.

func (CertificateOutput) CompartmentId added in v0.4.0

func (o CertificateOutput) CompartmentId() pulumi.StringOutput

(Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment in which to create the SSL certificate.

func (CertificateOutput) DefinedTags added in v0.4.0

func (o CertificateOutput) DefinedTags() pulumi.MapOutput

(Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Operations.CostCenter": "42"}`

func (CertificateOutput) DisplayName added in v0.4.0

func (o CertificateOutput) DisplayName() pulumi.StringOutput

(Updatable) A user-friendly name for the SSL certificate. The name can be changed and does not need to be unique.

func (CertificateOutput) ElementType

func (CertificateOutput) ElementType() reflect.Type

func (CertificateOutput) Extensions added in v0.4.0

Additional attributes associated with users or public keys for managing relationships between Certificate Authorities.

func (CertificateOutput) FreeformTags added in v0.4.0

func (o CertificateOutput) FreeformTags() pulumi.MapOutput

(Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Department": "Finance"}`

func (CertificateOutput) IsTrustVerificationDisabled added in v0.4.0

func (o CertificateOutput) IsTrustVerificationDisabled() pulumi.BoolOutput

Set to `true` if the SSL certificate is self-signed.

func (CertificateOutput) IssuedBy added in v0.4.0

func (o CertificateOutput) IssuedBy() pulumi.StringOutput

func (CertificateOutput) IssuerNames added in v0.4.0

The issuer of the certificate.

func (CertificateOutput) PrivateKeyData added in v0.4.0

func (o CertificateOutput) PrivateKeyData() pulumi.StringOutput

The private key of the SSL certificate.

** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

func (CertificateOutput) PublicKeyInfos added in v0.4.0

Information about the public key and the algorithm used by the public key.

func (CertificateOutput) SerialNumber added in v0.4.0

func (o CertificateOutput) SerialNumber() pulumi.StringOutput

A unique, positive integer assigned by the Certificate Authority (CA). The issuer name and serial number identify a unique certificate.

func (CertificateOutput) SignatureAlgorithm added in v0.4.0

func (o CertificateOutput) SignatureAlgorithm() pulumi.StringOutput

The identifier for the cryptographic algorithm used by the Certificate Authority (CA) to sign this certificate.

func (CertificateOutput) State added in v0.4.0

The current lifecycle state of the SSL certificate.

func (CertificateOutput) SubjectNames added in v0.4.0

The entity to be secured by the certificate.

func (CertificateOutput) TimeCreated added in v0.4.0

func (o CertificateOutput) TimeCreated() pulumi.StringOutput

The date and time the certificate was created, expressed in RFC 3339 timestamp format.

func (CertificateOutput) TimeNotValidAfter added in v0.4.0

func (o CertificateOutput) TimeNotValidAfter() pulumi.StringOutput

The date and time the certificate will expire, expressed in RFC 3339 timestamp format.

func (CertificateOutput) TimeNotValidBefore added in v0.4.0

func (o CertificateOutput) TimeNotValidBefore() pulumi.StringOutput

The date and time the certificate will become valid, expressed in RFC 3339 timestamp format.

func (CertificateOutput) ToCertificateOutput

func (o CertificateOutput) ToCertificateOutput() CertificateOutput

func (CertificateOutput) ToCertificateOutputWithContext

func (o CertificateOutput) ToCertificateOutputWithContext(ctx context.Context) CertificateOutput

func (CertificateOutput) Version added in v0.4.0

func (o CertificateOutput) Version() pulumi.IntOutput

The version of the encoded certificate.

type CertificatePublicKeyInfo

type CertificatePublicKeyInfo struct {
	// The algorithm identifier and parameters for the public key.
	Algorithm *string `pulumi:"algorithm"`
	// The private key exponent.
	Exponent *int `pulumi:"exponent"`
	// The number of bits in a key used by a cryptographic algorithm.
	KeySize *int `pulumi:"keySize"`
}

type CertificatePublicKeyInfoArgs

type CertificatePublicKeyInfoArgs struct {
	// The algorithm identifier and parameters for the public key.
	Algorithm pulumi.StringPtrInput `pulumi:"algorithm"`
	// The private key exponent.
	Exponent pulumi.IntPtrInput `pulumi:"exponent"`
	// The number of bits in a key used by a cryptographic algorithm.
	KeySize pulumi.IntPtrInput `pulumi:"keySize"`
}

func (CertificatePublicKeyInfoArgs) ElementType

func (CertificatePublicKeyInfoArgs) ToCertificatePublicKeyInfoOutput

func (i CertificatePublicKeyInfoArgs) ToCertificatePublicKeyInfoOutput() CertificatePublicKeyInfoOutput

func (CertificatePublicKeyInfoArgs) ToCertificatePublicKeyInfoOutputWithContext

func (i CertificatePublicKeyInfoArgs) ToCertificatePublicKeyInfoOutputWithContext(ctx context.Context) CertificatePublicKeyInfoOutput

type CertificatePublicKeyInfoArray

type CertificatePublicKeyInfoArray []CertificatePublicKeyInfoInput

func (CertificatePublicKeyInfoArray) ElementType

func (CertificatePublicKeyInfoArray) ToCertificatePublicKeyInfoArrayOutput

func (i CertificatePublicKeyInfoArray) ToCertificatePublicKeyInfoArrayOutput() CertificatePublicKeyInfoArrayOutput

func (CertificatePublicKeyInfoArray) ToCertificatePublicKeyInfoArrayOutputWithContext

func (i CertificatePublicKeyInfoArray) ToCertificatePublicKeyInfoArrayOutputWithContext(ctx context.Context) CertificatePublicKeyInfoArrayOutput

type CertificatePublicKeyInfoArrayInput

type CertificatePublicKeyInfoArrayInput interface {
	pulumi.Input

	ToCertificatePublicKeyInfoArrayOutput() CertificatePublicKeyInfoArrayOutput
	ToCertificatePublicKeyInfoArrayOutputWithContext(context.Context) CertificatePublicKeyInfoArrayOutput
}

CertificatePublicKeyInfoArrayInput is an input type that accepts CertificatePublicKeyInfoArray and CertificatePublicKeyInfoArrayOutput values. You can construct a concrete instance of `CertificatePublicKeyInfoArrayInput` via:

CertificatePublicKeyInfoArray{ CertificatePublicKeyInfoArgs{...} }

type CertificatePublicKeyInfoArrayOutput

type CertificatePublicKeyInfoArrayOutput struct{ *pulumi.OutputState }

func (CertificatePublicKeyInfoArrayOutput) ElementType

func (CertificatePublicKeyInfoArrayOutput) Index

func (CertificatePublicKeyInfoArrayOutput) ToCertificatePublicKeyInfoArrayOutput

func (o CertificatePublicKeyInfoArrayOutput) ToCertificatePublicKeyInfoArrayOutput() CertificatePublicKeyInfoArrayOutput

func (CertificatePublicKeyInfoArrayOutput) ToCertificatePublicKeyInfoArrayOutputWithContext

func (o CertificatePublicKeyInfoArrayOutput) ToCertificatePublicKeyInfoArrayOutputWithContext(ctx context.Context) CertificatePublicKeyInfoArrayOutput

type CertificatePublicKeyInfoInput

type CertificatePublicKeyInfoInput interface {
	pulumi.Input

	ToCertificatePublicKeyInfoOutput() CertificatePublicKeyInfoOutput
	ToCertificatePublicKeyInfoOutputWithContext(context.Context) CertificatePublicKeyInfoOutput
}

CertificatePublicKeyInfoInput is an input type that accepts CertificatePublicKeyInfoArgs and CertificatePublicKeyInfoOutput values. You can construct a concrete instance of `CertificatePublicKeyInfoInput` via:

CertificatePublicKeyInfoArgs{...}

type CertificatePublicKeyInfoOutput

type CertificatePublicKeyInfoOutput struct{ *pulumi.OutputState }

func (CertificatePublicKeyInfoOutput) Algorithm

The algorithm identifier and parameters for the public key.

func (CertificatePublicKeyInfoOutput) ElementType

func (CertificatePublicKeyInfoOutput) Exponent

The private key exponent.

func (CertificatePublicKeyInfoOutput) KeySize

The number of bits in a key used by a cryptographic algorithm.

func (CertificatePublicKeyInfoOutput) ToCertificatePublicKeyInfoOutput

func (o CertificatePublicKeyInfoOutput) ToCertificatePublicKeyInfoOutput() CertificatePublicKeyInfoOutput

func (CertificatePublicKeyInfoOutput) ToCertificatePublicKeyInfoOutputWithContext

func (o CertificatePublicKeyInfoOutput) ToCertificatePublicKeyInfoOutputWithContext(ctx context.Context) CertificatePublicKeyInfoOutput

type CertificateState

type CertificateState struct {
	// The data of the SSL certificate.
	//
	// **Note:** Many SSL certificate providers require an intermediate certificate chain to ensure a trusted status. If your SSL certificate requires an intermediate certificate chain, please append the intermediate certificate key in the `certificateData` field after the leaf certificate issued by the SSL certificate provider. If you are unsure if your certificate requires an intermediate certificate chain, see your certificate provider's documentation.
	//
	// The example below shows an intermediate certificate appended to a leaf certificate.
	CertificateData pulumi.StringPtrInput
	// (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment in which to create the SSL certificate.
	CompartmentId pulumi.StringPtrInput
	// (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Operations.CostCenter": "42"}`
	DefinedTags pulumi.MapInput
	// (Updatable) A user-friendly name for the SSL certificate. The name can be changed and does not need to be unique.
	DisplayName pulumi.StringPtrInput
	// Additional attributes associated with users or public keys for managing relationships between Certificate Authorities.
	Extensions CertificateExtensionArrayInput
	// (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Department": "Finance"}`
	FreeformTags pulumi.MapInput
	// Set to `true` if the SSL certificate is self-signed.
	IsTrustVerificationDisabled pulumi.BoolPtrInput
	IssuedBy                    pulumi.StringPtrInput
	// The issuer of the certificate.
	IssuerNames CertificateIssuerNameArrayInput
	// The private key of the SSL certificate.
	//
	// ** IMPORTANT **
	// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
	PrivateKeyData pulumi.StringPtrInput
	// Information about the public key and the algorithm used by the public key.
	PublicKeyInfos CertificatePublicKeyInfoArrayInput
	// A unique, positive integer assigned by the Certificate Authority (CA). The issuer name and serial number identify a unique certificate.
	SerialNumber pulumi.StringPtrInput
	// The identifier for the cryptographic algorithm used by the Certificate Authority (CA) to sign this certificate.
	SignatureAlgorithm pulumi.StringPtrInput
	// The current lifecycle state of the SSL certificate.
	State pulumi.StringPtrInput
	// The entity to be secured by the certificate.
	SubjectNames CertificateSubjectNameArrayInput
	// The date and time the certificate was created, expressed in RFC 3339 timestamp format.
	TimeCreated pulumi.StringPtrInput
	// The date and time the certificate will expire, expressed in RFC 3339 timestamp format.
	TimeNotValidAfter pulumi.StringPtrInput
	// The date and time the certificate will become valid, expressed in RFC 3339 timestamp format.
	TimeNotValidBefore pulumi.StringPtrInput
	// The version of the encoded certificate.
	Version pulumi.IntPtrInput
}

func (CertificateState) ElementType

func (CertificateState) ElementType() reflect.Type

type CertificateSubjectName

type CertificateSubjectName struct {
	// The fully qualified domain name used for DNS lookups of the server.
	CommonName *string `pulumi:"commonName"`
	// ISO 3166-1 alpha-2 code of the country where the organization is located. For a list of codes, see [ISO's website](https://www.iso.org/obp/ui/#search/code/).
	Country *string `pulumi:"country"`
	// The email address of the server's administrator.
	EmailAddress *string `pulumi:"emailAddress"`
	// The city in which the organization is located.
	Locality *string `pulumi:"locality"`
	// The organization name.
	Organization *string `pulumi:"organization"`
	// The field to differentiate between divisions within an organization.
	OrganizationalUnit *string `pulumi:"organizationalUnit"`
	// The province where the organization is located.
	StateProvince *string `pulumi:"stateProvince"`
}

type CertificateSubjectNameArgs

type CertificateSubjectNameArgs struct {
	// The fully qualified domain name used for DNS lookups of the server.
	CommonName pulumi.StringPtrInput `pulumi:"commonName"`
	// ISO 3166-1 alpha-2 code of the country where the organization is located. For a list of codes, see [ISO's website](https://www.iso.org/obp/ui/#search/code/).
	Country pulumi.StringPtrInput `pulumi:"country"`
	// The email address of the server's administrator.
	EmailAddress pulumi.StringPtrInput `pulumi:"emailAddress"`
	// The city in which the organization is located.
	Locality pulumi.StringPtrInput `pulumi:"locality"`
	// The organization name.
	Organization pulumi.StringPtrInput `pulumi:"organization"`
	// The field to differentiate between divisions within an organization.
	OrganizationalUnit pulumi.StringPtrInput `pulumi:"organizationalUnit"`
	// The province where the organization is located.
	StateProvince pulumi.StringPtrInput `pulumi:"stateProvince"`
}

func (CertificateSubjectNameArgs) ElementType

func (CertificateSubjectNameArgs) ElementType() reflect.Type

func (CertificateSubjectNameArgs) ToCertificateSubjectNameOutput

func (i CertificateSubjectNameArgs) ToCertificateSubjectNameOutput() CertificateSubjectNameOutput

func (CertificateSubjectNameArgs) ToCertificateSubjectNameOutputWithContext

func (i CertificateSubjectNameArgs) ToCertificateSubjectNameOutputWithContext(ctx context.Context) CertificateSubjectNameOutput

type CertificateSubjectNameArray

type CertificateSubjectNameArray []CertificateSubjectNameInput

func (CertificateSubjectNameArray) ElementType

func (CertificateSubjectNameArray) ToCertificateSubjectNameArrayOutput

func (i CertificateSubjectNameArray) ToCertificateSubjectNameArrayOutput() CertificateSubjectNameArrayOutput

func (CertificateSubjectNameArray) ToCertificateSubjectNameArrayOutputWithContext

func (i CertificateSubjectNameArray) ToCertificateSubjectNameArrayOutputWithContext(ctx context.Context) CertificateSubjectNameArrayOutput

type CertificateSubjectNameArrayInput

type CertificateSubjectNameArrayInput interface {
	pulumi.Input

	ToCertificateSubjectNameArrayOutput() CertificateSubjectNameArrayOutput
	ToCertificateSubjectNameArrayOutputWithContext(context.Context) CertificateSubjectNameArrayOutput
}

CertificateSubjectNameArrayInput is an input type that accepts CertificateSubjectNameArray and CertificateSubjectNameArrayOutput values. You can construct a concrete instance of `CertificateSubjectNameArrayInput` via:

CertificateSubjectNameArray{ CertificateSubjectNameArgs{...} }

type CertificateSubjectNameArrayOutput

type CertificateSubjectNameArrayOutput struct{ *pulumi.OutputState }

func (CertificateSubjectNameArrayOutput) ElementType

func (CertificateSubjectNameArrayOutput) Index

func (CertificateSubjectNameArrayOutput) ToCertificateSubjectNameArrayOutput

func (o CertificateSubjectNameArrayOutput) ToCertificateSubjectNameArrayOutput() CertificateSubjectNameArrayOutput

func (CertificateSubjectNameArrayOutput) ToCertificateSubjectNameArrayOutputWithContext

func (o CertificateSubjectNameArrayOutput) ToCertificateSubjectNameArrayOutputWithContext(ctx context.Context) CertificateSubjectNameArrayOutput

type CertificateSubjectNameInput

type CertificateSubjectNameInput interface {
	pulumi.Input

	ToCertificateSubjectNameOutput() CertificateSubjectNameOutput
	ToCertificateSubjectNameOutputWithContext(context.Context) CertificateSubjectNameOutput
}

CertificateSubjectNameInput is an input type that accepts CertificateSubjectNameArgs and CertificateSubjectNameOutput values. You can construct a concrete instance of `CertificateSubjectNameInput` via:

CertificateSubjectNameArgs{...}

type CertificateSubjectNameOutput

type CertificateSubjectNameOutput struct{ *pulumi.OutputState }

func (CertificateSubjectNameOutput) CommonName

The fully qualified domain name used for DNS lookups of the server.

func (CertificateSubjectNameOutput) Country

ISO 3166-1 alpha-2 code of the country where the organization is located. For a list of codes, see [ISO's website](https://www.iso.org/obp/ui/#search/code/).

func (CertificateSubjectNameOutput) ElementType

func (CertificateSubjectNameOutput) EmailAddress

The email address of the server's administrator.

func (CertificateSubjectNameOutput) Locality

The city in which the organization is located.

func (CertificateSubjectNameOutput) Organization

The organization name.

func (CertificateSubjectNameOutput) OrganizationalUnit

func (o CertificateSubjectNameOutput) OrganizationalUnit() pulumi.StringPtrOutput

The field to differentiate between divisions within an organization.

func (CertificateSubjectNameOutput) StateProvince

The province where the organization is located.

func (CertificateSubjectNameOutput) ToCertificateSubjectNameOutput

func (o CertificateSubjectNameOutput) ToCertificateSubjectNameOutput() CertificateSubjectNameOutput

func (CertificateSubjectNameOutput) ToCertificateSubjectNameOutputWithContext

func (o CertificateSubjectNameOutput) ToCertificateSubjectNameOutputWithContext(ctx context.Context) CertificateSubjectNameOutput

type CustomProtectionRule

type CustomProtectionRule struct {
	pulumi.CustomResourceState

	// (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment in which to create the custom protection rule.
	CompartmentId pulumi.StringOutput `pulumi:"compartmentId"`
	// (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Operations.CostCenter": "42"}`
	DefinedTags pulumi.MapOutput `pulumi:"definedTags"`
	// (Updatable) A description for the Custom Protection rule.
	Description pulumi.StringOutput `pulumi:"description"`
	// (Updatable) A user-friendly name for the custom protection rule.
	DisplayName pulumi.StringOutput `pulumi:"displayName"`
	// (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Department": "Finance"}`
	FreeformTags pulumi.MapOutput `pulumi:"freeformTags"`
	// The auto-generated ID for the custom protection rule. These IDs are referenced in logs.
	ModSecurityRuleIds pulumi.StringArrayOutput `pulumi:"modSecurityRuleIds"`
	// The current lifecycle state of the custom protection rule.
	State pulumi.StringOutput `pulumi:"state"`
	// (Updatable) The template text of the custom protection rule. All custom protection rules are expressed in ModSecurity Rule Language.
	//
	// Additionally, each rule must include two placeholder variables that are updated by the WAF service upon publication of the rule.
	//
	// `id: {{id_1}}` - This field is populated with a unique rule ID generated by the WAF service which identifies a `SecRule`. More than one `SecRule` can be defined in the `template` field of a CreateCustomSecurityRule call. The value of the first `SecRule` must be `id: {{id_1}}` and the `id` field of each subsequent `SecRule` should increase by one, as shown in the example.
	//
	// `ctl:ruleEngine={{mode}}` - The action to be taken when the criteria of the `SecRule` are met, either `OFF`, `DETECT` or `BLOCK`. This field is automatically populated with the corresponding value of the `action` field of the `CustomProtectionRuleSetting` schema when the `WafConfig` is updated.
	//
	// *Example:* “`SecRule REQUEST_COOKIES "regex matching SQL injection - part 1/2" \ "phase:2,                                                 \ msg:'Detects chained SQL injection attempts 1/2.',        \ id: {{id_1}},                                             \ ctl:ruleEngine={{mode}},                                  \ deny" SecRule REQUEST_COOKIES "regex matching SQL injection - part 2/2" \ "phase:2,                                                 \ msg:'Detects chained SQL injection attempts 2/2.',        \ id: {{id_2}},                                             \ ctl:ruleEngine={{mode}},                                  \ deny"“`
	//
	// The example contains two `SecRules` each having distinct regex expression to match the `Cookie` header value during the second input analysis phase.
	//
	// For more information about custom protection rules, see [Custom Protection Rules](https://docs.cloud.oracle.com/iaas/Content/WAF/tasks/customprotectionrules.htm).
	//
	// For more information about ModSecurity syntax, see [Making Rules: The Basic Syntax](https://www.modsecurity.org/CRS/Documentation/making.html).
	//
	// For more information about ModSecurity's open source WAF rules, see [Mod Security's OWASP Core Rule Set documentation](https://www.modsecurity.org/CRS/Documentation/index.html).
	//
	// ** IMPORTANT **
	// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
	Template pulumi.StringOutput `pulumi:"template"`
	// The date and time the protection rule was created, expressed in RFC 3339 timestamp format.
	TimeCreated pulumi.StringOutput `pulumi:"timeCreated"`
}

This resource provides the Custom Protection Rule resource in Oracle Cloud Infrastructure Web Application Acceleration and Security service.

Creates a new custom protection rule in the specified compartment.

Custom protection rules allow you to create rules in addition to the rulesets provided by the Web Application Firewall service, including rules from [ModSecurity](https://modsecurity.org/). The syntax for custom rules is based on the ModSecurity syntax. For more information about custom protection rules, see [Custom Protection Rules](https://docs.cloud.oracle.com/iaas/Content/WAF/Tasks/customprotectionrules.htm).

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-oci/sdk/go/oci/Waas"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Waas.NewCustomProtectionRule(ctx, "test_custom_protection_rule", &Waas.CustomProtectionRuleArgs{
			CompartmentId: pulumi.Any(compartmentId),
			DisplayName:   pulumi.Any(customProtectionRuleDisplayName),
			Template:      pulumi.Any(customProtectionRuleTemplate),
			DefinedTags: pulumi.Map{
				"Operations.CostCenter": pulumi.Any("42"),
			},
			Description: pulumi.Any(customProtectionRuleDescription),
			FreeformTags: pulumi.Map{
				"Department": pulumi.Any("Finance"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

CustomProtectionRules can be imported using the `id`, e.g.

```sh $ pulumi import oci:Waas/customProtectionRule:CustomProtectionRule test_custom_protection_rule "id" ```

func GetCustomProtectionRule

func GetCustomProtectionRule(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *CustomProtectionRuleState, opts ...pulumi.ResourceOption) (*CustomProtectionRule, error)

GetCustomProtectionRule gets an existing CustomProtectionRule 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 NewCustomProtectionRule

func NewCustomProtectionRule(ctx *pulumi.Context,
	name string, args *CustomProtectionRuleArgs, opts ...pulumi.ResourceOption) (*CustomProtectionRule, error)

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

func (*CustomProtectionRule) ElementType

func (*CustomProtectionRule) ElementType() reflect.Type

func (*CustomProtectionRule) ToCustomProtectionRuleOutput

func (i *CustomProtectionRule) ToCustomProtectionRuleOutput() CustomProtectionRuleOutput

func (*CustomProtectionRule) ToCustomProtectionRuleOutputWithContext

func (i *CustomProtectionRule) ToCustomProtectionRuleOutputWithContext(ctx context.Context) CustomProtectionRuleOutput

type CustomProtectionRuleArgs

type CustomProtectionRuleArgs struct {
	// (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment in which to create the custom protection rule.
	CompartmentId pulumi.StringInput
	// (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Operations.CostCenter": "42"}`
	DefinedTags pulumi.MapInput
	// (Updatable) A description for the Custom Protection rule.
	Description pulumi.StringPtrInput
	// (Updatable) A user-friendly name for the custom protection rule.
	DisplayName pulumi.StringInput
	// (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Department": "Finance"}`
	FreeformTags pulumi.MapInput
	// (Updatable) The template text of the custom protection rule. All custom protection rules are expressed in ModSecurity Rule Language.
	//
	// Additionally, each rule must include two placeholder variables that are updated by the WAF service upon publication of the rule.
	//
	// `id: {{id_1}}` - This field is populated with a unique rule ID generated by the WAF service which identifies a `SecRule`. More than one `SecRule` can be defined in the `template` field of a CreateCustomSecurityRule call. The value of the first `SecRule` must be `id: {{id_1}}` and the `id` field of each subsequent `SecRule` should increase by one, as shown in the example.
	//
	// `ctl:ruleEngine={{mode}}` - The action to be taken when the criteria of the `SecRule` are met, either `OFF`, `DETECT` or `BLOCK`. This field is automatically populated with the corresponding value of the `action` field of the `CustomProtectionRuleSetting` schema when the `WafConfig` is updated.
	//
	// *Example:* “`SecRule REQUEST_COOKIES "regex matching SQL injection - part 1/2" \ "phase:2,                                                 \ msg:'Detects chained SQL injection attempts 1/2.',        \ id: {{id_1}},                                             \ ctl:ruleEngine={{mode}},                                  \ deny" SecRule REQUEST_COOKIES "regex matching SQL injection - part 2/2" \ "phase:2,                                                 \ msg:'Detects chained SQL injection attempts 2/2.',        \ id: {{id_2}},                                             \ ctl:ruleEngine={{mode}},                                  \ deny"“`
	//
	// The example contains two `SecRules` each having distinct regex expression to match the `Cookie` header value during the second input analysis phase.
	//
	// For more information about custom protection rules, see [Custom Protection Rules](https://docs.cloud.oracle.com/iaas/Content/WAF/tasks/customprotectionrules.htm).
	//
	// For more information about ModSecurity syntax, see [Making Rules: The Basic Syntax](https://www.modsecurity.org/CRS/Documentation/making.html).
	//
	// For more information about ModSecurity's open source WAF rules, see [Mod Security's OWASP Core Rule Set documentation](https://www.modsecurity.org/CRS/Documentation/index.html).
	//
	// ** IMPORTANT **
	// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
	Template pulumi.StringInput
}

The set of arguments for constructing a CustomProtectionRule resource.

func (CustomProtectionRuleArgs) ElementType

func (CustomProtectionRuleArgs) ElementType() reflect.Type

type CustomProtectionRuleArray

type CustomProtectionRuleArray []CustomProtectionRuleInput

func (CustomProtectionRuleArray) ElementType

func (CustomProtectionRuleArray) ElementType() reflect.Type

func (CustomProtectionRuleArray) ToCustomProtectionRuleArrayOutput

func (i CustomProtectionRuleArray) ToCustomProtectionRuleArrayOutput() CustomProtectionRuleArrayOutput

func (CustomProtectionRuleArray) ToCustomProtectionRuleArrayOutputWithContext

func (i CustomProtectionRuleArray) ToCustomProtectionRuleArrayOutputWithContext(ctx context.Context) CustomProtectionRuleArrayOutput

type CustomProtectionRuleArrayInput

type CustomProtectionRuleArrayInput interface {
	pulumi.Input

	ToCustomProtectionRuleArrayOutput() CustomProtectionRuleArrayOutput
	ToCustomProtectionRuleArrayOutputWithContext(context.Context) CustomProtectionRuleArrayOutput
}

CustomProtectionRuleArrayInput is an input type that accepts CustomProtectionRuleArray and CustomProtectionRuleArrayOutput values. You can construct a concrete instance of `CustomProtectionRuleArrayInput` via:

CustomProtectionRuleArray{ CustomProtectionRuleArgs{...} }

type CustomProtectionRuleArrayOutput

type CustomProtectionRuleArrayOutput struct{ *pulumi.OutputState }

func (CustomProtectionRuleArrayOutput) ElementType

func (CustomProtectionRuleArrayOutput) Index

func (CustomProtectionRuleArrayOutput) ToCustomProtectionRuleArrayOutput

func (o CustomProtectionRuleArrayOutput) ToCustomProtectionRuleArrayOutput() CustomProtectionRuleArrayOutput

func (CustomProtectionRuleArrayOutput) ToCustomProtectionRuleArrayOutputWithContext

func (o CustomProtectionRuleArrayOutput) ToCustomProtectionRuleArrayOutputWithContext(ctx context.Context) CustomProtectionRuleArrayOutput

type CustomProtectionRuleInput

type CustomProtectionRuleInput interface {
	pulumi.Input

	ToCustomProtectionRuleOutput() CustomProtectionRuleOutput
	ToCustomProtectionRuleOutputWithContext(ctx context.Context) CustomProtectionRuleOutput
}

type CustomProtectionRuleMap

type CustomProtectionRuleMap map[string]CustomProtectionRuleInput

func (CustomProtectionRuleMap) ElementType

func (CustomProtectionRuleMap) ElementType() reflect.Type

func (CustomProtectionRuleMap) ToCustomProtectionRuleMapOutput

func (i CustomProtectionRuleMap) ToCustomProtectionRuleMapOutput() CustomProtectionRuleMapOutput

func (CustomProtectionRuleMap) ToCustomProtectionRuleMapOutputWithContext

func (i CustomProtectionRuleMap) ToCustomProtectionRuleMapOutputWithContext(ctx context.Context) CustomProtectionRuleMapOutput

type CustomProtectionRuleMapInput

type CustomProtectionRuleMapInput interface {
	pulumi.Input

	ToCustomProtectionRuleMapOutput() CustomProtectionRuleMapOutput
	ToCustomProtectionRuleMapOutputWithContext(context.Context) CustomProtectionRuleMapOutput
}

CustomProtectionRuleMapInput is an input type that accepts CustomProtectionRuleMap and CustomProtectionRuleMapOutput values. You can construct a concrete instance of `CustomProtectionRuleMapInput` via:

CustomProtectionRuleMap{ "key": CustomProtectionRuleArgs{...} }

type CustomProtectionRuleMapOutput

type CustomProtectionRuleMapOutput struct{ *pulumi.OutputState }

func (CustomProtectionRuleMapOutput) ElementType

func (CustomProtectionRuleMapOutput) MapIndex

func (CustomProtectionRuleMapOutput) ToCustomProtectionRuleMapOutput

func (o CustomProtectionRuleMapOutput) ToCustomProtectionRuleMapOutput() CustomProtectionRuleMapOutput

func (CustomProtectionRuleMapOutput) ToCustomProtectionRuleMapOutputWithContext

func (o CustomProtectionRuleMapOutput) ToCustomProtectionRuleMapOutputWithContext(ctx context.Context) CustomProtectionRuleMapOutput

type CustomProtectionRuleOutput

type CustomProtectionRuleOutput struct{ *pulumi.OutputState }

func (CustomProtectionRuleOutput) CompartmentId added in v0.4.0

(Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment in which to create the custom protection rule.

func (CustomProtectionRuleOutput) DefinedTags added in v0.4.0

(Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Operations.CostCenter": "42"}`

func (CustomProtectionRuleOutput) Description added in v0.4.0

(Updatable) A description for the Custom Protection rule.

func (CustomProtectionRuleOutput) DisplayName added in v0.4.0

(Updatable) A user-friendly name for the custom protection rule.

func (CustomProtectionRuleOutput) ElementType

func (CustomProtectionRuleOutput) ElementType() reflect.Type

func (CustomProtectionRuleOutput) FreeformTags added in v0.4.0

func (o CustomProtectionRuleOutput) FreeformTags() pulumi.MapOutput

(Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Department": "Finance"}`

func (CustomProtectionRuleOutput) ModSecurityRuleIds added in v0.4.0

func (o CustomProtectionRuleOutput) ModSecurityRuleIds() pulumi.StringArrayOutput

The auto-generated ID for the custom protection rule. These IDs are referenced in logs.

func (CustomProtectionRuleOutput) State added in v0.4.0

The current lifecycle state of the custom protection rule.

func (CustomProtectionRuleOutput) Template added in v0.4.0

(Updatable) The template text of the custom protection rule. All custom protection rules are expressed in ModSecurity Rule Language.

Additionally, each rule must include two placeholder variables that are updated by the WAF service upon publication of the rule.

`id: {{id_1}}` - This field is populated with a unique rule ID generated by the WAF service which identifies a `SecRule`. More than one `SecRule` can be defined in the `template` field of a CreateCustomSecurityRule call. The value of the first `SecRule` must be `id: {{id_1}}` and the `id` field of each subsequent `SecRule` should increase by one, as shown in the example.

`ctl:ruleEngine={{mode}}` - The action to be taken when the criteria of the `SecRule` are met, either `OFF`, `DETECT` or `BLOCK`. This field is automatically populated with the corresponding value of the `action` field of the `CustomProtectionRuleSetting` schema when the `WafConfig` is updated.

*Example:* ```SecRule REQUEST_COOKIES "regex matching SQL injection - part 1/2" \ "phase:2, \ msg:'Detects chained SQL injection attempts 1/2.', \ id: {{id_1}}, \ ctl:ruleEngine={{mode}}, \ deny" SecRule REQUEST_COOKIES "regex matching SQL injection - part 2/2" \ "phase:2, \ msg:'Detects chained SQL injection attempts 2/2.', \ id: {{id_2}}, \ ctl:ruleEngine={{mode}}, \ deny"```

The example contains two `SecRules` each having distinct regex expression to match the `Cookie` header value during the second input analysis phase.

For more information about custom protection rules, see [Custom Protection Rules](https://docs.cloud.oracle.com/iaas/Content/WAF/tasks/customprotectionrules.htm).

For more information about ModSecurity syntax, see [Making Rules: The Basic Syntax](https://www.modsecurity.org/CRS/Documentation/making.html).

For more information about ModSecurity's open source WAF rules, see [Mod Security's OWASP Core Rule Set documentation](https://www.modsecurity.org/CRS/Documentation/index.html).

** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

func (CustomProtectionRuleOutput) TimeCreated added in v0.4.0

The date and time the protection rule was created, expressed in RFC 3339 timestamp format.

func (CustomProtectionRuleOutput) ToCustomProtectionRuleOutput

func (o CustomProtectionRuleOutput) ToCustomProtectionRuleOutput() CustomProtectionRuleOutput

func (CustomProtectionRuleOutput) ToCustomProtectionRuleOutputWithContext

func (o CustomProtectionRuleOutput) ToCustomProtectionRuleOutputWithContext(ctx context.Context) CustomProtectionRuleOutput

type CustomProtectionRuleState

type CustomProtectionRuleState struct {
	// (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment in which to create the custom protection rule.
	CompartmentId pulumi.StringPtrInput
	// (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Operations.CostCenter": "42"}`
	DefinedTags pulumi.MapInput
	// (Updatable) A description for the Custom Protection rule.
	Description pulumi.StringPtrInput
	// (Updatable) A user-friendly name for the custom protection rule.
	DisplayName pulumi.StringPtrInput
	// (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Department": "Finance"}`
	FreeformTags pulumi.MapInput
	// The auto-generated ID for the custom protection rule. These IDs are referenced in logs.
	ModSecurityRuleIds pulumi.StringArrayInput
	// The current lifecycle state of the custom protection rule.
	State pulumi.StringPtrInput
	// (Updatable) The template text of the custom protection rule. All custom protection rules are expressed in ModSecurity Rule Language.
	//
	// Additionally, each rule must include two placeholder variables that are updated by the WAF service upon publication of the rule.
	//
	// `id: {{id_1}}` - This field is populated with a unique rule ID generated by the WAF service which identifies a `SecRule`. More than one `SecRule` can be defined in the `template` field of a CreateCustomSecurityRule call. The value of the first `SecRule` must be `id: {{id_1}}` and the `id` field of each subsequent `SecRule` should increase by one, as shown in the example.
	//
	// `ctl:ruleEngine={{mode}}` - The action to be taken when the criteria of the `SecRule` are met, either `OFF`, `DETECT` or `BLOCK`. This field is automatically populated with the corresponding value of the `action` field of the `CustomProtectionRuleSetting` schema when the `WafConfig` is updated.
	//
	// *Example:* “`SecRule REQUEST_COOKIES "regex matching SQL injection - part 1/2" \ "phase:2,                                                 \ msg:'Detects chained SQL injection attempts 1/2.',        \ id: {{id_1}},                                             \ ctl:ruleEngine={{mode}},                                  \ deny" SecRule REQUEST_COOKIES "regex matching SQL injection - part 2/2" \ "phase:2,                                                 \ msg:'Detects chained SQL injection attempts 2/2.',        \ id: {{id_2}},                                             \ ctl:ruleEngine={{mode}},                                  \ deny"“`
	//
	// The example contains two `SecRules` each having distinct regex expression to match the `Cookie` header value during the second input analysis phase.
	//
	// For more information about custom protection rules, see [Custom Protection Rules](https://docs.cloud.oracle.com/iaas/Content/WAF/tasks/customprotectionrules.htm).
	//
	// For more information about ModSecurity syntax, see [Making Rules: The Basic Syntax](https://www.modsecurity.org/CRS/Documentation/making.html).
	//
	// For more information about ModSecurity's open source WAF rules, see [Mod Security's OWASP Core Rule Set documentation](https://www.modsecurity.org/CRS/Documentation/index.html).
	//
	// ** IMPORTANT **
	// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
	Template pulumi.StringPtrInput
	// The date and time the protection rule was created, expressed in RFC 3339 timestamp format.
	TimeCreated pulumi.StringPtrInput
}

func (CustomProtectionRuleState) ElementType

func (CustomProtectionRuleState) ElementType() reflect.Type

type GetAddressListsAddressList

type GetAddressListsAddressList struct {
	// The total number of unique IP addresses in the address list.
	AddressCount float64 `pulumi:"addressCount"`
	// The list of IP addresses or CIDR notations.
	Addresses []string `pulumi:"addresses"`
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. This number is generated when the compartment is created.
	CompartmentId string `pulumi:"compartmentId"`
	// Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Operations.CostCenter": "42"}`
	DefinedTags map[string]interface{} `pulumi:"definedTags"`
	// The user-friendly name of the address list.
	DisplayName string `pulumi:"displayName"`
	// Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Department": "Finance"}`
	FreeformTags map[string]interface{} `pulumi:"freeformTags"`
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the address list.
	Id string `pulumi:"id"`
	// The current lifecycle state of the address list.
	State string `pulumi:"state"`
	// The date and time the address list was created, expressed in RFC 3339 timestamp format.
	TimeCreated string `pulumi:"timeCreated"`
}

type GetAddressListsAddressListArgs

type GetAddressListsAddressListArgs struct {
	// The total number of unique IP addresses in the address list.
	AddressCount pulumi.Float64Input `pulumi:"addressCount"`
	// The list of IP addresses or CIDR notations.
	Addresses pulumi.StringArrayInput `pulumi:"addresses"`
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. This number is generated when the compartment is created.
	CompartmentId pulumi.StringInput `pulumi:"compartmentId"`
	// Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Operations.CostCenter": "42"}`
	DefinedTags pulumi.MapInput `pulumi:"definedTags"`
	// The user-friendly name of the address list.
	DisplayName pulumi.StringInput `pulumi:"displayName"`
	// Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Department": "Finance"}`
	FreeformTags pulumi.MapInput `pulumi:"freeformTags"`
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the address list.
	Id pulumi.StringInput `pulumi:"id"`
	// The current lifecycle state of the address list.
	State pulumi.StringInput `pulumi:"state"`
	// The date and time the address list was created, expressed in RFC 3339 timestamp format.
	TimeCreated pulumi.StringInput `pulumi:"timeCreated"`
}

func (GetAddressListsAddressListArgs) ElementType

func (GetAddressListsAddressListArgs) ToGetAddressListsAddressListOutput

func (i GetAddressListsAddressListArgs) ToGetAddressListsAddressListOutput() GetAddressListsAddressListOutput

func (GetAddressListsAddressListArgs) ToGetAddressListsAddressListOutputWithContext

func (i GetAddressListsAddressListArgs) ToGetAddressListsAddressListOutputWithContext(ctx context.Context) GetAddressListsAddressListOutput

type GetAddressListsAddressListArray

type GetAddressListsAddressListArray []GetAddressListsAddressListInput

func (GetAddressListsAddressListArray) ElementType

func (GetAddressListsAddressListArray) ToGetAddressListsAddressListArrayOutput

func (i GetAddressListsAddressListArray) ToGetAddressListsAddressListArrayOutput() GetAddressListsAddressListArrayOutput

func (GetAddressListsAddressListArray) ToGetAddressListsAddressListArrayOutputWithContext

func (i GetAddressListsAddressListArray) ToGetAddressListsAddressListArrayOutputWithContext(ctx context.Context) GetAddressListsAddressListArrayOutput

type GetAddressListsAddressListArrayInput

type GetAddressListsAddressListArrayInput interface {
	pulumi.Input

	ToGetAddressListsAddressListArrayOutput() GetAddressListsAddressListArrayOutput
	ToGetAddressListsAddressListArrayOutputWithContext(context.Context) GetAddressListsAddressListArrayOutput
}

GetAddressListsAddressListArrayInput is an input type that accepts GetAddressListsAddressListArray and GetAddressListsAddressListArrayOutput values. You can construct a concrete instance of `GetAddressListsAddressListArrayInput` via:

GetAddressListsAddressListArray{ GetAddressListsAddressListArgs{...} }

type GetAddressListsAddressListArrayOutput

type GetAddressListsAddressListArrayOutput struct{ *pulumi.OutputState }

func (GetAddressListsAddressListArrayOutput) ElementType

func (GetAddressListsAddressListArrayOutput) Index

func (GetAddressListsAddressListArrayOutput) ToGetAddressListsAddressListArrayOutput

func (o GetAddressListsAddressListArrayOutput) ToGetAddressListsAddressListArrayOutput() GetAddressListsAddressListArrayOutput

func (GetAddressListsAddressListArrayOutput) ToGetAddressListsAddressListArrayOutputWithContext

func (o GetAddressListsAddressListArrayOutput) ToGetAddressListsAddressListArrayOutputWithContext(ctx context.Context) GetAddressListsAddressListArrayOutput

type GetAddressListsAddressListInput

type GetAddressListsAddressListInput interface {
	pulumi.Input

	ToGetAddressListsAddressListOutput() GetAddressListsAddressListOutput
	ToGetAddressListsAddressListOutputWithContext(context.Context) GetAddressListsAddressListOutput
}

GetAddressListsAddressListInput is an input type that accepts GetAddressListsAddressListArgs and GetAddressListsAddressListOutput values. You can construct a concrete instance of `GetAddressListsAddressListInput` via:

GetAddressListsAddressListArgs{...}

type GetAddressListsAddressListOutput

type GetAddressListsAddressListOutput struct{ *pulumi.OutputState }

func (GetAddressListsAddressListOutput) AddressCount

The total number of unique IP addresses in the address list.

func (GetAddressListsAddressListOutput) Addresses

The list of IP addresses or CIDR notations.

func (GetAddressListsAddressListOutput) CompartmentId

The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. This number is generated when the compartment is created.

func (GetAddressListsAddressListOutput) DefinedTags

Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Operations.CostCenter": "42"}`

func (GetAddressListsAddressListOutput) DisplayName

The user-friendly name of the address list.

func (GetAddressListsAddressListOutput) ElementType

func (GetAddressListsAddressListOutput) FreeformTags

Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Department": "Finance"}`

func (GetAddressListsAddressListOutput) Id

The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the address list.

func (GetAddressListsAddressListOutput) State

The current lifecycle state of the address list.

func (GetAddressListsAddressListOutput) TimeCreated

The date and time the address list was created, expressed in RFC 3339 timestamp format.

func (GetAddressListsAddressListOutput) ToGetAddressListsAddressListOutput

func (o GetAddressListsAddressListOutput) ToGetAddressListsAddressListOutput() GetAddressListsAddressListOutput

func (GetAddressListsAddressListOutput) ToGetAddressListsAddressListOutputWithContext

func (o GetAddressListsAddressListOutput) ToGetAddressListsAddressListOutputWithContext(ctx context.Context) GetAddressListsAddressListOutput

type GetAddressListsArgs

type GetAddressListsArgs struct {
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. This number is generated when the compartment is created.
	CompartmentId string                  `pulumi:"compartmentId"`
	Filters       []GetAddressListsFilter `pulumi:"filters"`
	// Filter address lists using a list of address lists OCIDs.
	Ids []string `pulumi:"ids"`
	// Filter address lists using a list of names.
	Names []string `pulumi:"names"`
	// Filter address lists using a list of lifecycle states.
	States []string `pulumi:"states"`
	// A filter that matches address lists created on or after the specified date-time.
	TimeCreatedGreaterThanOrEqualTo *string `pulumi:"timeCreatedGreaterThanOrEqualTo"`
	// A filter that matches address lists created before the specified date-time.
	TimeCreatedLessThan *string `pulumi:"timeCreatedLessThan"`
}

A collection of arguments for invoking getAddressLists.

type GetAddressListsFilter

type GetAddressListsFilter struct {
	Name   string   `pulumi:"name"`
	Regex  *bool    `pulumi:"regex"`
	Values []string `pulumi:"values"`
}

type GetAddressListsFilterArgs

type GetAddressListsFilterArgs struct {
	Name   pulumi.StringInput      `pulumi:"name"`
	Regex  pulumi.BoolPtrInput     `pulumi:"regex"`
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetAddressListsFilterArgs) ElementType

func (GetAddressListsFilterArgs) ElementType() reflect.Type

func (GetAddressListsFilterArgs) ToGetAddressListsFilterOutput

func (i GetAddressListsFilterArgs) ToGetAddressListsFilterOutput() GetAddressListsFilterOutput

func (GetAddressListsFilterArgs) ToGetAddressListsFilterOutputWithContext

func (i GetAddressListsFilterArgs) ToGetAddressListsFilterOutputWithContext(ctx context.Context) GetAddressListsFilterOutput

type GetAddressListsFilterArray

type GetAddressListsFilterArray []GetAddressListsFilterInput

func (GetAddressListsFilterArray) ElementType

func (GetAddressListsFilterArray) ElementType() reflect.Type

func (GetAddressListsFilterArray) ToGetAddressListsFilterArrayOutput

func (i GetAddressListsFilterArray) ToGetAddressListsFilterArrayOutput() GetAddressListsFilterArrayOutput

func (GetAddressListsFilterArray) ToGetAddressListsFilterArrayOutputWithContext

func (i GetAddressListsFilterArray) ToGetAddressListsFilterArrayOutputWithContext(ctx context.Context) GetAddressListsFilterArrayOutput

type GetAddressListsFilterArrayInput

type GetAddressListsFilterArrayInput interface {
	pulumi.Input

	ToGetAddressListsFilterArrayOutput() GetAddressListsFilterArrayOutput
	ToGetAddressListsFilterArrayOutputWithContext(context.Context) GetAddressListsFilterArrayOutput
}

GetAddressListsFilterArrayInput is an input type that accepts GetAddressListsFilterArray and GetAddressListsFilterArrayOutput values. You can construct a concrete instance of `GetAddressListsFilterArrayInput` via:

GetAddressListsFilterArray{ GetAddressListsFilterArgs{...} }

type GetAddressListsFilterArrayOutput

type GetAddressListsFilterArrayOutput struct{ *pulumi.OutputState }

func (GetAddressListsFilterArrayOutput) ElementType

func (GetAddressListsFilterArrayOutput) Index

func (GetAddressListsFilterArrayOutput) ToGetAddressListsFilterArrayOutput

func (o GetAddressListsFilterArrayOutput) ToGetAddressListsFilterArrayOutput() GetAddressListsFilterArrayOutput

func (GetAddressListsFilterArrayOutput) ToGetAddressListsFilterArrayOutputWithContext

func (o GetAddressListsFilterArrayOutput) ToGetAddressListsFilterArrayOutputWithContext(ctx context.Context) GetAddressListsFilterArrayOutput

type GetAddressListsFilterInput

type GetAddressListsFilterInput interface {
	pulumi.Input

	ToGetAddressListsFilterOutput() GetAddressListsFilterOutput
	ToGetAddressListsFilterOutputWithContext(context.Context) GetAddressListsFilterOutput
}

GetAddressListsFilterInput is an input type that accepts GetAddressListsFilterArgs and GetAddressListsFilterOutput values. You can construct a concrete instance of `GetAddressListsFilterInput` via:

GetAddressListsFilterArgs{...}

type GetAddressListsFilterOutput

type GetAddressListsFilterOutput struct{ *pulumi.OutputState }

func (GetAddressListsFilterOutput) ElementType

func (GetAddressListsFilterOutput) Name

func (GetAddressListsFilterOutput) Regex

func (GetAddressListsFilterOutput) ToGetAddressListsFilterOutput

func (o GetAddressListsFilterOutput) ToGetAddressListsFilterOutput() GetAddressListsFilterOutput

func (GetAddressListsFilterOutput) ToGetAddressListsFilterOutputWithContext

func (o GetAddressListsFilterOutput) ToGetAddressListsFilterOutputWithContext(ctx context.Context) GetAddressListsFilterOutput

func (GetAddressListsFilterOutput) Values

type GetAddressListsOutputArgs

type GetAddressListsOutputArgs struct {
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. This number is generated when the compartment is created.
	CompartmentId pulumi.StringInput              `pulumi:"compartmentId"`
	Filters       GetAddressListsFilterArrayInput `pulumi:"filters"`
	// Filter address lists using a list of address lists OCIDs.
	Ids pulumi.StringArrayInput `pulumi:"ids"`
	// Filter address lists using a list of names.
	Names pulumi.StringArrayInput `pulumi:"names"`
	// Filter address lists using a list of lifecycle states.
	States pulumi.StringArrayInput `pulumi:"states"`
	// A filter that matches address lists created on or after the specified date-time.
	TimeCreatedGreaterThanOrEqualTo pulumi.StringPtrInput `pulumi:"timeCreatedGreaterThanOrEqualTo"`
	// A filter that matches address lists created before the specified date-time.
	TimeCreatedLessThan pulumi.StringPtrInput `pulumi:"timeCreatedLessThan"`
}

A collection of arguments for invoking getAddressLists.

func (GetAddressListsOutputArgs) ElementType

func (GetAddressListsOutputArgs) ElementType() reflect.Type

type GetAddressListsResult

type GetAddressListsResult struct {
	// The list of address_lists.
	AddressLists []GetAddressListsAddressList `pulumi:"addressLists"`
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the address list's compartment.
	CompartmentId string                  `pulumi:"compartmentId"`
	Filters       []GetAddressListsFilter `pulumi:"filters"`
	// The provider-assigned unique ID for this managed resource.
	Id                              string   `pulumi:"id"`
	Ids                             []string `pulumi:"ids"`
	Names                           []string `pulumi:"names"`
	States                          []string `pulumi:"states"`
	TimeCreatedGreaterThanOrEqualTo *string  `pulumi:"timeCreatedGreaterThanOrEqualTo"`
	TimeCreatedLessThan             *string  `pulumi:"timeCreatedLessThan"`
}

A collection of values returned by getAddressLists.

func GetAddressLists

func GetAddressLists(ctx *pulumi.Context, args *GetAddressListsArgs, opts ...pulumi.InvokeOption) (*GetAddressListsResult, error)

This data source provides the list of Address Lists in Oracle Cloud Infrastructure Web Application Acceleration and Security service.

Gets a list of address lists that can be used in a WAAS policy.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-oci/sdk/go/oci/Waas"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Waas.GetAddressLists(ctx, &waas.GetAddressListsArgs{
			CompartmentId:                   compartmentId,
			Ids:                             addressListIds,
			Names:                           addressListNames,
			States:                          addressListStates,
			TimeCreatedGreaterThanOrEqualTo: pulumi.StringRef(addressListTimeCreatedGreaterThanOrEqualTo),
			TimeCreatedLessThan:             pulumi.StringRef(addressListTimeCreatedLessThan),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetAddressListsResultOutput

type GetAddressListsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getAddressLists.

func (GetAddressListsResultOutput) AddressLists

The list of address_lists.

func (GetAddressListsResultOutput) CompartmentId

The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the address list's compartment.

func (GetAddressListsResultOutput) ElementType

func (GetAddressListsResultOutput) Filters

func (GetAddressListsResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetAddressListsResultOutput) Ids

func (GetAddressListsResultOutput) Names

func (GetAddressListsResultOutput) States

func (GetAddressListsResultOutput) TimeCreatedGreaterThanOrEqualTo

func (o GetAddressListsResultOutput) TimeCreatedGreaterThanOrEqualTo() pulumi.StringPtrOutput

func (GetAddressListsResultOutput) TimeCreatedLessThan

func (o GetAddressListsResultOutput) TimeCreatedLessThan() pulumi.StringPtrOutput

func (GetAddressListsResultOutput) ToGetAddressListsResultOutput

func (o GetAddressListsResultOutput) ToGetAddressListsResultOutput() GetAddressListsResultOutput

func (GetAddressListsResultOutput) ToGetAddressListsResultOutputWithContext

func (o GetAddressListsResultOutput) ToGetAddressListsResultOutputWithContext(ctx context.Context) GetAddressListsResultOutput

type GetCertificateExtension

type GetCertificateExtension struct {
	// The critical flag of the extension. Critical extensions must be processed, non-critical extensions can be ignored.
	IsCritical bool `pulumi:"isCritical"`
	// The certificate extension name.
	Name string `pulumi:"name"`
	// The certificate extension value.
	Value string `pulumi:"value"`
}

type GetCertificateExtensionArgs

type GetCertificateExtensionArgs struct {
	// The critical flag of the extension. Critical extensions must be processed, non-critical extensions can be ignored.
	IsCritical pulumi.BoolInput `pulumi:"isCritical"`
	// The certificate extension name.
	Name pulumi.StringInput `pulumi:"name"`
	// The certificate extension value.
	Value pulumi.StringInput `pulumi:"value"`
}

func (GetCertificateExtensionArgs) ElementType

func (GetCertificateExtensionArgs) ToGetCertificateExtensionOutput

func (i GetCertificateExtensionArgs) ToGetCertificateExtensionOutput() GetCertificateExtensionOutput

func (GetCertificateExtensionArgs) ToGetCertificateExtensionOutputWithContext

func (i GetCertificateExtensionArgs) ToGetCertificateExtensionOutputWithContext(ctx context.Context) GetCertificateExtensionOutput

type GetCertificateExtensionArray

type GetCertificateExtensionArray []GetCertificateExtensionInput

func (GetCertificateExtensionArray) ElementType

func (GetCertificateExtensionArray) ToGetCertificateExtensionArrayOutput

func (i GetCertificateExtensionArray) ToGetCertificateExtensionArrayOutput() GetCertificateExtensionArrayOutput

func (GetCertificateExtensionArray) ToGetCertificateExtensionArrayOutputWithContext

func (i GetCertificateExtensionArray) ToGetCertificateExtensionArrayOutputWithContext(ctx context.Context) GetCertificateExtensionArrayOutput

type GetCertificateExtensionArrayInput

type GetCertificateExtensionArrayInput interface {
	pulumi.Input

	ToGetCertificateExtensionArrayOutput() GetCertificateExtensionArrayOutput
	ToGetCertificateExtensionArrayOutputWithContext(context.Context) GetCertificateExtensionArrayOutput
}

GetCertificateExtensionArrayInput is an input type that accepts GetCertificateExtensionArray and GetCertificateExtensionArrayOutput values. You can construct a concrete instance of `GetCertificateExtensionArrayInput` via:

GetCertificateExtensionArray{ GetCertificateExtensionArgs{...} }

type GetCertificateExtensionArrayOutput

type GetCertificateExtensionArrayOutput struct{ *pulumi.OutputState }

func (GetCertificateExtensionArrayOutput) ElementType

func (GetCertificateExtensionArrayOutput) Index

func (GetCertificateExtensionArrayOutput) ToGetCertificateExtensionArrayOutput

func (o GetCertificateExtensionArrayOutput) ToGetCertificateExtensionArrayOutput() GetCertificateExtensionArrayOutput

func (GetCertificateExtensionArrayOutput) ToGetCertificateExtensionArrayOutputWithContext

func (o GetCertificateExtensionArrayOutput) ToGetCertificateExtensionArrayOutputWithContext(ctx context.Context) GetCertificateExtensionArrayOutput

type GetCertificateExtensionInput

type GetCertificateExtensionInput interface {
	pulumi.Input

	ToGetCertificateExtensionOutput() GetCertificateExtensionOutput
	ToGetCertificateExtensionOutputWithContext(context.Context) GetCertificateExtensionOutput
}

GetCertificateExtensionInput is an input type that accepts GetCertificateExtensionArgs and GetCertificateExtensionOutput values. You can construct a concrete instance of `GetCertificateExtensionInput` via:

GetCertificateExtensionArgs{...}

type GetCertificateExtensionOutput

type GetCertificateExtensionOutput struct{ *pulumi.OutputState }

func (GetCertificateExtensionOutput) ElementType

func (GetCertificateExtensionOutput) IsCritical

The critical flag of the extension. Critical extensions must be processed, non-critical extensions can be ignored.

func (GetCertificateExtensionOutput) Name

The certificate extension name.

func (GetCertificateExtensionOutput) ToGetCertificateExtensionOutput

func (o GetCertificateExtensionOutput) ToGetCertificateExtensionOutput() GetCertificateExtensionOutput

func (GetCertificateExtensionOutput) ToGetCertificateExtensionOutputWithContext

func (o GetCertificateExtensionOutput) ToGetCertificateExtensionOutputWithContext(ctx context.Context) GetCertificateExtensionOutput

func (GetCertificateExtensionOutput) Value

The certificate extension value.

type GetCertificateIssuerName

type GetCertificateIssuerName struct {
	// The fully qualified domain name used for DNS lookups of the server.
	CommonName string `pulumi:"commonName"`
	// ISO 3166-1 alpha-2 code of the country where the organization is located. For a list of codes, see [ISO's website](https://www.iso.org/obp/ui/#search/code/).
	Country string `pulumi:"country"`
	// The email address of the server's administrator.
	EmailAddress string `pulumi:"emailAddress"`
	// The city in which the organization is located.
	Locality string `pulumi:"locality"`
	// The organization name.
	Organization string `pulumi:"organization"`
	// The field to differentiate between divisions within an organization.
	OrganizationalUnit string `pulumi:"organizationalUnit"`
	// The province where the organization is located.
	StateProvince string `pulumi:"stateProvince"`
}

type GetCertificateIssuerNameArgs

type GetCertificateIssuerNameArgs struct {
	// The fully qualified domain name used for DNS lookups of the server.
	CommonName pulumi.StringInput `pulumi:"commonName"`
	// ISO 3166-1 alpha-2 code of the country where the organization is located. For a list of codes, see [ISO's website](https://www.iso.org/obp/ui/#search/code/).
	Country pulumi.StringInput `pulumi:"country"`
	// The email address of the server's administrator.
	EmailAddress pulumi.StringInput `pulumi:"emailAddress"`
	// The city in which the organization is located.
	Locality pulumi.StringInput `pulumi:"locality"`
	// The organization name.
	Organization pulumi.StringInput `pulumi:"organization"`
	// The field to differentiate between divisions within an organization.
	OrganizationalUnit pulumi.StringInput `pulumi:"organizationalUnit"`
	// The province where the organization is located.
	StateProvince pulumi.StringInput `pulumi:"stateProvince"`
}

func (GetCertificateIssuerNameArgs) ElementType

func (GetCertificateIssuerNameArgs) ToGetCertificateIssuerNameOutput

func (i GetCertificateIssuerNameArgs) ToGetCertificateIssuerNameOutput() GetCertificateIssuerNameOutput

func (GetCertificateIssuerNameArgs) ToGetCertificateIssuerNameOutputWithContext

func (i GetCertificateIssuerNameArgs) ToGetCertificateIssuerNameOutputWithContext(ctx context.Context) GetCertificateIssuerNameOutput

type GetCertificateIssuerNameArray

type GetCertificateIssuerNameArray []GetCertificateIssuerNameInput

func (GetCertificateIssuerNameArray) ElementType

func (GetCertificateIssuerNameArray) ToGetCertificateIssuerNameArrayOutput

func (i GetCertificateIssuerNameArray) ToGetCertificateIssuerNameArrayOutput() GetCertificateIssuerNameArrayOutput

func (GetCertificateIssuerNameArray) ToGetCertificateIssuerNameArrayOutputWithContext

func (i GetCertificateIssuerNameArray) ToGetCertificateIssuerNameArrayOutputWithContext(ctx context.Context) GetCertificateIssuerNameArrayOutput

type GetCertificateIssuerNameArrayInput

type GetCertificateIssuerNameArrayInput interface {
	pulumi.Input

	ToGetCertificateIssuerNameArrayOutput() GetCertificateIssuerNameArrayOutput
	ToGetCertificateIssuerNameArrayOutputWithContext(context.Context) GetCertificateIssuerNameArrayOutput
}

GetCertificateIssuerNameArrayInput is an input type that accepts GetCertificateIssuerNameArray and GetCertificateIssuerNameArrayOutput values. You can construct a concrete instance of `GetCertificateIssuerNameArrayInput` via:

GetCertificateIssuerNameArray{ GetCertificateIssuerNameArgs{...} }

type GetCertificateIssuerNameArrayOutput

type GetCertificateIssuerNameArrayOutput struct{ *pulumi.OutputState }

func (GetCertificateIssuerNameArrayOutput) ElementType

func (GetCertificateIssuerNameArrayOutput) Index

func (GetCertificateIssuerNameArrayOutput) ToGetCertificateIssuerNameArrayOutput

func (o GetCertificateIssuerNameArrayOutput) ToGetCertificateIssuerNameArrayOutput() GetCertificateIssuerNameArrayOutput

func (GetCertificateIssuerNameArrayOutput) ToGetCertificateIssuerNameArrayOutputWithContext

func (o GetCertificateIssuerNameArrayOutput) ToGetCertificateIssuerNameArrayOutputWithContext(ctx context.Context) GetCertificateIssuerNameArrayOutput

type GetCertificateIssuerNameInput

type GetCertificateIssuerNameInput interface {
	pulumi.Input

	ToGetCertificateIssuerNameOutput() GetCertificateIssuerNameOutput
	ToGetCertificateIssuerNameOutputWithContext(context.Context) GetCertificateIssuerNameOutput
}

GetCertificateIssuerNameInput is an input type that accepts GetCertificateIssuerNameArgs and GetCertificateIssuerNameOutput values. You can construct a concrete instance of `GetCertificateIssuerNameInput` via:

GetCertificateIssuerNameArgs{...}

type GetCertificateIssuerNameOutput

type GetCertificateIssuerNameOutput struct{ *pulumi.OutputState }

func (GetCertificateIssuerNameOutput) CommonName

The fully qualified domain name used for DNS lookups of the server.

func (GetCertificateIssuerNameOutput) Country

ISO 3166-1 alpha-2 code of the country where the organization is located. For a list of codes, see [ISO's website](https://www.iso.org/obp/ui/#search/code/).

func (GetCertificateIssuerNameOutput) ElementType

func (GetCertificateIssuerNameOutput) EmailAddress

The email address of the server's administrator.

func (GetCertificateIssuerNameOutput) Locality

The city in which the organization is located.

func (GetCertificateIssuerNameOutput) Organization

The organization name.

func (GetCertificateIssuerNameOutput) OrganizationalUnit

func (o GetCertificateIssuerNameOutput) OrganizationalUnit() pulumi.StringOutput

The field to differentiate between divisions within an organization.

func (GetCertificateIssuerNameOutput) StateProvince

The province where the organization is located.

func (GetCertificateIssuerNameOutput) ToGetCertificateIssuerNameOutput

func (o GetCertificateIssuerNameOutput) ToGetCertificateIssuerNameOutput() GetCertificateIssuerNameOutput

func (GetCertificateIssuerNameOutput) ToGetCertificateIssuerNameOutputWithContext

func (o GetCertificateIssuerNameOutput) ToGetCertificateIssuerNameOutputWithContext(ctx context.Context) GetCertificateIssuerNameOutput

type GetCertificatePublicKeyInfo

type GetCertificatePublicKeyInfo struct {
	// The algorithm identifier and parameters for the public key.
	Algorithm string `pulumi:"algorithm"`
	// The private key exponent.
	Exponent int `pulumi:"exponent"`
	// The number of bits in a key used by a cryptographic algorithm.
	KeySize int `pulumi:"keySize"`
}

type GetCertificatePublicKeyInfoArgs

type GetCertificatePublicKeyInfoArgs struct {
	// The algorithm identifier and parameters for the public key.
	Algorithm pulumi.StringInput `pulumi:"algorithm"`
	// The private key exponent.
	Exponent pulumi.IntInput `pulumi:"exponent"`
	// The number of bits in a key used by a cryptographic algorithm.
	KeySize pulumi.IntInput `pulumi:"keySize"`
}

func (GetCertificatePublicKeyInfoArgs) ElementType

func (GetCertificatePublicKeyInfoArgs) ToGetCertificatePublicKeyInfoOutput

func (i GetCertificatePublicKeyInfoArgs) ToGetCertificatePublicKeyInfoOutput() GetCertificatePublicKeyInfoOutput

func (GetCertificatePublicKeyInfoArgs) ToGetCertificatePublicKeyInfoOutputWithContext

func (i GetCertificatePublicKeyInfoArgs) ToGetCertificatePublicKeyInfoOutputWithContext(ctx context.Context) GetCertificatePublicKeyInfoOutput

type GetCertificatePublicKeyInfoArray

type GetCertificatePublicKeyInfoArray []GetCertificatePublicKeyInfoInput

func (GetCertificatePublicKeyInfoArray) ElementType

func (GetCertificatePublicKeyInfoArray) ToGetCertificatePublicKeyInfoArrayOutput

func (i GetCertificatePublicKeyInfoArray) ToGetCertificatePublicKeyInfoArrayOutput() GetCertificatePublicKeyInfoArrayOutput

func (GetCertificatePublicKeyInfoArray) ToGetCertificatePublicKeyInfoArrayOutputWithContext

func (i GetCertificatePublicKeyInfoArray) ToGetCertificatePublicKeyInfoArrayOutputWithContext(ctx context.Context) GetCertificatePublicKeyInfoArrayOutput

type GetCertificatePublicKeyInfoArrayInput

type GetCertificatePublicKeyInfoArrayInput interface {
	pulumi.Input

	ToGetCertificatePublicKeyInfoArrayOutput() GetCertificatePublicKeyInfoArrayOutput
	ToGetCertificatePublicKeyInfoArrayOutputWithContext(context.Context) GetCertificatePublicKeyInfoArrayOutput
}

GetCertificatePublicKeyInfoArrayInput is an input type that accepts GetCertificatePublicKeyInfoArray and GetCertificatePublicKeyInfoArrayOutput values. You can construct a concrete instance of `GetCertificatePublicKeyInfoArrayInput` via:

GetCertificatePublicKeyInfoArray{ GetCertificatePublicKeyInfoArgs{...} }

type GetCertificatePublicKeyInfoArrayOutput

type GetCertificatePublicKeyInfoArrayOutput struct{ *pulumi.OutputState }

func (GetCertificatePublicKeyInfoArrayOutput) ElementType

func (GetCertificatePublicKeyInfoArrayOutput) Index

func (GetCertificatePublicKeyInfoArrayOutput) ToGetCertificatePublicKeyInfoArrayOutput

func (o GetCertificatePublicKeyInfoArrayOutput) ToGetCertificatePublicKeyInfoArrayOutput() GetCertificatePublicKeyInfoArrayOutput

func (GetCertificatePublicKeyInfoArrayOutput) ToGetCertificatePublicKeyInfoArrayOutputWithContext

func (o GetCertificatePublicKeyInfoArrayOutput) ToGetCertificatePublicKeyInfoArrayOutputWithContext(ctx context.Context) GetCertificatePublicKeyInfoArrayOutput

type GetCertificatePublicKeyInfoInput

type GetCertificatePublicKeyInfoInput interface {
	pulumi.Input

	ToGetCertificatePublicKeyInfoOutput() GetCertificatePublicKeyInfoOutput
	ToGetCertificatePublicKeyInfoOutputWithContext(context.Context) GetCertificatePublicKeyInfoOutput
}

GetCertificatePublicKeyInfoInput is an input type that accepts GetCertificatePublicKeyInfoArgs and GetCertificatePublicKeyInfoOutput values. You can construct a concrete instance of `GetCertificatePublicKeyInfoInput` via:

GetCertificatePublicKeyInfoArgs{...}

type GetCertificatePublicKeyInfoOutput

type GetCertificatePublicKeyInfoOutput struct{ *pulumi.OutputState }

func (GetCertificatePublicKeyInfoOutput) Algorithm

The algorithm identifier and parameters for the public key.

func (GetCertificatePublicKeyInfoOutput) ElementType

func (GetCertificatePublicKeyInfoOutput) Exponent

The private key exponent.

func (GetCertificatePublicKeyInfoOutput) KeySize

The number of bits in a key used by a cryptographic algorithm.

func (GetCertificatePublicKeyInfoOutput) ToGetCertificatePublicKeyInfoOutput

func (o GetCertificatePublicKeyInfoOutput) ToGetCertificatePublicKeyInfoOutput() GetCertificatePublicKeyInfoOutput

func (GetCertificatePublicKeyInfoOutput) ToGetCertificatePublicKeyInfoOutputWithContext

func (o GetCertificatePublicKeyInfoOutput) ToGetCertificatePublicKeyInfoOutputWithContext(ctx context.Context) GetCertificatePublicKeyInfoOutput

type GetCertificateSubjectName

type GetCertificateSubjectName struct {
	// The fully qualified domain name used for DNS lookups of the server.
	CommonName string `pulumi:"commonName"`
	// ISO 3166-1 alpha-2 code of the country where the organization is located. For a list of codes, see [ISO's website](https://www.iso.org/obp/ui/#search/code/).
	Country string `pulumi:"country"`
	// The email address of the server's administrator.
	EmailAddress string `pulumi:"emailAddress"`
	// The city in which the organization is located.
	Locality string `pulumi:"locality"`
	// The organization name.
	Organization string `pulumi:"organization"`
	// The field to differentiate between divisions within an organization.
	OrganizationalUnit string `pulumi:"organizationalUnit"`
	// The province where the organization is located.
	StateProvince string `pulumi:"stateProvince"`
}

type GetCertificateSubjectNameArgs

type GetCertificateSubjectNameArgs struct {
	// The fully qualified domain name used for DNS lookups of the server.
	CommonName pulumi.StringInput `pulumi:"commonName"`
	// ISO 3166-1 alpha-2 code of the country where the organization is located. For a list of codes, see [ISO's website](https://www.iso.org/obp/ui/#search/code/).
	Country pulumi.StringInput `pulumi:"country"`
	// The email address of the server's administrator.
	EmailAddress pulumi.StringInput `pulumi:"emailAddress"`
	// The city in which the organization is located.
	Locality pulumi.StringInput `pulumi:"locality"`
	// The organization name.
	Organization pulumi.StringInput `pulumi:"organization"`
	// The field to differentiate between divisions within an organization.
	OrganizationalUnit pulumi.StringInput `pulumi:"organizationalUnit"`
	// The province where the organization is located.
	StateProvince pulumi.StringInput `pulumi:"stateProvince"`
}

func (GetCertificateSubjectNameArgs) ElementType

func (GetCertificateSubjectNameArgs) ToGetCertificateSubjectNameOutput

func (i GetCertificateSubjectNameArgs) ToGetCertificateSubjectNameOutput() GetCertificateSubjectNameOutput

func (GetCertificateSubjectNameArgs) ToGetCertificateSubjectNameOutputWithContext

func (i GetCertificateSubjectNameArgs) ToGetCertificateSubjectNameOutputWithContext(ctx context.Context) GetCertificateSubjectNameOutput

type GetCertificateSubjectNameArray

type GetCertificateSubjectNameArray []GetCertificateSubjectNameInput

func (GetCertificateSubjectNameArray) ElementType

func (GetCertificateSubjectNameArray) ToGetCertificateSubjectNameArrayOutput

func (i GetCertificateSubjectNameArray) ToGetCertificateSubjectNameArrayOutput() GetCertificateSubjectNameArrayOutput

func (GetCertificateSubjectNameArray) ToGetCertificateSubjectNameArrayOutputWithContext

func (i GetCertificateSubjectNameArray) ToGetCertificateSubjectNameArrayOutputWithContext(ctx context.Context) GetCertificateSubjectNameArrayOutput

type GetCertificateSubjectNameArrayInput

type GetCertificateSubjectNameArrayInput interface {
	pulumi.Input

	ToGetCertificateSubjectNameArrayOutput() GetCertificateSubjectNameArrayOutput
	ToGetCertificateSubjectNameArrayOutputWithContext(context.Context) GetCertificateSubjectNameArrayOutput
}

GetCertificateSubjectNameArrayInput is an input type that accepts GetCertificateSubjectNameArray and GetCertificateSubjectNameArrayOutput values. You can construct a concrete instance of `GetCertificateSubjectNameArrayInput` via:

GetCertificateSubjectNameArray{ GetCertificateSubjectNameArgs{...} }

type GetCertificateSubjectNameArrayOutput

type GetCertificateSubjectNameArrayOutput struct{ *pulumi.OutputState }

func (GetCertificateSubjectNameArrayOutput) ElementType

func (GetCertificateSubjectNameArrayOutput) Index

func (GetCertificateSubjectNameArrayOutput) ToGetCertificateSubjectNameArrayOutput

func (o GetCertificateSubjectNameArrayOutput) ToGetCertificateSubjectNameArrayOutput() GetCertificateSubjectNameArrayOutput

func (GetCertificateSubjectNameArrayOutput) ToGetCertificateSubjectNameArrayOutputWithContext

func (o GetCertificateSubjectNameArrayOutput) ToGetCertificateSubjectNameArrayOutputWithContext(ctx context.Context) GetCertificateSubjectNameArrayOutput

type GetCertificateSubjectNameInput

type GetCertificateSubjectNameInput interface {
	pulumi.Input

	ToGetCertificateSubjectNameOutput() GetCertificateSubjectNameOutput
	ToGetCertificateSubjectNameOutputWithContext(context.Context) GetCertificateSubjectNameOutput
}

GetCertificateSubjectNameInput is an input type that accepts GetCertificateSubjectNameArgs and GetCertificateSubjectNameOutput values. You can construct a concrete instance of `GetCertificateSubjectNameInput` via:

GetCertificateSubjectNameArgs{...}

type GetCertificateSubjectNameOutput

type GetCertificateSubjectNameOutput struct{ *pulumi.OutputState }

func (GetCertificateSubjectNameOutput) CommonName

The fully qualified domain name used for DNS lookups of the server.

func (GetCertificateSubjectNameOutput) Country

ISO 3166-1 alpha-2 code of the country where the organization is located. For a list of codes, see [ISO's website](https://www.iso.org/obp/ui/#search/code/).

func (GetCertificateSubjectNameOutput) ElementType

func (GetCertificateSubjectNameOutput) EmailAddress

The email address of the server's administrator.

func (GetCertificateSubjectNameOutput) Locality

The city in which the organization is located.

func (GetCertificateSubjectNameOutput) Organization

The organization name.

func (GetCertificateSubjectNameOutput) OrganizationalUnit

func (o GetCertificateSubjectNameOutput) OrganizationalUnit() pulumi.StringOutput

The field to differentiate between divisions within an organization.

func (GetCertificateSubjectNameOutput) StateProvince

The province where the organization is located.

func (GetCertificateSubjectNameOutput) ToGetCertificateSubjectNameOutput

func (o GetCertificateSubjectNameOutput) ToGetCertificateSubjectNameOutput() GetCertificateSubjectNameOutput

func (GetCertificateSubjectNameOutput) ToGetCertificateSubjectNameOutputWithContext

func (o GetCertificateSubjectNameOutput) ToGetCertificateSubjectNameOutputWithContext(ctx context.Context) GetCertificateSubjectNameOutput

type GetCertificatesArgs

type GetCertificatesArgs struct {
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. This number is generated when the compartment is created.
	CompartmentId string `pulumi:"compartmentId"`
	// Filter certificates using a list of display names.
	DisplayNames []string                `pulumi:"displayNames"`
	Filters      []GetCertificatesFilter `pulumi:"filters"`
	// Filter certificates using a list of certificates OCIDs.
	Ids []string `pulumi:"ids"`
	// Filter certificates using a list of lifecycle states.
	States []string `pulumi:"states"`
	// A filter that matches certificates created on or after the specified date-time.
	TimeCreatedGreaterThanOrEqualTo *string `pulumi:"timeCreatedGreaterThanOrEqualTo"`
	// A filter that matches certificates created before the specified date-time.
	TimeCreatedLessThan *string `pulumi:"timeCreatedLessThan"`
}

A collection of arguments for invoking getCertificates.

type GetCertificatesCertificate

type GetCertificatesCertificate struct {
	// The data of the SSL certificate.
	CertificateData string `pulumi:"certificateData"`
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. This number is generated when the compartment is created.
	CompartmentId string `pulumi:"compartmentId"`
	// Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Operations.CostCenter": "42"}`
	DefinedTags map[string]interface{} `pulumi:"definedTags"`
	// The user-friendly name of the SSL certificate.
	DisplayName string `pulumi:"displayName"`
	// Additional attributes associated with users or public keys for managing relationships between Certificate Authorities.
	Extensions []GetCertificatesCertificateExtension `pulumi:"extensions"`
	// Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Department": "Finance"}`
	FreeformTags map[string]interface{} `pulumi:"freeformTags"`
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the SSL certificate.
	Id string `pulumi:"id"`
	// This indicates whether trust verification was disabled during the creation of SSL certificate. If `true` SSL certificate trust verification was disabled and this SSL certificate is most likely self-signed.
	IsTrustVerificationDisabled bool   `pulumi:"isTrustVerificationDisabled"`
	IssuedBy                    string `pulumi:"issuedBy"`
	// The issuer of the certificate.
	IssuerNames    []GetCertificatesCertificateIssuerName `pulumi:"issuerNames"`
	PrivateKeyData string                                 `pulumi:"privateKeyData"`
	// Information about the public key and the algorithm used by the public key.
	PublicKeyInfos []GetCertificatesCertificatePublicKeyInfo `pulumi:"publicKeyInfos"`
	// A unique, positive integer assigned by the Certificate Authority (CA). The issuer name and serial number identify a unique certificate.
	SerialNumber string `pulumi:"serialNumber"`
	// The identifier for the cryptographic algorithm used by the Certificate Authority (CA) to sign this certificate.
	SignatureAlgorithm string `pulumi:"signatureAlgorithm"`
	// The current lifecycle state of the SSL certificate.
	State string `pulumi:"state"`
	// The entity to be secured by the certificate.
	SubjectNames []GetCertificatesCertificateSubjectName `pulumi:"subjectNames"`
	// The date and time the certificate was created, expressed in RFC 3339 timestamp format.
	TimeCreated string `pulumi:"timeCreated"`
	// The date and time the certificate will expire, expressed in RFC 3339 timestamp format.
	TimeNotValidAfter string `pulumi:"timeNotValidAfter"`
	// The date and time the certificate will become valid, expressed in RFC 3339 timestamp format.
	TimeNotValidBefore string `pulumi:"timeNotValidBefore"`
	// The version of the encoded certificate.
	Version int `pulumi:"version"`
}

type GetCertificatesCertificateArgs

type GetCertificatesCertificateArgs struct {
	// The data of the SSL certificate.
	CertificateData pulumi.StringInput `pulumi:"certificateData"`
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. This number is generated when the compartment is created.
	CompartmentId pulumi.StringInput `pulumi:"compartmentId"`
	// Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Operations.CostCenter": "42"}`
	DefinedTags pulumi.MapInput `pulumi:"definedTags"`
	// The user-friendly name of the SSL certificate.
	DisplayName pulumi.StringInput `pulumi:"displayName"`
	// Additional attributes associated with users or public keys for managing relationships between Certificate Authorities.
	Extensions GetCertificatesCertificateExtensionArrayInput `pulumi:"extensions"`
	// Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Department": "Finance"}`
	FreeformTags pulumi.MapInput `pulumi:"freeformTags"`
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the SSL certificate.
	Id pulumi.StringInput `pulumi:"id"`
	// This indicates whether trust verification was disabled during the creation of SSL certificate. If `true` SSL certificate trust verification was disabled and this SSL certificate is most likely self-signed.
	IsTrustVerificationDisabled pulumi.BoolInput   `pulumi:"isTrustVerificationDisabled"`
	IssuedBy                    pulumi.StringInput `pulumi:"issuedBy"`
	// The issuer of the certificate.
	IssuerNames    GetCertificatesCertificateIssuerNameArrayInput `pulumi:"issuerNames"`
	PrivateKeyData pulumi.StringInput                             `pulumi:"privateKeyData"`
	// Information about the public key and the algorithm used by the public key.
	PublicKeyInfos GetCertificatesCertificatePublicKeyInfoArrayInput `pulumi:"publicKeyInfos"`
	// A unique, positive integer assigned by the Certificate Authority (CA). The issuer name and serial number identify a unique certificate.
	SerialNumber pulumi.StringInput `pulumi:"serialNumber"`
	// The identifier for the cryptographic algorithm used by the Certificate Authority (CA) to sign this certificate.
	SignatureAlgorithm pulumi.StringInput `pulumi:"signatureAlgorithm"`
	// The current lifecycle state of the SSL certificate.
	State pulumi.StringInput `pulumi:"state"`
	// The entity to be secured by the certificate.
	SubjectNames GetCertificatesCertificateSubjectNameArrayInput `pulumi:"subjectNames"`
	// The date and time the certificate was created, expressed in RFC 3339 timestamp format.
	TimeCreated pulumi.StringInput `pulumi:"timeCreated"`
	// The date and time the certificate will expire, expressed in RFC 3339 timestamp format.
	TimeNotValidAfter pulumi.StringInput `pulumi:"timeNotValidAfter"`
	// The date and time the certificate will become valid, expressed in RFC 3339 timestamp format.
	TimeNotValidBefore pulumi.StringInput `pulumi:"timeNotValidBefore"`
	// The version of the encoded certificate.
	Version pulumi.IntInput `pulumi:"version"`
}

func (GetCertificatesCertificateArgs) ElementType

func (GetCertificatesCertificateArgs) ToGetCertificatesCertificateOutput

func (i GetCertificatesCertificateArgs) ToGetCertificatesCertificateOutput() GetCertificatesCertificateOutput

func (GetCertificatesCertificateArgs) ToGetCertificatesCertificateOutputWithContext

func (i GetCertificatesCertificateArgs) ToGetCertificatesCertificateOutputWithContext(ctx context.Context) GetCertificatesCertificateOutput

type GetCertificatesCertificateArray

type GetCertificatesCertificateArray []GetCertificatesCertificateInput

func (GetCertificatesCertificateArray) ElementType

func (GetCertificatesCertificateArray) ToGetCertificatesCertificateArrayOutput

func (i GetCertificatesCertificateArray) ToGetCertificatesCertificateArrayOutput() GetCertificatesCertificateArrayOutput

func (GetCertificatesCertificateArray) ToGetCertificatesCertificateArrayOutputWithContext

func (i GetCertificatesCertificateArray) ToGetCertificatesCertificateArrayOutputWithContext(ctx context.Context) GetCertificatesCertificateArrayOutput

type GetCertificatesCertificateArrayInput

type GetCertificatesCertificateArrayInput interface {
	pulumi.Input

	ToGetCertificatesCertificateArrayOutput() GetCertificatesCertificateArrayOutput
	ToGetCertificatesCertificateArrayOutputWithContext(context.Context) GetCertificatesCertificateArrayOutput
}

GetCertificatesCertificateArrayInput is an input type that accepts GetCertificatesCertificateArray and GetCertificatesCertificateArrayOutput values. You can construct a concrete instance of `GetCertificatesCertificateArrayInput` via:

GetCertificatesCertificateArray{ GetCertificatesCertificateArgs{...} }

type GetCertificatesCertificateArrayOutput

type GetCertificatesCertificateArrayOutput struct{ *pulumi.OutputState }

func (GetCertificatesCertificateArrayOutput) ElementType

func (GetCertificatesCertificateArrayOutput) Index

func (GetCertificatesCertificateArrayOutput) ToGetCertificatesCertificateArrayOutput

func (o GetCertificatesCertificateArrayOutput) ToGetCertificatesCertificateArrayOutput() GetCertificatesCertificateArrayOutput

func (GetCertificatesCertificateArrayOutput) ToGetCertificatesCertificateArrayOutputWithContext

func (o GetCertificatesCertificateArrayOutput) ToGetCertificatesCertificateArrayOutputWithContext(ctx context.Context) GetCertificatesCertificateArrayOutput

type GetCertificatesCertificateExtension

type GetCertificatesCertificateExtension struct {
	// The critical flag of the extension. Critical extensions must be processed, non-critical extensions can be ignored.
	IsCritical bool `pulumi:"isCritical"`
	// The certificate extension name.
	Name string `pulumi:"name"`
	// The certificate extension value.
	Value string `pulumi:"value"`
}

type GetCertificatesCertificateExtensionArgs

type GetCertificatesCertificateExtensionArgs struct {
	// The critical flag of the extension. Critical extensions must be processed, non-critical extensions can be ignored.
	IsCritical pulumi.BoolInput `pulumi:"isCritical"`
	// The certificate extension name.
	Name pulumi.StringInput `pulumi:"name"`
	// The certificate extension value.
	Value pulumi.StringInput `pulumi:"value"`
}

func (GetCertificatesCertificateExtensionArgs) ElementType

func (GetCertificatesCertificateExtensionArgs) ToGetCertificatesCertificateExtensionOutput

func (i GetCertificatesCertificateExtensionArgs) ToGetCertificatesCertificateExtensionOutput() GetCertificatesCertificateExtensionOutput

func (GetCertificatesCertificateExtensionArgs) ToGetCertificatesCertificateExtensionOutputWithContext

func (i GetCertificatesCertificateExtensionArgs) ToGetCertificatesCertificateExtensionOutputWithContext(ctx context.Context) GetCertificatesCertificateExtensionOutput

type GetCertificatesCertificateExtensionArray

type GetCertificatesCertificateExtensionArray []GetCertificatesCertificateExtensionInput

func (GetCertificatesCertificateExtensionArray) ElementType

func (GetCertificatesCertificateExtensionArray) ToGetCertificatesCertificateExtensionArrayOutput

func (i GetCertificatesCertificateExtensionArray) ToGetCertificatesCertificateExtensionArrayOutput() GetCertificatesCertificateExtensionArrayOutput

func (GetCertificatesCertificateExtensionArray) ToGetCertificatesCertificateExtensionArrayOutputWithContext

func (i GetCertificatesCertificateExtensionArray) ToGetCertificatesCertificateExtensionArrayOutputWithContext(ctx context.Context) GetCertificatesCertificateExtensionArrayOutput

type GetCertificatesCertificateExtensionArrayInput

type GetCertificatesCertificateExtensionArrayInput interface {
	pulumi.Input

	ToGetCertificatesCertificateExtensionArrayOutput() GetCertificatesCertificateExtensionArrayOutput
	ToGetCertificatesCertificateExtensionArrayOutputWithContext(context.Context) GetCertificatesCertificateExtensionArrayOutput
}

GetCertificatesCertificateExtensionArrayInput is an input type that accepts GetCertificatesCertificateExtensionArray and GetCertificatesCertificateExtensionArrayOutput values. You can construct a concrete instance of `GetCertificatesCertificateExtensionArrayInput` via:

GetCertificatesCertificateExtensionArray{ GetCertificatesCertificateExtensionArgs{...} }

type GetCertificatesCertificateExtensionArrayOutput

type GetCertificatesCertificateExtensionArrayOutput struct{ *pulumi.OutputState }

func (GetCertificatesCertificateExtensionArrayOutput) ElementType

func (GetCertificatesCertificateExtensionArrayOutput) Index

func (GetCertificatesCertificateExtensionArrayOutput) ToGetCertificatesCertificateExtensionArrayOutput

func (o GetCertificatesCertificateExtensionArrayOutput) ToGetCertificatesCertificateExtensionArrayOutput() GetCertificatesCertificateExtensionArrayOutput

func (GetCertificatesCertificateExtensionArrayOutput) ToGetCertificatesCertificateExtensionArrayOutputWithContext

func (o GetCertificatesCertificateExtensionArrayOutput) ToGetCertificatesCertificateExtensionArrayOutputWithContext(ctx context.Context) GetCertificatesCertificateExtensionArrayOutput

type GetCertificatesCertificateExtensionInput

type GetCertificatesCertificateExtensionInput interface {
	pulumi.Input

	ToGetCertificatesCertificateExtensionOutput() GetCertificatesCertificateExtensionOutput
	ToGetCertificatesCertificateExtensionOutputWithContext(context.Context) GetCertificatesCertificateExtensionOutput
}

GetCertificatesCertificateExtensionInput is an input type that accepts GetCertificatesCertificateExtensionArgs and GetCertificatesCertificateExtensionOutput values. You can construct a concrete instance of `GetCertificatesCertificateExtensionInput` via:

GetCertificatesCertificateExtensionArgs{...}

type GetCertificatesCertificateExtensionOutput

type GetCertificatesCertificateExtensionOutput struct{ *pulumi.OutputState }

func (GetCertificatesCertificateExtensionOutput) ElementType

func (GetCertificatesCertificateExtensionOutput) IsCritical

The critical flag of the extension. Critical extensions must be processed, non-critical extensions can be ignored.

func (GetCertificatesCertificateExtensionOutput) Name

The certificate extension name.

func (GetCertificatesCertificateExtensionOutput) ToGetCertificatesCertificateExtensionOutput

func (o GetCertificatesCertificateExtensionOutput) ToGetCertificatesCertificateExtensionOutput() GetCertificatesCertificateExtensionOutput

func (GetCertificatesCertificateExtensionOutput) ToGetCertificatesCertificateExtensionOutputWithContext

func (o GetCertificatesCertificateExtensionOutput) ToGetCertificatesCertificateExtensionOutputWithContext(ctx context.Context) GetCertificatesCertificateExtensionOutput

func (GetCertificatesCertificateExtensionOutput) Value

The certificate extension value.

type GetCertificatesCertificateInput

type GetCertificatesCertificateInput interface {
	pulumi.Input

	ToGetCertificatesCertificateOutput() GetCertificatesCertificateOutput
	ToGetCertificatesCertificateOutputWithContext(context.Context) GetCertificatesCertificateOutput
}

GetCertificatesCertificateInput is an input type that accepts GetCertificatesCertificateArgs and GetCertificatesCertificateOutput values. You can construct a concrete instance of `GetCertificatesCertificateInput` via:

GetCertificatesCertificateArgs{...}

type GetCertificatesCertificateIssuerName

type GetCertificatesCertificateIssuerName struct {
	// The fully qualified domain name used for DNS lookups of the server.
	CommonName string `pulumi:"commonName"`
	// ISO 3166-1 alpha-2 code of the country where the organization is located. For a list of codes, see [ISO's website](https://www.iso.org/obp/ui/#search/code/).
	Country string `pulumi:"country"`
	// The email address of the server's administrator.
	EmailAddress string `pulumi:"emailAddress"`
	// The city in which the organization is located.
	Locality string `pulumi:"locality"`
	// The organization name.
	Organization string `pulumi:"organization"`
	// The field to differentiate between divisions within an organization.
	OrganizationalUnit string `pulumi:"organizationalUnit"`
	// The province where the organization is located.
	StateProvince string `pulumi:"stateProvince"`
}

type GetCertificatesCertificateIssuerNameArgs

type GetCertificatesCertificateIssuerNameArgs struct {
	// The fully qualified domain name used for DNS lookups of the server.
	CommonName pulumi.StringInput `pulumi:"commonName"`
	// ISO 3166-1 alpha-2 code of the country where the organization is located. For a list of codes, see [ISO's website](https://www.iso.org/obp/ui/#search/code/).
	Country pulumi.StringInput `pulumi:"country"`
	// The email address of the server's administrator.
	EmailAddress pulumi.StringInput `pulumi:"emailAddress"`
	// The city in which the organization is located.
	Locality pulumi.StringInput `pulumi:"locality"`
	// The organization name.
	Organization pulumi.StringInput `pulumi:"organization"`
	// The field to differentiate between divisions within an organization.
	OrganizationalUnit pulumi.StringInput `pulumi:"organizationalUnit"`
	// The province where the organization is located.
	StateProvince pulumi.StringInput `pulumi:"stateProvince"`
}

func (GetCertificatesCertificateIssuerNameArgs) ElementType

func (GetCertificatesCertificateIssuerNameArgs) ToGetCertificatesCertificateIssuerNameOutput

func (i GetCertificatesCertificateIssuerNameArgs) ToGetCertificatesCertificateIssuerNameOutput() GetCertificatesCertificateIssuerNameOutput

func (GetCertificatesCertificateIssuerNameArgs) ToGetCertificatesCertificateIssuerNameOutputWithContext

func (i GetCertificatesCertificateIssuerNameArgs) ToGetCertificatesCertificateIssuerNameOutputWithContext(ctx context.Context) GetCertificatesCertificateIssuerNameOutput

type GetCertificatesCertificateIssuerNameArray

type GetCertificatesCertificateIssuerNameArray []GetCertificatesCertificateIssuerNameInput

func (GetCertificatesCertificateIssuerNameArray) ElementType

func (GetCertificatesCertificateIssuerNameArray) ToGetCertificatesCertificateIssuerNameArrayOutput

func (i GetCertificatesCertificateIssuerNameArray) ToGetCertificatesCertificateIssuerNameArrayOutput() GetCertificatesCertificateIssuerNameArrayOutput

func (GetCertificatesCertificateIssuerNameArray) ToGetCertificatesCertificateIssuerNameArrayOutputWithContext

func (i GetCertificatesCertificateIssuerNameArray) ToGetCertificatesCertificateIssuerNameArrayOutputWithContext(ctx context.Context) GetCertificatesCertificateIssuerNameArrayOutput

type GetCertificatesCertificateIssuerNameArrayInput

type GetCertificatesCertificateIssuerNameArrayInput interface {
	pulumi.Input

	ToGetCertificatesCertificateIssuerNameArrayOutput() GetCertificatesCertificateIssuerNameArrayOutput
	ToGetCertificatesCertificateIssuerNameArrayOutputWithContext(context.Context) GetCertificatesCertificateIssuerNameArrayOutput
}

GetCertificatesCertificateIssuerNameArrayInput is an input type that accepts GetCertificatesCertificateIssuerNameArray and GetCertificatesCertificateIssuerNameArrayOutput values. You can construct a concrete instance of `GetCertificatesCertificateIssuerNameArrayInput` via:

GetCertificatesCertificateIssuerNameArray{ GetCertificatesCertificateIssuerNameArgs{...} }

type GetCertificatesCertificateIssuerNameArrayOutput

type GetCertificatesCertificateIssuerNameArrayOutput struct{ *pulumi.OutputState }

func (GetCertificatesCertificateIssuerNameArrayOutput) ElementType

func (GetCertificatesCertificateIssuerNameArrayOutput) Index

func (GetCertificatesCertificateIssuerNameArrayOutput) ToGetCertificatesCertificateIssuerNameArrayOutput

func (o GetCertificatesCertificateIssuerNameArrayOutput) ToGetCertificatesCertificateIssuerNameArrayOutput() GetCertificatesCertificateIssuerNameArrayOutput

func (GetCertificatesCertificateIssuerNameArrayOutput) ToGetCertificatesCertificateIssuerNameArrayOutputWithContext

func (o GetCertificatesCertificateIssuerNameArrayOutput) ToGetCertificatesCertificateIssuerNameArrayOutputWithContext(ctx context.Context) GetCertificatesCertificateIssuerNameArrayOutput

type GetCertificatesCertificateIssuerNameInput

type GetCertificatesCertificateIssuerNameInput interface {
	pulumi.Input

	ToGetCertificatesCertificateIssuerNameOutput() GetCertificatesCertificateIssuerNameOutput
	ToGetCertificatesCertificateIssuerNameOutputWithContext(context.Context) GetCertificatesCertificateIssuerNameOutput
}

GetCertificatesCertificateIssuerNameInput is an input type that accepts GetCertificatesCertificateIssuerNameArgs and GetCertificatesCertificateIssuerNameOutput values. You can construct a concrete instance of `GetCertificatesCertificateIssuerNameInput` via:

GetCertificatesCertificateIssuerNameArgs{...}

type GetCertificatesCertificateIssuerNameOutput

type GetCertificatesCertificateIssuerNameOutput struct{ *pulumi.OutputState }

func (GetCertificatesCertificateIssuerNameOutput) CommonName

The fully qualified domain name used for DNS lookups of the server.

func (GetCertificatesCertificateIssuerNameOutput) Country

ISO 3166-1 alpha-2 code of the country where the organization is located. For a list of codes, see [ISO's website](https://www.iso.org/obp/ui/#search/code/).

func (GetCertificatesCertificateIssuerNameOutput) ElementType

func (GetCertificatesCertificateIssuerNameOutput) EmailAddress

The email address of the server's administrator.

func (GetCertificatesCertificateIssuerNameOutput) Locality

The city in which the organization is located.

func (GetCertificatesCertificateIssuerNameOutput) Organization

The organization name.

func (GetCertificatesCertificateIssuerNameOutput) OrganizationalUnit

The field to differentiate between divisions within an organization.

func (GetCertificatesCertificateIssuerNameOutput) StateProvince

The province where the organization is located.

func (GetCertificatesCertificateIssuerNameOutput) ToGetCertificatesCertificateIssuerNameOutput

func (o GetCertificatesCertificateIssuerNameOutput) ToGetCertificatesCertificateIssuerNameOutput() GetCertificatesCertificateIssuerNameOutput

func (GetCertificatesCertificateIssuerNameOutput) ToGetCertificatesCertificateIssuerNameOutputWithContext

func (o GetCertificatesCertificateIssuerNameOutput) ToGetCertificatesCertificateIssuerNameOutputWithContext(ctx context.Context) GetCertificatesCertificateIssuerNameOutput

type GetCertificatesCertificateOutput

type GetCertificatesCertificateOutput struct{ *pulumi.OutputState }

func (GetCertificatesCertificateOutput) CertificateData

The data of the SSL certificate.

func (GetCertificatesCertificateOutput) CompartmentId

The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. This number is generated when the compartment is created.

func (GetCertificatesCertificateOutput) DefinedTags

Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Operations.CostCenter": "42"}`

func (GetCertificatesCertificateOutput) DisplayName

The user-friendly name of the SSL certificate.

func (GetCertificatesCertificateOutput) ElementType

func (GetCertificatesCertificateOutput) Extensions

Additional attributes associated with users or public keys for managing relationships between Certificate Authorities.

func (GetCertificatesCertificateOutput) FreeformTags

Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Department": "Finance"}`

func (GetCertificatesCertificateOutput) Id

The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the SSL certificate.

func (GetCertificatesCertificateOutput) IsTrustVerificationDisabled

func (o GetCertificatesCertificateOutput) IsTrustVerificationDisabled() pulumi.BoolOutput

This indicates whether trust verification was disabled during the creation of SSL certificate. If `true` SSL certificate trust verification was disabled and this SSL certificate is most likely self-signed.

func (GetCertificatesCertificateOutput) IssuedBy

func (GetCertificatesCertificateOutput) IssuerNames

The issuer of the certificate.

func (GetCertificatesCertificateOutput) PrivateKeyData

func (GetCertificatesCertificateOutput) PublicKeyInfos

Information about the public key and the algorithm used by the public key.

func (GetCertificatesCertificateOutput) SerialNumber

A unique, positive integer assigned by the Certificate Authority (CA). The issuer name and serial number identify a unique certificate.

func (GetCertificatesCertificateOutput) SignatureAlgorithm

func (o GetCertificatesCertificateOutput) SignatureAlgorithm() pulumi.StringOutput

The identifier for the cryptographic algorithm used by the Certificate Authority (CA) to sign this certificate.

func (GetCertificatesCertificateOutput) State

The current lifecycle state of the SSL certificate.

func (GetCertificatesCertificateOutput) SubjectNames

The entity to be secured by the certificate.

func (GetCertificatesCertificateOutput) TimeCreated

The date and time the certificate was created, expressed in RFC 3339 timestamp format.

func (GetCertificatesCertificateOutput) TimeNotValidAfter

The date and time the certificate will expire, expressed in RFC 3339 timestamp format.

func (GetCertificatesCertificateOutput) TimeNotValidBefore

func (o GetCertificatesCertificateOutput) TimeNotValidBefore() pulumi.StringOutput

The date and time the certificate will become valid, expressed in RFC 3339 timestamp format.

func (GetCertificatesCertificateOutput) ToGetCertificatesCertificateOutput

func (o GetCertificatesCertificateOutput) ToGetCertificatesCertificateOutput() GetCertificatesCertificateOutput

func (GetCertificatesCertificateOutput) ToGetCertificatesCertificateOutputWithContext

func (o GetCertificatesCertificateOutput) ToGetCertificatesCertificateOutputWithContext(ctx context.Context) GetCertificatesCertificateOutput

func (GetCertificatesCertificateOutput) Version

The version of the encoded certificate.

type GetCertificatesCertificatePublicKeyInfo

type GetCertificatesCertificatePublicKeyInfo struct {
	// The algorithm identifier and parameters for the public key.
	Algorithm string `pulumi:"algorithm"`
	// The private key exponent.
	Exponent int `pulumi:"exponent"`
	// The number of bits in a key used by a cryptographic algorithm.
	KeySize int `pulumi:"keySize"`
}

type GetCertificatesCertificatePublicKeyInfoArgs

type GetCertificatesCertificatePublicKeyInfoArgs struct {
	// The algorithm identifier and parameters for the public key.
	Algorithm pulumi.StringInput `pulumi:"algorithm"`
	// The private key exponent.
	Exponent pulumi.IntInput `pulumi:"exponent"`
	// The number of bits in a key used by a cryptographic algorithm.
	KeySize pulumi.IntInput `pulumi:"keySize"`
}

func (GetCertificatesCertificatePublicKeyInfoArgs) ElementType

func (GetCertificatesCertificatePublicKeyInfoArgs) ToGetCertificatesCertificatePublicKeyInfoOutput

func (i GetCertificatesCertificatePublicKeyInfoArgs) ToGetCertificatesCertificatePublicKeyInfoOutput() GetCertificatesCertificatePublicKeyInfoOutput

func (GetCertificatesCertificatePublicKeyInfoArgs) ToGetCertificatesCertificatePublicKeyInfoOutputWithContext

func (i GetCertificatesCertificatePublicKeyInfoArgs) ToGetCertificatesCertificatePublicKeyInfoOutputWithContext(ctx context.Context) GetCertificatesCertificatePublicKeyInfoOutput

type GetCertificatesCertificatePublicKeyInfoArray

type GetCertificatesCertificatePublicKeyInfoArray []GetCertificatesCertificatePublicKeyInfoInput

func (GetCertificatesCertificatePublicKeyInfoArray) ElementType

func (GetCertificatesCertificatePublicKeyInfoArray) ToGetCertificatesCertificatePublicKeyInfoArrayOutput

func (i GetCertificatesCertificatePublicKeyInfoArray) ToGetCertificatesCertificatePublicKeyInfoArrayOutput() GetCertificatesCertificatePublicKeyInfoArrayOutput

func (GetCertificatesCertificatePublicKeyInfoArray) ToGetCertificatesCertificatePublicKeyInfoArrayOutputWithContext

func (i GetCertificatesCertificatePublicKeyInfoArray) ToGetCertificatesCertificatePublicKeyInfoArrayOutputWithContext(ctx context.Context) GetCertificatesCertificatePublicKeyInfoArrayOutput

type GetCertificatesCertificatePublicKeyInfoArrayInput

type GetCertificatesCertificatePublicKeyInfoArrayInput interface {
	pulumi.Input

	ToGetCertificatesCertificatePublicKeyInfoArrayOutput() GetCertificatesCertificatePublicKeyInfoArrayOutput
	ToGetCertificatesCertificatePublicKeyInfoArrayOutputWithContext(context.Context) GetCertificatesCertificatePublicKeyInfoArrayOutput
}

GetCertificatesCertificatePublicKeyInfoArrayInput is an input type that accepts GetCertificatesCertificatePublicKeyInfoArray and GetCertificatesCertificatePublicKeyInfoArrayOutput values. You can construct a concrete instance of `GetCertificatesCertificatePublicKeyInfoArrayInput` via:

GetCertificatesCertificatePublicKeyInfoArray{ GetCertificatesCertificatePublicKeyInfoArgs{...} }

type GetCertificatesCertificatePublicKeyInfoArrayOutput

type GetCertificatesCertificatePublicKeyInfoArrayOutput struct{ *pulumi.OutputState }

func (GetCertificatesCertificatePublicKeyInfoArrayOutput) ElementType

func (GetCertificatesCertificatePublicKeyInfoArrayOutput) Index

func (GetCertificatesCertificatePublicKeyInfoArrayOutput) ToGetCertificatesCertificatePublicKeyInfoArrayOutput

func (o GetCertificatesCertificatePublicKeyInfoArrayOutput) ToGetCertificatesCertificatePublicKeyInfoArrayOutput() GetCertificatesCertificatePublicKeyInfoArrayOutput

func (GetCertificatesCertificatePublicKeyInfoArrayOutput) ToGetCertificatesCertificatePublicKeyInfoArrayOutputWithContext

func (o GetCertificatesCertificatePublicKeyInfoArrayOutput) ToGetCertificatesCertificatePublicKeyInfoArrayOutputWithContext(ctx context.Context) GetCertificatesCertificatePublicKeyInfoArrayOutput

type GetCertificatesCertificatePublicKeyInfoInput

type GetCertificatesCertificatePublicKeyInfoInput interface {
	pulumi.Input

	ToGetCertificatesCertificatePublicKeyInfoOutput() GetCertificatesCertificatePublicKeyInfoOutput
	ToGetCertificatesCertificatePublicKeyInfoOutputWithContext(context.Context) GetCertificatesCertificatePublicKeyInfoOutput
}

GetCertificatesCertificatePublicKeyInfoInput is an input type that accepts GetCertificatesCertificatePublicKeyInfoArgs and GetCertificatesCertificatePublicKeyInfoOutput values. You can construct a concrete instance of `GetCertificatesCertificatePublicKeyInfoInput` via:

GetCertificatesCertificatePublicKeyInfoArgs{...}

type GetCertificatesCertificatePublicKeyInfoOutput

type GetCertificatesCertificatePublicKeyInfoOutput struct{ *pulumi.OutputState }

func (GetCertificatesCertificatePublicKeyInfoOutput) Algorithm

The algorithm identifier and parameters for the public key.

func (GetCertificatesCertificatePublicKeyInfoOutput) ElementType

func (GetCertificatesCertificatePublicKeyInfoOutput) Exponent

The private key exponent.

func (GetCertificatesCertificatePublicKeyInfoOutput) KeySize

The number of bits in a key used by a cryptographic algorithm.

func (GetCertificatesCertificatePublicKeyInfoOutput) ToGetCertificatesCertificatePublicKeyInfoOutput

func (o GetCertificatesCertificatePublicKeyInfoOutput) ToGetCertificatesCertificatePublicKeyInfoOutput() GetCertificatesCertificatePublicKeyInfoOutput

func (GetCertificatesCertificatePublicKeyInfoOutput) ToGetCertificatesCertificatePublicKeyInfoOutputWithContext

func (o GetCertificatesCertificatePublicKeyInfoOutput) ToGetCertificatesCertificatePublicKeyInfoOutputWithContext(ctx context.Context) GetCertificatesCertificatePublicKeyInfoOutput

type GetCertificatesCertificateSubjectName

type GetCertificatesCertificateSubjectName struct {
	// The fully qualified domain name used for DNS lookups of the server.
	CommonName string `pulumi:"commonName"`
	// ISO 3166-1 alpha-2 code of the country where the organization is located. For a list of codes, see [ISO's website](https://www.iso.org/obp/ui/#search/code/).
	Country string `pulumi:"country"`
	// The email address of the server's administrator.
	EmailAddress string `pulumi:"emailAddress"`
	// The city in which the organization is located.
	Locality string `pulumi:"locality"`
	// The organization name.
	Organization string `pulumi:"organization"`
	// The field to differentiate between divisions within an organization.
	OrganizationalUnit string `pulumi:"organizationalUnit"`
	// The province where the organization is located.
	StateProvince string `pulumi:"stateProvince"`
}

type GetCertificatesCertificateSubjectNameArgs

type GetCertificatesCertificateSubjectNameArgs struct {
	// The fully qualified domain name used for DNS lookups of the server.
	CommonName pulumi.StringInput `pulumi:"commonName"`
	// ISO 3166-1 alpha-2 code of the country where the organization is located. For a list of codes, see [ISO's website](https://www.iso.org/obp/ui/#search/code/).
	Country pulumi.StringInput `pulumi:"country"`
	// The email address of the server's administrator.
	EmailAddress pulumi.StringInput `pulumi:"emailAddress"`
	// The city in which the organization is located.
	Locality pulumi.StringInput `pulumi:"locality"`
	// The organization name.
	Organization pulumi.StringInput `pulumi:"organization"`
	// The field to differentiate between divisions within an organization.
	OrganizationalUnit pulumi.StringInput `pulumi:"organizationalUnit"`
	// The province where the organization is located.
	StateProvince pulumi.StringInput `pulumi:"stateProvince"`
}

func (GetCertificatesCertificateSubjectNameArgs) ElementType

func (GetCertificatesCertificateSubjectNameArgs) ToGetCertificatesCertificateSubjectNameOutput

func (i GetCertificatesCertificateSubjectNameArgs) ToGetCertificatesCertificateSubjectNameOutput() GetCertificatesCertificateSubjectNameOutput

func (GetCertificatesCertificateSubjectNameArgs) ToGetCertificatesCertificateSubjectNameOutputWithContext

func (i GetCertificatesCertificateSubjectNameArgs) ToGetCertificatesCertificateSubjectNameOutputWithContext(ctx context.Context) GetCertificatesCertificateSubjectNameOutput

type GetCertificatesCertificateSubjectNameArray

type GetCertificatesCertificateSubjectNameArray []GetCertificatesCertificateSubjectNameInput

func (GetCertificatesCertificateSubjectNameArray) ElementType

func (GetCertificatesCertificateSubjectNameArray) ToGetCertificatesCertificateSubjectNameArrayOutput

func (i GetCertificatesCertificateSubjectNameArray) ToGetCertificatesCertificateSubjectNameArrayOutput() GetCertificatesCertificateSubjectNameArrayOutput

func (GetCertificatesCertificateSubjectNameArray) ToGetCertificatesCertificateSubjectNameArrayOutputWithContext

func (i GetCertificatesCertificateSubjectNameArray) ToGetCertificatesCertificateSubjectNameArrayOutputWithContext(ctx context.Context) GetCertificatesCertificateSubjectNameArrayOutput

type GetCertificatesCertificateSubjectNameArrayInput

type GetCertificatesCertificateSubjectNameArrayInput interface {
	pulumi.Input

	ToGetCertificatesCertificateSubjectNameArrayOutput() GetCertificatesCertificateSubjectNameArrayOutput
	ToGetCertificatesCertificateSubjectNameArrayOutputWithContext(context.Context) GetCertificatesCertificateSubjectNameArrayOutput
}

GetCertificatesCertificateSubjectNameArrayInput is an input type that accepts GetCertificatesCertificateSubjectNameArray and GetCertificatesCertificateSubjectNameArrayOutput values. You can construct a concrete instance of `GetCertificatesCertificateSubjectNameArrayInput` via:

GetCertificatesCertificateSubjectNameArray{ GetCertificatesCertificateSubjectNameArgs{...} }

type GetCertificatesCertificateSubjectNameArrayOutput

type GetCertificatesCertificateSubjectNameArrayOutput struct{ *pulumi.OutputState }

func (GetCertificatesCertificateSubjectNameArrayOutput) ElementType

func (GetCertificatesCertificateSubjectNameArrayOutput) Index

func (GetCertificatesCertificateSubjectNameArrayOutput) ToGetCertificatesCertificateSubjectNameArrayOutput

func (o GetCertificatesCertificateSubjectNameArrayOutput) ToGetCertificatesCertificateSubjectNameArrayOutput() GetCertificatesCertificateSubjectNameArrayOutput

func (GetCertificatesCertificateSubjectNameArrayOutput) ToGetCertificatesCertificateSubjectNameArrayOutputWithContext

func (o GetCertificatesCertificateSubjectNameArrayOutput) ToGetCertificatesCertificateSubjectNameArrayOutputWithContext(ctx context.Context) GetCertificatesCertificateSubjectNameArrayOutput

type GetCertificatesCertificateSubjectNameInput

type GetCertificatesCertificateSubjectNameInput interface {
	pulumi.Input

	ToGetCertificatesCertificateSubjectNameOutput() GetCertificatesCertificateSubjectNameOutput
	ToGetCertificatesCertificateSubjectNameOutputWithContext(context.Context) GetCertificatesCertificateSubjectNameOutput
}

GetCertificatesCertificateSubjectNameInput is an input type that accepts GetCertificatesCertificateSubjectNameArgs and GetCertificatesCertificateSubjectNameOutput values. You can construct a concrete instance of `GetCertificatesCertificateSubjectNameInput` via:

GetCertificatesCertificateSubjectNameArgs{...}

type GetCertificatesCertificateSubjectNameOutput

type GetCertificatesCertificateSubjectNameOutput struct{ *pulumi.OutputState }

func (GetCertificatesCertificateSubjectNameOutput) CommonName

The fully qualified domain name used for DNS lookups of the server.

func (GetCertificatesCertificateSubjectNameOutput) Country

ISO 3166-1 alpha-2 code of the country where the organization is located. For a list of codes, see [ISO's website](https://www.iso.org/obp/ui/#search/code/).

func (GetCertificatesCertificateSubjectNameOutput) ElementType

func (GetCertificatesCertificateSubjectNameOutput) EmailAddress

The email address of the server's administrator.

func (GetCertificatesCertificateSubjectNameOutput) Locality

The city in which the organization is located.

func (GetCertificatesCertificateSubjectNameOutput) Organization

The organization name.

func (GetCertificatesCertificateSubjectNameOutput) OrganizationalUnit

The field to differentiate between divisions within an organization.

func (GetCertificatesCertificateSubjectNameOutput) StateProvince

The province where the organization is located.

func (GetCertificatesCertificateSubjectNameOutput) ToGetCertificatesCertificateSubjectNameOutput

func (o GetCertificatesCertificateSubjectNameOutput) ToGetCertificatesCertificateSubjectNameOutput() GetCertificatesCertificateSubjectNameOutput

func (GetCertificatesCertificateSubjectNameOutput) ToGetCertificatesCertificateSubjectNameOutputWithContext

func (o GetCertificatesCertificateSubjectNameOutput) ToGetCertificatesCertificateSubjectNameOutputWithContext(ctx context.Context) GetCertificatesCertificateSubjectNameOutput

type GetCertificatesFilter

type GetCertificatesFilter struct {
	// The certificate extension name.
	Name   string   `pulumi:"name"`
	Regex  *bool    `pulumi:"regex"`
	Values []string `pulumi:"values"`
}

type GetCertificatesFilterArgs

type GetCertificatesFilterArgs struct {
	// The certificate extension name.
	Name   pulumi.StringInput      `pulumi:"name"`
	Regex  pulumi.BoolPtrInput     `pulumi:"regex"`
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetCertificatesFilterArgs) ElementType

func (GetCertificatesFilterArgs) ElementType() reflect.Type

func (GetCertificatesFilterArgs) ToGetCertificatesFilterOutput

func (i GetCertificatesFilterArgs) ToGetCertificatesFilterOutput() GetCertificatesFilterOutput

func (GetCertificatesFilterArgs) ToGetCertificatesFilterOutputWithContext

func (i GetCertificatesFilterArgs) ToGetCertificatesFilterOutputWithContext(ctx context.Context) GetCertificatesFilterOutput

type GetCertificatesFilterArray

type GetCertificatesFilterArray []GetCertificatesFilterInput

func (GetCertificatesFilterArray) ElementType

func (GetCertificatesFilterArray) ElementType() reflect.Type

func (GetCertificatesFilterArray) ToGetCertificatesFilterArrayOutput

func (i GetCertificatesFilterArray) ToGetCertificatesFilterArrayOutput() GetCertificatesFilterArrayOutput

func (GetCertificatesFilterArray) ToGetCertificatesFilterArrayOutputWithContext

func (i GetCertificatesFilterArray) ToGetCertificatesFilterArrayOutputWithContext(ctx context.Context) GetCertificatesFilterArrayOutput

type GetCertificatesFilterArrayInput

type GetCertificatesFilterArrayInput interface {
	pulumi.Input

	ToGetCertificatesFilterArrayOutput() GetCertificatesFilterArrayOutput
	ToGetCertificatesFilterArrayOutputWithContext(context.Context) GetCertificatesFilterArrayOutput
}

GetCertificatesFilterArrayInput is an input type that accepts GetCertificatesFilterArray and GetCertificatesFilterArrayOutput values. You can construct a concrete instance of `GetCertificatesFilterArrayInput` via:

GetCertificatesFilterArray{ GetCertificatesFilterArgs{...} }

type GetCertificatesFilterArrayOutput

type GetCertificatesFilterArrayOutput struct{ *pulumi.OutputState }

func (GetCertificatesFilterArrayOutput) ElementType

func (GetCertificatesFilterArrayOutput) Index

func (GetCertificatesFilterArrayOutput) ToGetCertificatesFilterArrayOutput

func (o GetCertificatesFilterArrayOutput) ToGetCertificatesFilterArrayOutput() GetCertificatesFilterArrayOutput

func (GetCertificatesFilterArrayOutput) ToGetCertificatesFilterArrayOutputWithContext

func (o GetCertificatesFilterArrayOutput) ToGetCertificatesFilterArrayOutputWithContext(ctx context.Context) GetCertificatesFilterArrayOutput

type GetCertificatesFilterInput

type GetCertificatesFilterInput interface {
	pulumi.Input

	ToGetCertificatesFilterOutput() GetCertificatesFilterOutput
	ToGetCertificatesFilterOutputWithContext(context.Context) GetCertificatesFilterOutput
}

GetCertificatesFilterInput is an input type that accepts GetCertificatesFilterArgs and GetCertificatesFilterOutput values. You can construct a concrete instance of `GetCertificatesFilterInput` via:

GetCertificatesFilterArgs{...}

type GetCertificatesFilterOutput

type GetCertificatesFilterOutput struct{ *pulumi.OutputState }

func (GetCertificatesFilterOutput) ElementType

func (GetCertificatesFilterOutput) Name

The certificate extension name.

func (GetCertificatesFilterOutput) Regex

func (GetCertificatesFilterOutput) ToGetCertificatesFilterOutput

func (o GetCertificatesFilterOutput) ToGetCertificatesFilterOutput() GetCertificatesFilterOutput

func (GetCertificatesFilterOutput) ToGetCertificatesFilterOutputWithContext

func (o GetCertificatesFilterOutput) ToGetCertificatesFilterOutputWithContext(ctx context.Context) GetCertificatesFilterOutput

func (GetCertificatesFilterOutput) Values

type GetCertificatesOutputArgs

type GetCertificatesOutputArgs struct {
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. This number is generated when the compartment is created.
	CompartmentId pulumi.StringInput `pulumi:"compartmentId"`
	// Filter certificates using a list of display names.
	DisplayNames pulumi.StringArrayInput         `pulumi:"displayNames"`
	Filters      GetCertificatesFilterArrayInput `pulumi:"filters"`
	// Filter certificates using a list of certificates OCIDs.
	Ids pulumi.StringArrayInput `pulumi:"ids"`
	// Filter certificates using a list of lifecycle states.
	States pulumi.StringArrayInput `pulumi:"states"`
	// A filter that matches certificates created on or after the specified date-time.
	TimeCreatedGreaterThanOrEqualTo pulumi.StringPtrInput `pulumi:"timeCreatedGreaterThanOrEqualTo"`
	// A filter that matches certificates created before the specified date-time.
	TimeCreatedLessThan pulumi.StringPtrInput `pulumi:"timeCreatedLessThan"`
}

A collection of arguments for invoking getCertificates.

func (GetCertificatesOutputArgs) ElementType

func (GetCertificatesOutputArgs) ElementType() reflect.Type

type GetCertificatesResult

type GetCertificatesResult struct {
	// The list of certificates.
	Certificates []GetCertificatesCertificate `pulumi:"certificates"`
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the SSL certificate's compartment.
	CompartmentId string                  `pulumi:"compartmentId"`
	DisplayNames  []string                `pulumi:"displayNames"`
	Filters       []GetCertificatesFilter `pulumi:"filters"`
	// The provider-assigned unique ID for this managed resource.
	Id                              string   `pulumi:"id"`
	Ids                             []string `pulumi:"ids"`
	States                          []string `pulumi:"states"`
	TimeCreatedGreaterThanOrEqualTo *string  `pulumi:"timeCreatedGreaterThanOrEqualTo"`
	TimeCreatedLessThan             *string  `pulumi:"timeCreatedLessThan"`
}

A collection of values returned by getCertificates.

func GetCertificates

func GetCertificates(ctx *pulumi.Context, args *GetCertificatesArgs, opts ...pulumi.InvokeOption) (*GetCertificatesResult, error)

This data source provides the list of Certificates in Oracle Cloud Infrastructure Web Application Acceleration and Security service.

Gets a list of SSL certificates that can be used in a WAAS policy.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-oci/sdk/go/oci/Waas"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Waas.GetCertificates(ctx, &waas.GetCertificatesArgs{
			CompartmentId:                   compartmentId,
			DisplayNames:                    certificateDisplayNames,
			Ids:                             certificateIds,
			States:                          certificateStates,
			TimeCreatedGreaterThanOrEqualTo: pulumi.StringRef(certificateTimeCreatedGreaterThanOrEqualTo),
			TimeCreatedLessThan:             pulumi.StringRef(certificateTimeCreatedLessThan),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetCertificatesResultOutput

type GetCertificatesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getCertificates.

func (GetCertificatesResultOutput) Certificates

The list of certificates.

func (GetCertificatesResultOutput) CompartmentId

The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the SSL certificate's compartment.

func (GetCertificatesResultOutput) DisplayNames

func (GetCertificatesResultOutput) ElementType

func (GetCertificatesResultOutput) Filters

func (GetCertificatesResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetCertificatesResultOutput) Ids

func (GetCertificatesResultOutput) States

func (GetCertificatesResultOutput) TimeCreatedGreaterThanOrEqualTo

func (o GetCertificatesResultOutput) TimeCreatedGreaterThanOrEqualTo() pulumi.StringPtrOutput

func (GetCertificatesResultOutput) TimeCreatedLessThan

func (o GetCertificatesResultOutput) TimeCreatedLessThan() pulumi.StringPtrOutput

func (GetCertificatesResultOutput) ToGetCertificatesResultOutput

func (o GetCertificatesResultOutput) ToGetCertificatesResultOutput() GetCertificatesResultOutput

func (GetCertificatesResultOutput) ToGetCertificatesResultOutputWithContext

func (o GetCertificatesResultOutput) ToGetCertificatesResultOutputWithContext(ctx context.Context) GetCertificatesResultOutput

type GetCustomProtectionRulesArgs

type GetCustomProtectionRulesArgs struct {
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. This number is generated when the compartment is created.
	CompartmentId string `pulumi:"compartmentId"`
	// Filter custom protection rules using a list of display names.
	DisplayNames []string                         `pulumi:"displayNames"`
	Filters      []GetCustomProtectionRulesFilter `pulumi:"filters"`
	// Filter custom protection rules using a list of custom protection rule OCIDs.
	Ids []string `pulumi:"ids"`
	// Filter Custom Protection rules using a list of lifecycle states.
	States []string `pulumi:"states"`
	// A filter that matches Custom Protection rules created on or after the specified date-time.
	TimeCreatedGreaterThanOrEqualTo *string `pulumi:"timeCreatedGreaterThanOrEqualTo"`
	// A filter that matches custom protection rules created before the specified date-time.
	TimeCreatedLessThan *string `pulumi:"timeCreatedLessThan"`
}

A collection of arguments for invoking getCustomProtectionRules.

type GetCustomProtectionRulesCustomProtectionRule

type GetCustomProtectionRulesCustomProtectionRule struct {
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. This number is generated when the compartment is created.
	CompartmentId string `pulumi:"compartmentId"`
	// Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Operations.CostCenter": "42"}`
	DefinedTags map[string]interface{} `pulumi:"definedTags"`
	// The description of the custom protection rule.
	Description string `pulumi:"description"`
	// The user-friendly name of the custom protection rule.
	DisplayName string `pulumi:"displayName"`
	// Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Department": "Finance"}`
	FreeformTags map[string]interface{} `pulumi:"freeformTags"`
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the custom protection rule.
	Id string `pulumi:"id"`
	// The auto-generated ID for the custom protection rule. These IDs are referenced in logs.
	ModSecurityRuleIds []string `pulumi:"modSecurityRuleIds"`
	// The current lifecycle state of the custom protection rule.
	State string `pulumi:"state"`
	// The template text of the custom protection rule. All custom protection rules are expressed in ModSecurity Rule Language.
	Template string `pulumi:"template"`
	// The date and time the protection rule was created, expressed in RFC 3339 timestamp format.
	TimeCreated string `pulumi:"timeCreated"`
}

type GetCustomProtectionRulesCustomProtectionRuleArgs

type GetCustomProtectionRulesCustomProtectionRuleArgs struct {
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. This number is generated when the compartment is created.
	CompartmentId pulumi.StringInput `pulumi:"compartmentId"`
	// Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Operations.CostCenter": "42"}`
	DefinedTags pulumi.MapInput `pulumi:"definedTags"`
	// The description of the custom protection rule.
	Description pulumi.StringInput `pulumi:"description"`
	// The user-friendly name of the custom protection rule.
	DisplayName pulumi.StringInput `pulumi:"displayName"`
	// Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Department": "Finance"}`
	FreeformTags pulumi.MapInput `pulumi:"freeformTags"`
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the custom protection rule.
	Id pulumi.StringInput `pulumi:"id"`
	// The auto-generated ID for the custom protection rule. These IDs are referenced in logs.
	ModSecurityRuleIds pulumi.StringArrayInput `pulumi:"modSecurityRuleIds"`
	// The current lifecycle state of the custom protection rule.
	State pulumi.StringInput `pulumi:"state"`
	// The template text of the custom protection rule. All custom protection rules are expressed in ModSecurity Rule Language.
	Template pulumi.StringInput `pulumi:"template"`
	// The date and time the protection rule was created, expressed in RFC 3339 timestamp format.
	TimeCreated pulumi.StringInput `pulumi:"timeCreated"`
}

func (GetCustomProtectionRulesCustomProtectionRuleArgs) ElementType

func (GetCustomProtectionRulesCustomProtectionRuleArgs) ToGetCustomProtectionRulesCustomProtectionRuleOutput

func (i GetCustomProtectionRulesCustomProtectionRuleArgs) ToGetCustomProtectionRulesCustomProtectionRuleOutput() GetCustomProtectionRulesCustomProtectionRuleOutput

func (GetCustomProtectionRulesCustomProtectionRuleArgs) ToGetCustomProtectionRulesCustomProtectionRuleOutputWithContext

func (i GetCustomProtectionRulesCustomProtectionRuleArgs) ToGetCustomProtectionRulesCustomProtectionRuleOutputWithContext(ctx context.Context) GetCustomProtectionRulesCustomProtectionRuleOutput

type GetCustomProtectionRulesCustomProtectionRuleArray

type GetCustomProtectionRulesCustomProtectionRuleArray []GetCustomProtectionRulesCustomProtectionRuleInput

func (GetCustomProtectionRulesCustomProtectionRuleArray) ElementType

func (GetCustomProtectionRulesCustomProtectionRuleArray) ToGetCustomProtectionRulesCustomProtectionRuleArrayOutput

func (i GetCustomProtectionRulesCustomProtectionRuleArray) ToGetCustomProtectionRulesCustomProtectionRuleArrayOutput() GetCustomProtectionRulesCustomProtectionRuleArrayOutput

func (GetCustomProtectionRulesCustomProtectionRuleArray) ToGetCustomProtectionRulesCustomProtectionRuleArrayOutputWithContext

func (i GetCustomProtectionRulesCustomProtectionRuleArray) ToGetCustomProtectionRulesCustomProtectionRuleArrayOutputWithContext(ctx context.Context) GetCustomProtectionRulesCustomProtectionRuleArrayOutput

type GetCustomProtectionRulesCustomProtectionRuleArrayInput

type GetCustomProtectionRulesCustomProtectionRuleArrayInput interface {
	pulumi.Input

	ToGetCustomProtectionRulesCustomProtectionRuleArrayOutput() GetCustomProtectionRulesCustomProtectionRuleArrayOutput
	ToGetCustomProtectionRulesCustomProtectionRuleArrayOutputWithContext(context.Context) GetCustomProtectionRulesCustomProtectionRuleArrayOutput
}

GetCustomProtectionRulesCustomProtectionRuleArrayInput is an input type that accepts GetCustomProtectionRulesCustomProtectionRuleArray and GetCustomProtectionRulesCustomProtectionRuleArrayOutput values. You can construct a concrete instance of `GetCustomProtectionRulesCustomProtectionRuleArrayInput` via:

GetCustomProtectionRulesCustomProtectionRuleArray{ GetCustomProtectionRulesCustomProtectionRuleArgs{...} }

type GetCustomProtectionRulesCustomProtectionRuleArrayOutput

type GetCustomProtectionRulesCustomProtectionRuleArrayOutput struct{ *pulumi.OutputState }

func (GetCustomProtectionRulesCustomProtectionRuleArrayOutput) ElementType

func (GetCustomProtectionRulesCustomProtectionRuleArrayOutput) Index

func (GetCustomProtectionRulesCustomProtectionRuleArrayOutput) ToGetCustomProtectionRulesCustomProtectionRuleArrayOutput

func (GetCustomProtectionRulesCustomProtectionRuleArrayOutput) ToGetCustomProtectionRulesCustomProtectionRuleArrayOutputWithContext

func (o GetCustomProtectionRulesCustomProtectionRuleArrayOutput) ToGetCustomProtectionRulesCustomProtectionRuleArrayOutputWithContext(ctx context.Context) GetCustomProtectionRulesCustomProtectionRuleArrayOutput

type GetCustomProtectionRulesCustomProtectionRuleInput

type GetCustomProtectionRulesCustomProtectionRuleInput interface {
	pulumi.Input

	ToGetCustomProtectionRulesCustomProtectionRuleOutput() GetCustomProtectionRulesCustomProtectionRuleOutput
	ToGetCustomProtectionRulesCustomProtectionRuleOutputWithContext(context.Context) GetCustomProtectionRulesCustomProtectionRuleOutput
}

GetCustomProtectionRulesCustomProtectionRuleInput is an input type that accepts GetCustomProtectionRulesCustomProtectionRuleArgs and GetCustomProtectionRulesCustomProtectionRuleOutput values. You can construct a concrete instance of `GetCustomProtectionRulesCustomProtectionRuleInput` via:

GetCustomProtectionRulesCustomProtectionRuleArgs{...}

type GetCustomProtectionRulesCustomProtectionRuleOutput

type GetCustomProtectionRulesCustomProtectionRuleOutput struct{ *pulumi.OutputState }

func (GetCustomProtectionRulesCustomProtectionRuleOutput) CompartmentId

The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. This number is generated when the compartment is created.

func (GetCustomProtectionRulesCustomProtectionRuleOutput) DefinedTags

Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Operations.CostCenter": "42"}`

func (GetCustomProtectionRulesCustomProtectionRuleOutput) Description

The description of the custom protection rule.

func (GetCustomProtectionRulesCustomProtectionRuleOutput) DisplayName

The user-friendly name of the custom protection rule.

func (GetCustomProtectionRulesCustomProtectionRuleOutput) ElementType

func (GetCustomProtectionRulesCustomProtectionRuleOutput) FreeformTags

Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Department": "Finance"}`

func (GetCustomProtectionRulesCustomProtectionRuleOutput) Id

The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the custom protection rule.

func (GetCustomProtectionRulesCustomProtectionRuleOutput) ModSecurityRuleIds

The auto-generated ID for the custom protection rule. These IDs are referenced in logs.

func (GetCustomProtectionRulesCustomProtectionRuleOutput) State

The current lifecycle state of the custom protection rule.

func (GetCustomProtectionRulesCustomProtectionRuleOutput) Template

The template text of the custom protection rule. All custom protection rules are expressed in ModSecurity Rule Language.

func (GetCustomProtectionRulesCustomProtectionRuleOutput) TimeCreated

The date and time the protection rule was created, expressed in RFC 3339 timestamp format.

func (GetCustomProtectionRulesCustomProtectionRuleOutput) ToGetCustomProtectionRulesCustomProtectionRuleOutput

func (o GetCustomProtectionRulesCustomProtectionRuleOutput) ToGetCustomProtectionRulesCustomProtectionRuleOutput() GetCustomProtectionRulesCustomProtectionRuleOutput

func (GetCustomProtectionRulesCustomProtectionRuleOutput) ToGetCustomProtectionRulesCustomProtectionRuleOutputWithContext

func (o GetCustomProtectionRulesCustomProtectionRuleOutput) ToGetCustomProtectionRulesCustomProtectionRuleOutputWithContext(ctx context.Context) GetCustomProtectionRulesCustomProtectionRuleOutput

type GetCustomProtectionRulesFilter

type GetCustomProtectionRulesFilter struct {
	Name   string   `pulumi:"name"`
	Regex  *bool    `pulumi:"regex"`
	Values []string `pulumi:"values"`
}

type GetCustomProtectionRulesFilterArgs

type GetCustomProtectionRulesFilterArgs struct {
	Name   pulumi.StringInput      `pulumi:"name"`
	Regex  pulumi.BoolPtrInput     `pulumi:"regex"`
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetCustomProtectionRulesFilterArgs) ElementType

func (GetCustomProtectionRulesFilterArgs) ToGetCustomProtectionRulesFilterOutput

func (i GetCustomProtectionRulesFilterArgs) ToGetCustomProtectionRulesFilterOutput() GetCustomProtectionRulesFilterOutput

func (GetCustomProtectionRulesFilterArgs) ToGetCustomProtectionRulesFilterOutputWithContext

func (i GetCustomProtectionRulesFilterArgs) ToGetCustomProtectionRulesFilterOutputWithContext(ctx context.Context) GetCustomProtectionRulesFilterOutput

type GetCustomProtectionRulesFilterArray

type GetCustomProtectionRulesFilterArray []GetCustomProtectionRulesFilterInput

func (GetCustomProtectionRulesFilterArray) ElementType

func (GetCustomProtectionRulesFilterArray) ToGetCustomProtectionRulesFilterArrayOutput

func (i GetCustomProtectionRulesFilterArray) ToGetCustomProtectionRulesFilterArrayOutput() GetCustomProtectionRulesFilterArrayOutput

func (GetCustomProtectionRulesFilterArray) ToGetCustomProtectionRulesFilterArrayOutputWithContext

func (i GetCustomProtectionRulesFilterArray) ToGetCustomProtectionRulesFilterArrayOutputWithContext(ctx context.Context) GetCustomProtectionRulesFilterArrayOutput

type GetCustomProtectionRulesFilterArrayInput

type GetCustomProtectionRulesFilterArrayInput interface {
	pulumi.Input

	ToGetCustomProtectionRulesFilterArrayOutput() GetCustomProtectionRulesFilterArrayOutput
	ToGetCustomProtectionRulesFilterArrayOutputWithContext(context.Context) GetCustomProtectionRulesFilterArrayOutput
}

GetCustomProtectionRulesFilterArrayInput is an input type that accepts GetCustomProtectionRulesFilterArray and GetCustomProtectionRulesFilterArrayOutput values. You can construct a concrete instance of `GetCustomProtectionRulesFilterArrayInput` via:

GetCustomProtectionRulesFilterArray{ GetCustomProtectionRulesFilterArgs{...} }

type GetCustomProtectionRulesFilterArrayOutput

type GetCustomProtectionRulesFilterArrayOutput struct{ *pulumi.OutputState }

func (GetCustomProtectionRulesFilterArrayOutput) ElementType

func (GetCustomProtectionRulesFilterArrayOutput) Index

func (GetCustomProtectionRulesFilterArrayOutput) ToGetCustomProtectionRulesFilterArrayOutput

func (o GetCustomProtectionRulesFilterArrayOutput) ToGetCustomProtectionRulesFilterArrayOutput() GetCustomProtectionRulesFilterArrayOutput

func (GetCustomProtectionRulesFilterArrayOutput) ToGetCustomProtectionRulesFilterArrayOutputWithContext

func (o GetCustomProtectionRulesFilterArrayOutput) ToGetCustomProtectionRulesFilterArrayOutputWithContext(ctx context.Context) GetCustomProtectionRulesFilterArrayOutput

type GetCustomProtectionRulesFilterInput

type GetCustomProtectionRulesFilterInput interface {
	pulumi.Input

	ToGetCustomProtectionRulesFilterOutput() GetCustomProtectionRulesFilterOutput
	ToGetCustomProtectionRulesFilterOutputWithContext(context.Context) GetCustomProtectionRulesFilterOutput
}

GetCustomProtectionRulesFilterInput is an input type that accepts GetCustomProtectionRulesFilterArgs and GetCustomProtectionRulesFilterOutput values. You can construct a concrete instance of `GetCustomProtectionRulesFilterInput` via:

GetCustomProtectionRulesFilterArgs{...}

type GetCustomProtectionRulesFilterOutput

type GetCustomProtectionRulesFilterOutput struct{ *pulumi.OutputState }

func (GetCustomProtectionRulesFilterOutput) ElementType

func (GetCustomProtectionRulesFilterOutput) Name

func (GetCustomProtectionRulesFilterOutput) Regex

func (GetCustomProtectionRulesFilterOutput) ToGetCustomProtectionRulesFilterOutput

func (o GetCustomProtectionRulesFilterOutput) ToGetCustomProtectionRulesFilterOutput() GetCustomProtectionRulesFilterOutput

func (GetCustomProtectionRulesFilterOutput) ToGetCustomProtectionRulesFilterOutputWithContext

func (o GetCustomProtectionRulesFilterOutput) ToGetCustomProtectionRulesFilterOutputWithContext(ctx context.Context) GetCustomProtectionRulesFilterOutput

func (GetCustomProtectionRulesFilterOutput) Values

type GetCustomProtectionRulesOutputArgs

type GetCustomProtectionRulesOutputArgs struct {
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. This number is generated when the compartment is created.
	CompartmentId pulumi.StringInput `pulumi:"compartmentId"`
	// Filter custom protection rules using a list of display names.
	DisplayNames pulumi.StringArrayInput                  `pulumi:"displayNames"`
	Filters      GetCustomProtectionRulesFilterArrayInput `pulumi:"filters"`
	// Filter custom protection rules using a list of custom protection rule OCIDs.
	Ids pulumi.StringArrayInput `pulumi:"ids"`
	// Filter Custom Protection rules using a list of lifecycle states.
	States pulumi.StringArrayInput `pulumi:"states"`
	// A filter that matches Custom Protection rules created on or after the specified date-time.
	TimeCreatedGreaterThanOrEqualTo pulumi.StringPtrInput `pulumi:"timeCreatedGreaterThanOrEqualTo"`
	// A filter that matches custom protection rules created before the specified date-time.
	TimeCreatedLessThan pulumi.StringPtrInput `pulumi:"timeCreatedLessThan"`
}

A collection of arguments for invoking getCustomProtectionRules.

func (GetCustomProtectionRulesOutputArgs) ElementType

type GetCustomProtectionRulesResult

type GetCustomProtectionRulesResult struct {
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the custom protection rule's compartment.
	CompartmentId string `pulumi:"compartmentId"`
	// The list of custom_protection_rules.
	CustomProtectionRules []GetCustomProtectionRulesCustomProtectionRule `pulumi:"customProtectionRules"`
	DisplayNames          []string                                       `pulumi:"displayNames"`
	Filters               []GetCustomProtectionRulesFilter               `pulumi:"filters"`
	// The provider-assigned unique ID for this managed resource.
	Id                              string   `pulumi:"id"`
	Ids                             []string `pulumi:"ids"`
	States                          []string `pulumi:"states"`
	TimeCreatedGreaterThanOrEqualTo *string  `pulumi:"timeCreatedGreaterThanOrEqualTo"`
	TimeCreatedLessThan             *string  `pulumi:"timeCreatedLessThan"`
}

A collection of values returned by getCustomProtectionRules.

func GetCustomProtectionRules

func GetCustomProtectionRules(ctx *pulumi.Context, args *GetCustomProtectionRulesArgs, opts ...pulumi.InvokeOption) (*GetCustomProtectionRulesResult, error)

This data source provides the list of Custom Protection Rules in Oracle Cloud Infrastructure Web Application Acceleration and Security service.

Gets a list of custom protection rules for the specified Web Application Firewall.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-oci/sdk/go/oci/Waas"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Waas.GetCustomProtectionRules(ctx, &waas.GetCustomProtectionRulesArgs{
			CompartmentId:                   compartmentId,
			DisplayNames:                    customProtectionRuleDisplayNames,
			Ids:                             customProtectionRuleIds,
			States:                          customProtectionRuleStates,
			TimeCreatedGreaterThanOrEqualTo: pulumi.StringRef(customProtectionRuleTimeCreatedGreaterThanOrEqualTo),
			TimeCreatedLessThan:             pulumi.StringRef(customProtectionRuleTimeCreatedLessThan),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetCustomProtectionRulesResultOutput

type GetCustomProtectionRulesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getCustomProtectionRules.

func (GetCustomProtectionRulesResultOutput) CompartmentId

The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the custom protection rule's compartment.

func (GetCustomProtectionRulesResultOutput) CustomProtectionRules

The list of custom_protection_rules.

func (GetCustomProtectionRulesResultOutput) DisplayNames

func (GetCustomProtectionRulesResultOutput) ElementType

func (GetCustomProtectionRulesResultOutput) Filters

func (GetCustomProtectionRulesResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetCustomProtectionRulesResultOutput) Ids

func (GetCustomProtectionRulesResultOutput) States

func (GetCustomProtectionRulesResultOutput) TimeCreatedGreaterThanOrEqualTo

func (o GetCustomProtectionRulesResultOutput) TimeCreatedGreaterThanOrEqualTo() pulumi.StringPtrOutput

func (GetCustomProtectionRulesResultOutput) TimeCreatedLessThan

func (GetCustomProtectionRulesResultOutput) ToGetCustomProtectionRulesResultOutput

func (o GetCustomProtectionRulesResultOutput) ToGetCustomProtectionRulesResultOutput() GetCustomProtectionRulesResultOutput

func (GetCustomProtectionRulesResultOutput) ToGetCustomProtectionRulesResultOutputWithContext

func (o GetCustomProtectionRulesResultOutput) ToGetCustomProtectionRulesResultOutputWithContext(ctx context.Context) GetCustomProtectionRulesResultOutput

type GetEdgeSubnetsArgs

type GetEdgeSubnetsArgs struct {
	Filters []GetEdgeSubnetsFilter `pulumi:"filters"`
}

A collection of arguments for invoking getEdgeSubnets.

type GetEdgeSubnetsEdgeSubnet

type GetEdgeSubnetsEdgeSubnet struct {
	// An edge node subnet. This can include /24 or /8 addresses.
	Cidr string `pulumi:"cidr"`
	// The name of the region containing the indicated subnet.
	Region string `pulumi:"region"`
	// The date and time the last change was made to the indicated edge node subnet, expressed in RFC 3339 timestamp format.
	TimeModified string `pulumi:"timeModified"`
}

type GetEdgeSubnetsEdgeSubnetArgs

type GetEdgeSubnetsEdgeSubnetArgs struct {
	// An edge node subnet. This can include /24 or /8 addresses.
	Cidr pulumi.StringInput `pulumi:"cidr"`
	// The name of the region containing the indicated subnet.
	Region pulumi.StringInput `pulumi:"region"`
	// The date and time the last change was made to the indicated edge node subnet, expressed in RFC 3339 timestamp format.
	TimeModified pulumi.StringInput `pulumi:"timeModified"`
}

func (GetEdgeSubnetsEdgeSubnetArgs) ElementType

func (GetEdgeSubnetsEdgeSubnetArgs) ToGetEdgeSubnetsEdgeSubnetOutput

func (i GetEdgeSubnetsEdgeSubnetArgs) ToGetEdgeSubnetsEdgeSubnetOutput() GetEdgeSubnetsEdgeSubnetOutput

func (GetEdgeSubnetsEdgeSubnetArgs) ToGetEdgeSubnetsEdgeSubnetOutputWithContext

func (i GetEdgeSubnetsEdgeSubnetArgs) ToGetEdgeSubnetsEdgeSubnetOutputWithContext(ctx context.Context) GetEdgeSubnetsEdgeSubnetOutput

type GetEdgeSubnetsEdgeSubnetArray

type GetEdgeSubnetsEdgeSubnetArray []GetEdgeSubnetsEdgeSubnetInput

func (GetEdgeSubnetsEdgeSubnetArray) ElementType

func (GetEdgeSubnetsEdgeSubnetArray) ToGetEdgeSubnetsEdgeSubnetArrayOutput

func (i GetEdgeSubnetsEdgeSubnetArray) ToGetEdgeSubnetsEdgeSubnetArrayOutput() GetEdgeSubnetsEdgeSubnetArrayOutput

func (GetEdgeSubnetsEdgeSubnetArray) ToGetEdgeSubnetsEdgeSubnetArrayOutputWithContext

func (i GetEdgeSubnetsEdgeSubnetArray) ToGetEdgeSubnetsEdgeSubnetArrayOutputWithContext(ctx context.Context) GetEdgeSubnetsEdgeSubnetArrayOutput

type GetEdgeSubnetsEdgeSubnetArrayInput

type GetEdgeSubnetsEdgeSubnetArrayInput interface {
	pulumi.Input

	ToGetEdgeSubnetsEdgeSubnetArrayOutput() GetEdgeSubnetsEdgeSubnetArrayOutput
	ToGetEdgeSubnetsEdgeSubnetArrayOutputWithContext(context.Context) GetEdgeSubnetsEdgeSubnetArrayOutput
}

GetEdgeSubnetsEdgeSubnetArrayInput is an input type that accepts GetEdgeSubnetsEdgeSubnetArray and GetEdgeSubnetsEdgeSubnetArrayOutput values. You can construct a concrete instance of `GetEdgeSubnetsEdgeSubnetArrayInput` via:

GetEdgeSubnetsEdgeSubnetArray{ GetEdgeSubnetsEdgeSubnetArgs{...} }

type GetEdgeSubnetsEdgeSubnetArrayOutput

type GetEdgeSubnetsEdgeSubnetArrayOutput struct{ *pulumi.OutputState }

func (GetEdgeSubnetsEdgeSubnetArrayOutput) ElementType

func (GetEdgeSubnetsEdgeSubnetArrayOutput) Index

func (GetEdgeSubnetsEdgeSubnetArrayOutput) ToGetEdgeSubnetsEdgeSubnetArrayOutput

func (o GetEdgeSubnetsEdgeSubnetArrayOutput) ToGetEdgeSubnetsEdgeSubnetArrayOutput() GetEdgeSubnetsEdgeSubnetArrayOutput

func (GetEdgeSubnetsEdgeSubnetArrayOutput) ToGetEdgeSubnetsEdgeSubnetArrayOutputWithContext

func (o GetEdgeSubnetsEdgeSubnetArrayOutput) ToGetEdgeSubnetsEdgeSubnetArrayOutputWithContext(ctx context.Context) GetEdgeSubnetsEdgeSubnetArrayOutput

type GetEdgeSubnetsEdgeSubnetInput

type GetEdgeSubnetsEdgeSubnetInput interface {
	pulumi.Input

	ToGetEdgeSubnetsEdgeSubnetOutput() GetEdgeSubnetsEdgeSubnetOutput
	ToGetEdgeSubnetsEdgeSubnetOutputWithContext(context.Context) GetEdgeSubnetsEdgeSubnetOutput
}

GetEdgeSubnetsEdgeSubnetInput is an input type that accepts GetEdgeSubnetsEdgeSubnetArgs and GetEdgeSubnetsEdgeSubnetOutput values. You can construct a concrete instance of `GetEdgeSubnetsEdgeSubnetInput` via:

GetEdgeSubnetsEdgeSubnetArgs{...}

type GetEdgeSubnetsEdgeSubnetOutput

type GetEdgeSubnetsEdgeSubnetOutput struct{ *pulumi.OutputState }

func (GetEdgeSubnetsEdgeSubnetOutput) Cidr

An edge node subnet. This can include /24 or /8 addresses.

func (GetEdgeSubnetsEdgeSubnetOutput) ElementType

func (GetEdgeSubnetsEdgeSubnetOutput) Region

The name of the region containing the indicated subnet.

func (GetEdgeSubnetsEdgeSubnetOutput) TimeModified

The date and time the last change was made to the indicated edge node subnet, expressed in RFC 3339 timestamp format.

func (GetEdgeSubnetsEdgeSubnetOutput) ToGetEdgeSubnetsEdgeSubnetOutput

func (o GetEdgeSubnetsEdgeSubnetOutput) ToGetEdgeSubnetsEdgeSubnetOutput() GetEdgeSubnetsEdgeSubnetOutput

func (GetEdgeSubnetsEdgeSubnetOutput) ToGetEdgeSubnetsEdgeSubnetOutputWithContext

func (o GetEdgeSubnetsEdgeSubnetOutput) ToGetEdgeSubnetsEdgeSubnetOutputWithContext(ctx context.Context) GetEdgeSubnetsEdgeSubnetOutput

type GetEdgeSubnetsFilter

type GetEdgeSubnetsFilter struct {
	Name   string   `pulumi:"name"`
	Regex  *bool    `pulumi:"regex"`
	Values []string `pulumi:"values"`
}

type GetEdgeSubnetsFilterArgs

type GetEdgeSubnetsFilterArgs struct {
	Name   pulumi.StringInput      `pulumi:"name"`
	Regex  pulumi.BoolPtrInput     `pulumi:"regex"`
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetEdgeSubnetsFilterArgs) ElementType

func (GetEdgeSubnetsFilterArgs) ElementType() reflect.Type

func (GetEdgeSubnetsFilterArgs) ToGetEdgeSubnetsFilterOutput

func (i GetEdgeSubnetsFilterArgs) ToGetEdgeSubnetsFilterOutput() GetEdgeSubnetsFilterOutput

func (GetEdgeSubnetsFilterArgs) ToGetEdgeSubnetsFilterOutputWithContext

func (i GetEdgeSubnetsFilterArgs) ToGetEdgeSubnetsFilterOutputWithContext(ctx context.Context) GetEdgeSubnetsFilterOutput

type GetEdgeSubnetsFilterArray

type GetEdgeSubnetsFilterArray []GetEdgeSubnetsFilterInput

func (GetEdgeSubnetsFilterArray) ElementType

func (GetEdgeSubnetsFilterArray) ElementType() reflect.Type

func (GetEdgeSubnetsFilterArray) ToGetEdgeSubnetsFilterArrayOutput

func (i GetEdgeSubnetsFilterArray) ToGetEdgeSubnetsFilterArrayOutput() GetEdgeSubnetsFilterArrayOutput

func (GetEdgeSubnetsFilterArray) ToGetEdgeSubnetsFilterArrayOutputWithContext

func (i GetEdgeSubnetsFilterArray) ToGetEdgeSubnetsFilterArrayOutputWithContext(ctx context.Context) GetEdgeSubnetsFilterArrayOutput

type GetEdgeSubnetsFilterArrayInput

type GetEdgeSubnetsFilterArrayInput interface {
	pulumi.Input

	ToGetEdgeSubnetsFilterArrayOutput() GetEdgeSubnetsFilterArrayOutput
	ToGetEdgeSubnetsFilterArrayOutputWithContext(context.Context) GetEdgeSubnetsFilterArrayOutput
}

GetEdgeSubnetsFilterArrayInput is an input type that accepts GetEdgeSubnetsFilterArray and GetEdgeSubnetsFilterArrayOutput values. You can construct a concrete instance of `GetEdgeSubnetsFilterArrayInput` via:

GetEdgeSubnetsFilterArray{ GetEdgeSubnetsFilterArgs{...} }

type GetEdgeSubnetsFilterArrayOutput

type GetEdgeSubnetsFilterArrayOutput struct{ *pulumi.OutputState }

func (GetEdgeSubnetsFilterArrayOutput) ElementType

func (GetEdgeSubnetsFilterArrayOutput) Index

func (GetEdgeSubnetsFilterArrayOutput) ToGetEdgeSubnetsFilterArrayOutput

func (o GetEdgeSubnetsFilterArrayOutput) ToGetEdgeSubnetsFilterArrayOutput() GetEdgeSubnetsFilterArrayOutput

func (GetEdgeSubnetsFilterArrayOutput) ToGetEdgeSubnetsFilterArrayOutputWithContext

func (o GetEdgeSubnetsFilterArrayOutput) ToGetEdgeSubnetsFilterArrayOutputWithContext(ctx context.Context) GetEdgeSubnetsFilterArrayOutput

type GetEdgeSubnetsFilterInput

type GetEdgeSubnetsFilterInput interface {
	pulumi.Input

	ToGetEdgeSubnetsFilterOutput() GetEdgeSubnetsFilterOutput
	ToGetEdgeSubnetsFilterOutputWithContext(context.Context) GetEdgeSubnetsFilterOutput
}

GetEdgeSubnetsFilterInput is an input type that accepts GetEdgeSubnetsFilterArgs and GetEdgeSubnetsFilterOutput values. You can construct a concrete instance of `GetEdgeSubnetsFilterInput` via:

GetEdgeSubnetsFilterArgs{...}

type GetEdgeSubnetsFilterOutput

type GetEdgeSubnetsFilterOutput struct{ *pulumi.OutputState }

func (GetEdgeSubnetsFilterOutput) ElementType

func (GetEdgeSubnetsFilterOutput) ElementType() reflect.Type

func (GetEdgeSubnetsFilterOutput) Name

func (GetEdgeSubnetsFilterOutput) Regex

func (GetEdgeSubnetsFilterOutput) ToGetEdgeSubnetsFilterOutput

func (o GetEdgeSubnetsFilterOutput) ToGetEdgeSubnetsFilterOutput() GetEdgeSubnetsFilterOutput

func (GetEdgeSubnetsFilterOutput) ToGetEdgeSubnetsFilterOutputWithContext

func (o GetEdgeSubnetsFilterOutput) ToGetEdgeSubnetsFilterOutputWithContext(ctx context.Context) GetEdgeSubnetsFilterOutput

func (GetEdgeSubnetsFilterOutput) Values

type GetEdgeSubnetsOutputArgs

type GetEdgeSubnetsOutputArgs struct {
	Filters GetEdgeSubnetsFilterArrayInput `pulumi:"filters"`
}

A collection of arguments for invoking getEdgeSubnets.

func (GetEdgeSubnetsOutputArgs) ElementType

func (GetEdgeSubnetsOutputArgs) ElementType() reflect.Type

type GetEdgeSubnetsResult

type GetEdgeSubnetsResult struct {
	// The list of edge_subnets.
	EdgeSubnets []GetEdgeSubnetsEdgeSubnet `pulumi:"edgeSubnets"`
	Filters     []GetEdgeSubnetsFilter     `pulumi:"filters"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
}

A collection of values returned by getEdgeSubnets.

func GetEdgeSubnets

func GetEdgeSubnets(ctx *pulumi.Context, args *GetEdgeSubnetsArgs, opts ...pulumi.InvokeOption) (*GetEdgeSubnetsResult, error)

This data source provides the list of Edge Subnets in Oracle Cloud Infrastructure Web Application Acceleration and Security service.

Return the list of the tenant's edge node subnets. Use these CIDR blocks to restrict incoming traffic to your origin. These subnets are owned by Oracle Cloud Infrastructure and forward traffic to customer origins. They are not associated with specific regions or compartments.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-oci/sdk/go/oci/Waas"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Waas.GetEdgeSubnets(ctx, nil, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetEdgeSubnetsResultOutput

type GetEdgeSubnetsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getEdgeSubnets.

func (GetEdgeSubnetsResultOutput) EdgeSubnets

The list of edge_subnets.

func (GetEdgeSubnetsResultOutput) ElementType

func (GetEdgeSubnetsResultOutput) ElementType() reflect.Type

func (GetEdgeSubnetsResultOutput) Filters

func (GetEdgeSubnetsResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetEdgeSubnetsResultOutput) ToGetEdgeSubnetsResultOutput

func (o GetEdgeSubnetsResultOutput) ToGetEdgeSubnetsResultOutput() GetEdgeSubnetsResultOutput

func (GetEdgeSubnetsResultOutput) ToGetEdgeSubnetsResultOutputWithContext

func (o GetEdgeSubnetsResultOutput) ToGetEdgeSubnetsResultOutputWithContext(ctx context.Context) GetEdgeSubnetsResultOutput

type GetHttpRedirectTarget

type GetHttpRedirectTarget struct {
	// The host portion of the redirect.
	Host string `pulumi:"host"`
	// The path component of the target URL (e.g., "/path/to/resource" in "https://target.example.com/path/to/resource?redirected"), which can be empty, static, or request-copying, or request-prefixing. Use of \ is not permitted except to escape a following \, {, or }. An empty value is treated the same as static "/". A static value must begin with a leading "/", optionally followed by other path characters. A request-copying value must exactly match "{path}", and will be replaced with the path component of the request URL (including its initial "/"). A request-prefixing value must start with "/" and end with a non-escaped "{path}", which will be replaced with the path component of the request URL (including its initial "/"). Only one such replacement token is allowed.
	Path string `pulumi:"path"`
	// Port number of the target destination of the redirect, default to match protocol
	Port int `pulumi:"port"`
	// The protocol used for the target, http or https.
	Protocol string `pulumi:"protocol"`
	// The query component of the target URL (e.g., "?redirected" in "https://target.example.com/path/to/resource?redirected"), which can be empty, static, or request-copying. Use of \ is not permitted except to escape a following \, {, or }. An empty value results in a redirection target URL with no query component. A static value must begin with a leading "?", optionally followed by other query characters. A request-copying value must exactly match "{query}", and will be replaced with the query component of the request URL (including a leading "?" if and only if the request URL includes a query component).
	Query string `pulumi:"query"`
}

type GetHttpRedirectTargetArgs

type GetHttpRedirectTargetArgs struct {
	// The host portion of the redirect.
	Host pulumi.StringInput `pulumi:"host"`
	// The path component of the target URL (e.g., "/path/to/resource" in "https://target.example.com/path/to/resource?redirected"), which can be empty, static, or request-copying, or request-prefixing. Use of \ is not permitted except to escape a following \, {, or }. An empty value is treated the same as static "/". A static value must begin with a leading "/", optionally followed by other path characters. A request-copying value must exactly match "{path}", and will be replaced with the path component of the request URL (including its initial "/"). A request-prefixing value must start with "/" and end with a non-escaped "{path}", which will be replaced with the path component of the request URL (including its initial "/"). Only one such replacement token is allowed.
	Path pulumi.StringInput `pulumi:"path"`
	// Port number of the target destination of the redirect, default to match protocol
	Port pulumi.IntInput `pulumi:"port"`
	// The protocol used for the target, http or https.
	Protocol pulumi.StringInput `pulumi:"protocol"`
	// The query component of the target URL (e.g., "?redirected" in "https://target.example.com/path/to/resource?redirected"), which can be empty, static, or request-copying. Use of \ is not permitted except to escape a following \, {, or }. An empty value results in a redirection target URL with no query component. A static value must begin with a leading "?", optionally followed by other query characters. A request-copying value must exactly match "{query}", and will be replaced with the query component of the request URL (including a leading "?" if and only if the request URL includes a query component).
	Query pulumi.StringInput `pulumi:"query"`
}

func (GetHttpRedirectTargetArgs) ElementType

func (GetHttpRedirectTargetArgs) ElementType() reflect.Type

func (GetHttpRedirectTargetArgs) ToGetHttpRedirectTargetOutput

func (i GetHttpRedirectTargetArgs) ToGetHttpRedirectTargetOutput() GetHttpRedirectTargetOutput

func (GetHttpRedirectTargetArgs) ToGetHttpRedirectTargetOutputWithContext

func (i GetHttpRedirectTargetArgs) ToGetHttpRedirectTargetOutputWithContext(ctx context.Context) GetHttpRedirectTargetOutput

type GetHttpRedirectTargetArray

type GetHttpRedirectTargetArray []GetHttpRedirectTargetInput

func (GetHttpRedirectTargetArray) ElementType

func (GetHttpRedirectTargetArray) ElementType() reflect.Type

func (GetHttpRedirectTargetArray) ToGetHttpRedirectTargetArrayOutput

func (i GetHttpRedirectTargetArray) ToGetHttpRedirectTargetArrayOutput() GetHttpRedirectTargetArrayOutput

func (GetHttpRedirectTargetArray) ToGetHttpRedirectTargetArrayOutputWithContext

func (i GetHttpRedirectTargetArray) ToGetHttpRedirectTargetArrayOutputWithContext(ctx context.Context) GetHttpRedirectTargetArrayOutput

type GetHttpRedirectTargetArrayInput

type GetHttpRedirectTargetArrayInput interface {
	pulumi.Input

	ToGetHttpRedirectTargetArrayOutput() GetHttpRedirectTargetArrayOutput
	ToGetHttpRedirectTargetArrayOutputWithContext(context.Context) GetHttpRedirectTargetArrayOutput
}

GetHttpRedirectTargetArrayInput is an input type that accepts GetHttpRedirectTargetArray and GetHttpRedirectTargetArrayOutput values. You can construct a concrete instance of `GetHttpRedirectTargetArrayInput` via:

GetHttpRedirectTargetArray{ GetHttpRedirectTargetArgs{...} }

type GetHttpRedirectTargetArrayOutput

type GetHttpRedirectTargetArrayOutput struct{ *pulumi.OutputState }

func (GetHttpRedirectTargetArrayOutput) ElementType

func (GetHttpRedirectTargetArrayOutput) Index

func (GetHttpRedirectTargetArrayOutput) ToGetHttpRedirectTargetArrayOutput

func (o GetHttpRedirectTargetArrayOutput) ToGetHttpRedirectTargetArrayOutput() GetHttpRedirectTargetArrayOutput

func (GetHttpRedirectTargetArrayOutput) ToGetHttpRedirectTargetArrayOutputWithContext

func (o GetHttpRedirectTargetArrayOutput) ToGetHttpRedirectTargetArrayOutputWithContext(ctx context.Context) GetHttpRedirectTargetArrayOutput

type GetHttpRedirectTargetInput

type GetHttpRedirectTargetInput interface {
	pulumi.Input

	ToGetHttpRedirectTargetOutput() GetHttpRedirectTargetOutput
	ToGetHttpRedirectTargetOutputWithContext(context.Context) GetHttpRedirectTargetOutput
}

GetHttpRedirectTargetInput is an input type that accepts GetHttpRedirectTargetArgs and GetHttpRedirectTargetOutput values. You can construct a concrete instance of `GetHttpRedirectTargetInput` via:

GetHttpRedirectTargetArgs{...}

type GetHttpRedirectTargetOutput

type GetHttpRedirectTargetOutput struct{ *pulumi.OutputState }

func (GetHttpRedirectTargetOutput) ElementType

func (GetHttpRedirectTargetOutput) Host

The host portion of the redirect.

func (GetHttpRedirectTargetOutput) Path

The path component of the target URL (e.g., "/path/to/resource" in "https://target.example.com/path/to/resource?redirected"), which can be empty, static, or request-copying, or request-prefixing. Use of \ is not permitted except to escape a following \, {, or }. An empty value is treated the same as static "/". A static value must begin with a leading "/", optionally followed by other path characters. A request-copying value must exactly match "{path}", and will be replaced with the path component of the request URL (including its initial "/"). A request-prefixing value must start with "/" and end with a non-escaped "{path}", which will be replaced with the path component of the request URL (including its initial "/"). Only one such replacement token is allowed.

func (GetHttpRedirectTargetOutput) Port

Port number of the target destination of the redirect, default to match protocol

func (GetHttpRedirectTargetOutput) Protocol

The protocol used for the target, http or https.

func (GetHttpRedirectTargetOutput) Query

The query component of the target URL (e.g., "?redirected" in "https://target.example.com/path/to/resource?redirected"), which can be empty, static, or request-copying. Use of \ is not permitted except to escape a following \, {, or }. An empty value results in a redirection target URL with no query component. A static value must begin with a leading "?", optionally followed by other query characters. A request-copying value must exactly match "{query}", and will be replaced with the query component of the request URL (including a leading "?" if and only if the request URL includes a query component).

func (GetHttpRedirectTargetOutput) ToGetHttpRedirectTargetOutput

func (o GetHttpRedirectTargetOutput) ToGetHttpRedirectTargetOutput() GetHttpRedirectTargetOutput

func (GetHttpRedirectTargetOutput) ToGetHttpRedirectTargetOutputWithContext

func (o GetHttpRedirectTargetOutput) ToGetHttpRedirectTargetOutputWithContext(ctx context.Context) GetHttpRedirectTargetOutput

type GetHttpRedirectsArgs

type GetHttpRedirectsArgs struct {
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. This number is generated when the compartment is created.
	CompartmentId string `pulumi:"compartmentId"`
	// Filter redirects using a display name.
	DisplayNames []string                 `pulumi:"displayNames"`
	Filters      []GetHttpRedirectsFilter `pulumi:"filters"`
	// Filter redirects using a list of redirect OCIDs.
	Ids []string `pulumi:"ids"`
	// Filter redirects using a list of lifecycle states.
	States []string `pulumi:"states"`
	// A filter that matches redirects created on or after the specified date and time.
	TimeCreatedGreaterThanOrEqualTo *string `pulumi:"timeCreatedGreaterThanOrEqualTo"`
	// A filter that matches redirects created before the specified date-time. Default to 1 day before now.
	TimeCreatedLessThan *string `pulumi:"timeCreatedLessThan"`
}

A collection of arguments for invoking getHttpRedirects.

type GetHttpRedirectsFilter

type GetHttpRedirectsFilter struct {
	Name   string   `pulumi:"name"`
	Regex  *bool    `pulumi:"regex"`
	Values []string `pulumi:"values"`
}

type GetHttpRedirectsFilterArgs

type GetHttpRedirectsFilterArgs struct {
	Name   pulumi.StringInput      `pulumi:"name"`
	Regex  pulumi.BoolPtrInput     `pulumi:"regex"`
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetHttpRedirectsFilterArgs) ElementType

func (GetHttpRedirectsFilterArgs) ElementType() reflect.Type

func (GetHttpRedirectsFilterArgs) ToGetHttpRedirectsFilterOutput

func (i GetHttpRedirectsFilterArgs) ToGetHttpRedirectsFilterOutput() GetHttpRedirectsFilterOutput

func (GetHttpRedirectsFilterArgs) ToGetHttpRedirectsFilterOutputWithContext

func (i GetHttpRedirectsFilterArgs) ToGetHttpRedirectsFilterOutputWithContext(ctx context.Context) GetHttpRedirectsFilterOutput

type GetHttpRedirectsFilterArray

type GetHttpRedirectsFilterArray []GetHttpRedirectsFilterInput

func (GetHttpRedirectsFilterArray) ElementType

func (GetHttpRedirectsFilterArray) ToGetHttpRedirectsFilterArrayOutput

func (i GetHttpRedirectsFilterArray) ToGetHttpRedirectsFilterArrayOutput() GetHttpRedirectsFilterArrayOutput

func (GetHttpRedirectsFilterArray) ToGetHttpRedirectsFilterArrayOutputWithContext

func (i GetHttpRedirectsFilterArray) ToGetHttpRedirectsFilterArrayOutputWithContext(ctx context.Context) GetHttpRedirectsFilterArrayOutput

type GetHttpRedirectsFilterArrayInput

type GetHttpRedirectsFilterArrayInput interface {
	pulumi.Input

	ToGetHttpRedirectsFilterArrayOutput() GetHttpRedirectsFilterArrayOutput
	ToGetHttpRedirectsFilterArrayOutputWithContext(context.Context) GetHttpRedirectsFilterArrayOutput
}

GetHttpRedirectsFilterArrayInput is an input type that accepts GetHttpRedirectsFilterArray and GetHttpRedirectsFilterArrayOutput values. You can construct a concrete instance of `GetHttpRedirectsFilterArrayInput` via:

GetHttpRedirectsFilterArray{ GetHttpRedirectsFilterArgs{...} }

type GetHttpRedirectsFilterArrayOutput

type GetHttpRedirectsFilterArrayOutput struct{ *pulumi.OutputState }

func (GetHttpRedirectsFilterArrayOutput) ElementType

func (GetHttpRedirectsFilterArrayOutput) Index

func (GetHttpRedirectsFilterArrayOutput) ToGetHttpRedirectsFilterArrayOutput

func (o GetHttpRedirectsFilterArrayOutput) ToGetHttpRedirectsFilterArrayOutput() GetHttpRedirectsFilterArrayOutput

func (GetHttpRedirectsFilterArrayOutput) ToGetHttpRedirectsFilterArrayOutputWithContext

func (o GetHttpRedirectsFilterArrayOutput) ToGetHttpRedirectsFilterArrayOutputWithContext(ctx context.Context) GetHttpRedirectsFilterArrayOutput

type GetHttpRedirectsFilterInput

type GetHttpRedirectsFilterInput interface {
	pulumi.Input

	ToGetHttpRedirectsFilterOutput() GetHttpRedirectsFilterOutput
	ToGetHttpRedirectsFilterOutputWithContext(context.Context) GetHttpRedirectsFilterOutput
}

GetHttpRedirectsFilterInput is an input type that accepts GetHttpRedirectsFilterArgs and GetHttpRedirectsFilterOutput values. You can construct a concrete instance of `GetHttpRedirectsFilterInput` via:

GetHttpRedirectsFilterArgs{...}

type GetHttpRedirectsFilterOutput

type GetHttpRedirectsFilterOutput struct{ *pulumi.OutputState }

func (GetHttpRedirectsFilterOutput) ElementType

func (GetHttpRedirectsFilterOutput) Name

func (GetHttpRedirectsFilterOutput) Regex

func (GetHttpRedirectsFilterOutput) ToGetHttpRedirectsFilterOutput

func (o GetHttpRedirectsFilterOutput) ToGetHttpRedirectsFilterOutput() GetHttpRedirectsFilterOutput

func (GetHttpRedirectsFilterOutput) ToGetHttpRedirectsFilterOutputWithContext

func (o GetHttpRedirectsFilterOutput) ToGetHttpRedirectsFilterOutputWithContext(ctx context.Context) GetHttpRedirectsFilterOutput

func (GetHttpRedirectsFilterOutput) Values

type GetHttpRedirectsHttpRedirect

type GetHttpRedirectsHttpRedirect struct {
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. This number is generated when the compartment is created.
	CompartmentId string `pulumi:"compartmentId"`
	// Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Operations.CostCenter": "42"}`
	DefinedTags map[string]interface{} `pulumi:"definedTags"`
	// The user-friendly name of the HTTP Redirect. The name can be changed and does not need to be unique.
	DisplayName string `pulumi:"displayName"`
	// The domain from which traffic will be redirected.
	Domain string `pulumi:"domain"`
	// Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Department": "Finance"}`
	FreeformTags map[string]interface{} `pulumi:"freeformTags"`
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the HTTP Redirect.
	Id string `pulumi:"id"`
	// The response code returned for the redirect to the client. For more information, see [RFC 7231](https://tools.ietf.org/html/rfc7231#section-6.4).
	ResponseCode int `pulumi:"responseCode"`
	// The current lifecycle state of the HTTP Redirect.
	State string `pulumi:"state"`
	// The redirect target object including all the redirect data.
	Targets []GetHttpRedirectsHttpRedirectTarget `pulumi:"targets"`
	// The date and time the policy was created, expressed in RFC 3339 timestamp format.
	TimeCreated string `pulumi:"timeCreated"`
}

type GetHttpRedirectsHttpRedirectArgs

type GetHttpRedirectsHttpRedirectArgs struct {
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. This number is generated when the compartment is created.
	CompartmentId pulumi.StringInput `pulumi:"compartmentId"`
	// Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Operations.CostCenter": "42"}`
	DefinedTags pulumi.MapInput `pulumi:"definedTags"`
	// The user-friendly name of the HTTP Redirect. The name can be changed and does not need to be unique.
	DisplayName pulumi.StringInput `pulumi:"displayName"`
	// The domain from which traffic will be redirected.
	Domain pulumi.StringInput `pulumi:"domain"`
	// Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Department": "Finance"}`
	FreeformTags pulumi.MapInput `pulumi:"freeformTags"`
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the HTTP Redirect.
	Id pulumi.StringInput `pulumi:"id"`
	// The response code returned for the redirect to the client. For more information, see [RFC 7231](https://tools.ietf.org/html/rfc7231#section-6.4).
	ResponseCode pulumi.IntInput `pulumi:"responseCode"`
	// The current lifecycle state of the HTTP Redirect.
	State pulumi.StringInput `pulumi:"state"`
	// The redirect target object including all the redirect data.
	Targets GetHttpRedirectsHttpRedirectTargetArrayInput `pulumi:"targets"`
	// The date and time the policy was created, expressed in RFC 3339 timestamp format.
	TimeCreated pulumi.StringInput `pulumi:"timeCreated"`
}

func (GetHttpRedirectsHttpRedirectArgs) ElementType

func (GetHttpRedirectsHttpRedirectArgs) ToGetHttpRedirectsHttpRedirectOutput

func (i GetHttpRedirectsHttpRedirectArgs) ToGetHttpRedirectsHttpRedirectOutput() GetHttpRedirectsHttpRedirectOutput

func (GetHttpRedirectsHttpRedirectArgs) ToGetHttpRedirectsHttpRedirectOutputWithContext

func (i GetHttpRedirectsHttpRedirectArgs) ToGetHttpRedirectsHttpRedirectOutputWithContext(ctx context.Context) GetHttpRedirectsHttpRedirectOutput

type GetHttpRedirectsHttpRedirectArray

type GetHttpRedirectsHttpRedirectArray []GetHttpRedirectsHttpRedirectInput

func (GetHttpRedirectsHttpRedirectArray) ElementType

func (GetHttpRedirectsHttpRedirectArray) ToGetHttpRedirectsHttpRedirectArrayOutput

func (i GetHttpRedirectsHttpRedirectArray) ToGetHttpRedirectsHttpRedirectArrayOutput() GetHttpRedirectsHttpRedirectArrayOutput

func (GetHttpRedirectsHttpRedirectArray) ToGetHttpRedirectsHttpRedirectArrayOutputWithContext

func (i GetHttpRedirectsHttpRedirectArray) ToGetHttpRedirectsHttpRedirectArrayOutputWithContext(ctx context.Context) GetHttpRedirectsHttpRedirectArrayOutput

type GetHttpRedirectsHttpRedirectArrayInput

type GetHttpRedirectsHttpRedirectArrayInput interface {
	pulumi.Input

	ToGetHttpRedirectsHttpRedirectArrayOutput() GetHttpRedirectsHttpRedirectArrayOutput
	ToGetHttpRedirectsHttpRedirectArrayOutputWithContext(context.Context) GetHttpRedirectsHttpRedirectArrayOutput
}

GetHttpRedirectsHttpRedirectArrayInput is an input type that accepts GetHttpRedirectsHttpRedirectArray and GetHttpRedirectsHttpRedirectArrayOutput values. You can construct a concrete instance of `GetHttpRedirectsHttpRedirectArrayInput` via:

GetHttpRedirectsHttpRedirectArray{ GetHttpRedirectsHttpRedirectArgs{...} }

type GetHttpRedirectsHttpRedirectArrayOutput

type GetHttpRedirectsHttpRedirectArrayOutput struct{ *pulumi.OutputState }

func (GetHttpRedirectsHttpRedirectArrayOutput) ElementType

func (GetHttpRedirectsHttpRedirectArrayOutput) Index

func (GetHttpRedirectsHttpRedirectArrayOutput) ToGetHttpRedirectsHttpRedirectArrayOutput

func (o GetHttpRedirectsHttpRedirectArrayOutput) ToGetHttpRedirectsHttpRedirectArrayOutput() GetHttpRedirectsHttpRedirectArrayOutput

func (GetHttpRedirectsHttpRedirectArrayOutput) ToGetHttpRedirectsHttpRedirectArrayOutputWithContext

func (o GetHttpRedirectsHttpRedirectArrayOutput) ToGetHttpRedirectsHttpRedirectArrayOutputWithContext(ctx context.Context) GetHttpRedirectsHttpRedirectArrayOutput

type GetHttpRedirectsHttpRedirectInput

type GetHttpRedirectsHttpRedirectInput interface {
	pulumi.Input

	ToGetHttpRedirectsHttpRedirectOutput() GetHttpRedirectsHttpRedirectOutput
	ToGetHttpRedirectsHttpRedirectOutputWithContext(context.Context) GetHttpRedirectsHttpRedirectOutput
}

GetHttpRedirectsHttpRedirectInput is an input type that accepts GetHttpRedirectsHttpRedirectArgs and GetHttpRedirectsHttpRedirectOutput values. You can construct a concrete instance of `GetHttpRedirectsHttpRedirectInput` via:

GetHttpRedirectsHttpRedirectArgs{...}

type GetHttpRedirectsHttpRedirectOutput

type GetHttpRedirectsHttpRedirectOutput struct{ *pulumi.OutputState }

func (GetHttpRedirectsHttpRedirectOutput) CompartmentId

The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. This number is generated when the compartment is created.

func (GetHttpRedirectsHttpRedirectOutput) DefinedTags

Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Operations.CostCenter": "42"}`

func (GetHttpRedirectsHttpRedirectOutput) DisplayName

The user-friendly name of the HTTP Redirect. The name can be changed and does not need to be unique.

func (GetHttpRedirectsHttpRedirectOutput) Domain

The domain from which traffic will be redirected.

func (GetHttpRedirectsHttpRedirectOutput) ElementType

func (GetHttpRedirectsHttpRedirectOutput) FreeformTags

Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Department": "Finance"}`

func (GetHttpRedirectsHttpRedirectOutput) Id

The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the HTTP Redirect.

func (GetHttpRedirectsHttpRedirectOutput) ResponseCode

The response code returned for the redirect to the client. For more information, see [RFC 7231](https://tools.ietf.org/html/rfc7231#section-6.4).

func (GetHttpRedirectsHttpRedirectOutput) State

The current lifecycle state of the HTTP Redirect.

func (GetHttpRedirectsHttpRedirectOutput) Targets

The redirect target object including all the redirect data.

func (GetHttpRedirectsHttpRedirectOutput) TimeCreated

The date and time the policy was created, expressed in RFC 3339 timestamp format.

func (GetHttpRedirectsHttpRedirectOutput) ToGetHttpRedirectsHttpRedirectOutput

func (o GetHttpRedirectsHttpRedirectOutput) ToGetHttpRedirectsHttpRedirectOutput() GetHttpRedirectsHttpRedirectOutput

func (GetHttpRedirectsHttpRedirectOutput) ToGetHttpRedirectsHttpRedirectOutputWithContext

func (o GetHttpRedirectsHttpRedirectOutput) ToGetHttpRedirectsHttpRedirectOutputWithContext(ctx context.Context) GetHttpRedirectsHttpRedirectOutput

type GetHttpRedirectsHttpRedirectTarget

type GetHttpRedirectsHttpRedirectTarget struct {
	// The host portion of the redirect.
	Host string `pulumi:"host"`
	// The path component of the target URL (e.g., "/path/to/resource" in "https://target.example.com/path/to/resource?redirected"), which can be empty, static, or request-copying, or request-prefixing. Use of \ is not permitted except to escape a following \, {, or }. An empty value is treated the same as static "/". A static value must begin with a leading "/", optionally followed by other path characters. A request-copying value must exactly match "{path}", and will be replaced with the path component of the request URL (including its initial "/"). A request-prefixing value must start with "/" and end with a non-escaped "{path}", which will be replaced with the path component of the request URL (including its initial "/"). Only one such replacement token is allowed.
	Path string `pulumi:"path"`
	// Port number of the target destination of the redirect, default to match protocol
	Port int `pulumi:"port"`
	// The protocol used for the target, http or https.
	Protocol string `pulumi:"protocol"`
	// The query component of the target URL (e.g., "?redirected" in "https://target.example.com/path/to/resource?redirected"), which can be empty, static, or request-copying. Use of \ is not permitted except to escape a following \, {, or }. An empty value results in a redirection target URL with no query component. A static value must begin with a leading "?", optionally followed by other query characters. A request-copying value must exactly match "{query}", and will be replaced with the query component of the request URL (including a leading "?" if and only if the request URL includes a query component).
	Query string `pulumi:"query"`
}

type GetHttpRedirectsHttpRedirectTargetArgs

type GetHttpRedirectsHttpRedirectTargetArgs struct {
	// The host portion of the redirect.
	Host pulumi.StringInput `pulumi:"host"`
	// The path component of the target URL (e.g., "/path/to/resource" in "https://target.example.com/path/to/resource?redirected"), which can be empty, static, or request-copying, or request-prefixing. Use of \ is not permitted except to escape a following \, {, or }. An empty value is treated the same as static "/". A static value must begin with a leading "/", optionally followed by other path characters. A request-copying value must exactly match "{path}", and will be replaced with the path component of the request URL (including its initial "/"). A request-prefixing value must start with "/" and end with a non-escaped "{path}", which will be replaced with the path component of the request URL (including its initial "/"). Only one such replacement token is allowed.
	Path pulumi.StringInput `pulumi:"path"`
	// Port number of the target destination of the redirect, default to match protocol
	Port pulumi.IntInput `pulumi:"port"`
	// The protocol used for the target, http or https.
	Protocol pulumi.StringInput `pulumi:"protocol"`
	// The query component of the target URL (e.g., "?redirected" in "https://target.example.com/path/to/resource?redirected"), which can be empty, static, or request-copying. Use of \ is not permitted except to escape a following \, {, or }. An empty value results in a redirection target URL with no query component. A static value must begin with a leading "?", optionally followed by other query characters. A request-copying value must exactly match "{query}", and will be replaced with the query component of the request URL (including a leading "?" if and only if the request URL includes a query component).
	Query pulumi.StringInput `pulumi:"query"`
}

func (GetHttpRedirectsHttpRedirectTargetArgs) ElementType

func (GetHttpRedirectsHttpRedirectTargetArgs) ToGetHttpRedirectsHttpRedirectTargetOutput

func (i GetHttpRedirectsHttpRedirectTargetArgs) ToGetHttpRedirectsHttpRedirectTargetOutput() GetHttpRedirectsHttpRedirectTargetOutput

func (GetHttpRedirectsHttpRedirectTargetArgs) ToGetHttpRedirectsHttpRedirectTargetOutputWithContext

func (i GetHttpRedirectsHttpRedirectTargetArgs) ToGetHttpRedirectsHttpRedirectTargetOutputWithContext(ctx context.Context) GetHttpRedirectsHttpRedirectTargetOutput

type GetHttpRedirectsHttpRedirectTargetArray

type GetHttpRedirectsHttpRedirectTargetArray []GetHttpRedirectsHttpRedirectTargetInput

func (GetHttpRedirectsHttpRedirectTargetArray) ElementType

func (GetHttpRedirectsHttpRedirectTargetArray) ToGetHttpRedirectsHttpRedirectTargetArrayOutput

func (i GetHttpRedirectsHttpRedirectTargetArray) ToGetHttpRedirectsHttpRedirectTargetArrayOutput() GetHttpRedirectsHttpRedirectTargetArrayOutput

func (GetHttpRedirectsHttpRedirectTargetArray) ToGetHttpRedirectsHttpRedirectTargetArrayOutputWithContext

func (i GetHttpRedirectsHttpRedirectTargetArray) ToGetHttpRedirectsHttpRedirectTargetArrayOutputWithContext(ctx context.Context) GetHttpRedirectsHttpRedirectTargetArrayOutput

type GetHttpRedirectsHttpRedirectTargetArrayInput

type GetHttpRedirectsHttpRedirectTargetArrayInput interface {
	pulumi.Input

	ToGetHttpRedirectsHttpRedirectTargetArrayOutput() GetHttpRedirectsHttpRedirectTargetArrayOutput
	ToGetHttpRedirectsHttpRedirectTargetArrayOutputWithContext(context.Context) GetHttpRedirectsHttpRedirectTargetArrayOutput
}

GetHttpRedirectsHttpRedirectTargetArrayInput is an input type that accepts GetHttpRedirectsHttpRedirectTargetArray and GetHttpRedirectsHttpRedirectTargetArrayOutput values. You can construct a concrete instance of `GetHttpRedirectsHttpRedirectTargetArrayInput` via:

GetHttpRedirectsHttpRedirectTargetArray{ GetHttpRedirectsHttpRedirectTargetArgs{...} }

type GetHttpRedirectsHttpRedirectTargetArrayOutput

type GetHttpRedirectsHttpRedirectTargetArrayOutput struct{ *pulumi.OutputState }

func (GetHttpRedirectsHttpRedirectTargetArrayOutput) ElementType

func (GetHttpRedirectsHttpRedirectTargetArrayOutput) Index

func (GetHttpRedirectsHttpRedirectTargetArrayOutput) ToGetHttpRedirectsHttpRedirectTargetArrayOutput

func (o GetHttpRedirectsHttpRedirectTargetArrayOutput) ToGetHttpRedirectsHttpRedirectTargetArrayOutput() GetHttpRedirectsHttpRedirectTargetArrayOutput

func (GetHttpRedirectsHttpRedirectTargetArrayOutput) ToGetHttpRedirectsHttpRedirectTargetArrayOutputWithContext

func (o GetHttpRedirectsHttpRedirectTargetArrayOutput) ToGetHttpRedirectsHttpRedirectTargetArrayOutputWithContext(ctx context.Context) GetHttpRedirectsHttpRedirectTargetArrayOutput

type GetHttpRedirectsHttpRedirectTargetInput

type GetHttpRedirectsHttpRedirectTargetInput interface {
	pulumi.Input

	ToGetHttpRedirectsHttpRedirectTargetOutput() GetHttpRedirectsHttpRedirectTargetOutput
	ToGetHttpRedirectsHttpRedirectTargetOutputWithContext(context.Context) GetHttpRedirectsHttpRedirectTargetOutput
}

GetHttpRedirectsHttpRedirectTargetInput is an input type that accepts GetHttpRedirectsHttpRedirectTargetArgs and GetHttpRedirectsHttpRedirectTargetOutput values. You can construct a concrete instance of `GetHttpRedirectsHttpRedirectTargetInput` via:

GetHttpRedirectsHttpRedirectTargetArgs{...}

type GetHttpRedirectsHttpRedirectTargetOutput

type GetHttpRedirectsHttpRedirectTargetOutput struct{ *pulumi.OutputState }

func (GetHttpRedirectsHttpRedirectTargetOutput) ElementType

func (GetHttpRedirectsHttpRedirectTargetOutput) Host

The host portion of the redirect.

func (GetHttpRedirectsHttpRedirectTargetOutput) Path

The path component of the target URL (e.g., "/path/to/resource" in "https://target.example.com/path/to/resource?redirected"), which can be empty, static, or request-copying, or request-prefixing. Use of \ is not permitted except to escape a following \, {, or }. An empty value is treated the same as static "/". A static value must begin with a leading "/", optionally followed by other path characters. A request-copying value must exactly match "{path}", and will be replaced with the path component of the request URL (including its initial "/"). A request-prefixing value must start with "/" and end with a non-escaped "{path}", which will be replaced with the path component of the request URL (including its initial "/"). Only one such replacement token is allowed.

func (GetHttpRedirectsHttpRedirectTargetOutput) Port

Port number of the target destination of the redirect, default to match protocol

func (GetHttpRedirectsHttpRedirectTargetOutput) Protocol

The protocol used for the target, http or https.

func (GetHttpRedirectsHttpRedirectTargetOutput) Query

The query component of the target URL (e.g., "?redirected" in "https://target.example.com/path/to/resource?redirected"), which can be empty, static, or request-copying. Use of \ is not permitted except to escape a following \, {, or }. An empty value results in a redirection target URL with no query component. A static value must begin with a leading "?", optionally followed by other query characters. A request-copying value must exactly match "{query}", and will be replaced with the query component of the request URL (including a leading "?" if and only if the request URL includes a query component).

func (GetHttpRedirectsHttpRedirectTargetOutput) ToGetHttpRedirectsHttpRedirectTargetOutput

func (o GetHttpRedirectsHttpRedirectTargetOutput) ToGetHttpRedirectsHttpRedirectTargetOutput() GetHttpRedirectsHttpRedirectTargetOutput

func (GetHttpRedirectsHttpRedirectTargetOutput) ToGetHttpRedirectsHttpRedirectTargetOutputWithContext

func (o GetHttpRedirectsHttpRedirectTargetOutput) ToGetHttpRedirectsHttpRedirectTargetOutputWithContext(ctx context.Context) GetHttpRedirectsHttpRedirectTargetOutput

type GetHttpRedirectsOutputArgs

type GetHttpRedirectsOutputArgs struct {
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. This number is generated when the compartment is created.
	CompartmentId pulumi.StringInput `pulumi:"compartmentId"`
	// Filter redirects using a display name.
	DisplayNames pulumi.StringArrayInput          `pulumi:"displayNames"`
	Filters      GetHttpRedirectsFilterArrayInput `pulumi:"filters"`
	// Filter redirects using a list of redirect OCIDs.
	Ids pulumi.StringArrayInput `pulumi:"ids"`
	// Filter redirects using a list of lifecycle states.
	States pulumi.StringArrayInput `pulumi:"states"`
	// A filter that matches redirects created on or after the specified date and time.
	TimeCreatedGreaterThanOrEqualTo pulumi.StringPtrInput `pulumi:"timeCreatedGreaterThanOrEqualTo"`
	// A filter that matches redirects created before the specified date-time. Default to 1 day before now.
	TimeCreatedLessThan pulumi.StringPtrInput `pulumi:"timeCreatedLessThan"`
}

A collection of arguments for invoking getHttpRedirects.

func (GetHttpRedirectsOutputArgs) ElementType

func (GetHttpRedirectsOutputArgs) ElementType() reflect.Type

type GetHttpRedirectsResult

type GetHttpRedirectsResult struct {
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the HTTP Redirect's compartment.
	CompartmentId string                   `pulumi:"compartmentId"`
	DisplayNames  []string                 `pulumi:"displayNames"`
	Filters       []GetHttpRedirectsFilter `pulumi:"filters"`
	// The list of http_redirects.
	HttpRedirects []GetHttpRedirectsHttpRedirect `pulumi:"httpRedirects"`
	// The provider-assigned unique ID for this managed resource.
	Id                              string   `pulumi:"id"`
	Ids                             []string `pulumi:"ids"`
	States                          []string `pulumi:"states"`
	TimeCreatedGreaterThanOrEqualTo *string  `pulumi:"timeCreatedGreaterThanOrEqualTo"`
	TimeCreatedLessThan             *string  `pulumi:"timeCreatedLessThan"`
}

A collection of values returned by getHttpRedirects.

func GetHttpRedirects

func GetHttpRedirects(ctx *pulumi.Context, args *GetHttpRedirectsArgs, opts ...pulumi.InvokeOption) (*GetHttpRedirectsResult, error)

This data source provides the list of Http Redirects in Oracle Cloud Infrastructure Web Application Acceleration and Security service.

Gets a list of HTTP Redirects.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-oci/sdk/go/oci/Waas"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Waas.GetHttpRedirects(ctx, &waas.GetHttpRedirectsArgs{
			CompartmentId:                   compartmentId,
			DisplayNames:                    httpRedirectDisplayNames,
			Ids:                             httpRedirectIds,
			States:                          httpRedirectStates,
			TimeCreatedGreaterThanOrEqualTo: pulumi.StringRef(httpRedirectTimeCreatedGreaterThanOrEqualTo),
			TimeCreatedLessThan:             pulumi.StringRef(httpRedirectTimeCreatedLessThan),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetHttpRedirectsResultOutput

type GetHttpRedirectsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getHttpRedirects.

func (GetHttpRedirectsResultOutput) CompartmentId

The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the HTTP Redirect's compartment.

func (GetHttpRedirectsResultOutput) DisplayNames

func (GetHttpRedirectsResultOutput) ElementType

func (GetHttpRedirectsResultOutput) Filters

func (GetHttpRedirectsResultOutput) HttpRedirects

The list of http_redirects.

func (GetHttpRedirectsResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetHttpRedirectsResultOutput) Ids

func (GetHttpRedirectsResultOutput) States

func (GetHttpRedirectsResultOutput) TimeCreatedGreaterThanOrEqualTo

func (o GetHttpRedirectsResultOutput) TimeCreatedGreaterThanOrEqualTo() pulumi.StringPtrOutput

func (GetHttpRedirectsResultOutput) TimeCreatedLessThan

func (o GetHttpRedirectsResultOutput) TimeCreatedLessThan() pulumi.StringPtrOutput

func (GetHttpRedirectsResultOutput) ToGetHttpRedirectsResultOutput

func (o GetHttpRedirectsResultOutput) ToGetHttpRedirectsResultOutput() GetHttpRedirectsResultOutput

func (GetHttpRedirectsResultOutput) ToGetHttpRedirectsResultOutputWithContext

func (o GetHttpRedirectsResultOutput) ToGetHttpRedirectsResultOutputWithContext(ctx context.Context) GetHttpRedirectsResultOutput

type GetProtectionRuleExclusion

type GetProtectionRuleExclusion struct {
	// An array of The target property of a request that would allow it to bypass the protection rule. For example, when `target` is `REQUEST_COOKIE_NAMES`, the list may include names of cookies to exclude from the protection rule. When the target is `ARGS`, the list may include strings of URL query parameters and values from form-urlencoded XML, JSON, AMP, or POST payloads to exclude from the protection rule. `Exclusions` properties must not contain whitespace, comma or |. **Note:** If protection rules have been enabled that utilize the `maxArgumentCount` or `maxTotalNameLengthOfArguments` properties, and the `target` property has been set to `ARGS`, it is important that the `exclusions` properties be defined to honor those protection rule settings in a consistent manner.
	Exclusions []string `pulumi:"exclusions"`
	// The target of the exclusion.
	Target string `pulumi:"target"`
}

type GetProtectionRuleExclusionArgs

type GetProtectionRuleExclusionArgs struct {
	// An array of The target property of a request that would allow it to bypass the protection rule. For example, when `target` is `REQUEST_COOKIE_NAMES`, the list may include names of cookies to exclude from the protection rule. When the target is `ARGS`, the list may include strings of URL query parameters and values from form-urlencoded XML, JSON, AMP, or POST payloads to exclude from the protection rule. `Exclusions` properties must not contain whitespace, comma or |. **Note:** If protection rules have been enabled that utilize the `maxArgumentCount` or `maxTotalNameLengthOfArguments` properties, and the `target` property has been set to `ARGS`, it is important that the `exclusions` properties be defined to honor those protection rule settings in a consistent manner.
	Exclusions pulumi.StringArrayInput `pulumi:"exclusions"`
	// The target of the exclusion.
	Target pulumi.StringInput `pulumi:"target"`
}

func (GetProtectionRuleExclusionArgs) ElementType

func (GetProtectionRuleExclusionArgs) ToGetProtectionRuleExclusionOutput

func (i GetProtectionRuleExclusionArgs) ToGetProtectionRuleExclusionOutput() GetProtectionRuleExclusionOutput

func (GetProtectionRuleExclusionArgs) ToGetProtectionRuleExclusionOutputWithContext

func (i GetProtectionRuleExclusionArgs) ToGetProtectionRuleExclusionOutputWithContext(ctx context.Context) GetProtectionRuleExclusionOutput

type GetProtectionRuleExclusionArray

type GetProtectionRuleExclusionArray []GetProtectionRuleExclusionInput

func (GetProtectionRuleExclusionArray) ElementType

func (GetProtectionRuleExclusionArray) ToGetProtectionRuleExclusionArrayOutput

func (i GetProtectionRuleExclusionArray) ToGetProtectionRuleExclusionArrayOutput() GetProtectionRuleExclusionArrayOutput

func (GetProtectionRuleExclusionArray) ToGetProtectionRuleExclusionArrayOutputWithContext

func (i GetProtectionRuleExclusionArray) ToGetProtectionRuleExclusionArrayOutputWithContext(ctx context.Context) GetProtectionRuleExclusionArrayOutput

type GetProtectionRuleExclusionArrayInput

type GetProtectionRuleExclusionArrayInput interface {
	pulumi.Input

	ToGetProtectionRuleExclusionArrayOutput() GetProtectionRuleExclusionArrayOutput
	ToGetProtectionRuleExclusionArrayOutputWithContext(context.Context) GetProtectionRuleExclusionArrayOutput
}

GetProtectionRuleExclusionArrayInput is an input type that accepts GetProtectionRuleExclusionArray and GetProtectionRuleExclusionArrayOutput values. You can construct a concrete instance of `GetProtectionRuleExclusionArrayInput` via:

GetProtectionRuleExclusionArray{ GetProtectionRuleExclusionArgs{...} }

type GetProtectionRuleExclusionArrayOutput

type GetProtectionRuleExclusionArrayOutput struct{ *pulumi.OutputState }

func (GetProtectionRuleExclusionArrayOutput) ElementType

func (GetProtectionRuleExclusionArrayOutput) Index

func (GetProtectionRuleExclusionArrayOutput) ToGetProtectionRuleExclusionArrayOutput

func (o GetProtectionRuleExclusionArrayOutput) ToGetProtectionRuleExclusionArrayOutput() GetProtectionRuleExclusionArrayOutput

func (GetProtectionRuleExclusionArrayOutput) ToGetProtectionRuleExclusionArrayOutputWithContext

func (o GetProtectionRuleExclusionArrayOutput) ToGetProtectionRuleExclusionArrayOutputWithContext(ctx context.Context) GetProtectionRuleExclusionArrayOutput

type GetProtectionRuleExclusionInput

type GetProtectionRuleExclusionInput interface {
	pulumi.Input

	ToGetProtectionRuleExclusionOutput() GetProtectionRuleExclusionOutput
	ToGetProtectionRuleExclusionOutputWithContext(context.Context) GetProtectionRuleExclusionOutput
}

GetProtectionRuleExclusionInput is an input type that accepts GetProtectionRuleExclusionArgs and GetProtectionRuleExclusionOutput values. You can construct a concrete instance of `GetProtectionRuleExclusionInput` via:

GetProtectionRuleExclusionArgs{...}

type GetProtectionRuleExclusionOutput

type GetProtectionRuleExclusionOutput struct{ *pulumi.OutputState }

func (GetProtectionRuleExclusionOutput) ElementType

func (GetProtectionRuleExclusionOutput) Exclusions

An array of The target property of a request that would allow it to bypass the protection rule. For example, when `target` is `REQUEST_COOKIE_NAMES`, the list may include names of cookies to exclude from the protection rule. When the target is `ARGS`, the list may include strings of URL query parameters and values from form-urlencoded XML, JSON, AMP, or POST payloads to exclude from the protection rule. `Exclusions` properties must not contain whitespace, comma or |. **Note:** If protection rules have been enabled that utilize the `maxArgumentCount` or `maxTotalNameLengthOfArguments` properties, and the `target` property has been set to `ARGS`, it is important that the `exclusions` properties be defined to honor those protection rule settings in a consistent manner.

func (GetProtectionRuleExclusionOutput) Target

The target of the exclusion.

func (GetProtectionRuleExclusionOutput) ToGetProtectionRuleExclusionOutput

func (o GetProtectionRuleExclusionOutput) ToGetProtectionRuleExclusionOutput() GetProtectionRuleExclusionOutput

func (GetProtectionRuleExclusionOutput) ToGetProtectionRuleExclusionOutputWithContext

func (o GetProtectionRuleExclusionOutput) ToGetProtectionRuleExclusionOutputWithContext(ctx context.Context) GetProtectionRuleExclusionOutput

type GetProtectionRulesArgs

type GetProtectionRulesArgs struct {
	// Filter rules using a list of actions.
	Actions []string                   `pulumi:"actions"`
	Filters []GetProtectionRulesFilter `pulumi:"filters"`
	// Filter rules using a list of ModSecurity rule IDs.
	ModSecurityRuleIds []string `pulumi:"modSecurityRuleIds"`
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the WAAS policy.
	WaasPolicyId string `pulumi:"waasPolicyId"`
}

A collection of arguments for invoking getProtectionRules.

type GetProtectionRulesFilter

type GetProtectionRulesFilter struct {
	// The name of the protection rule.
	Name   string   `pulumi:"name"`
	Regex  *bool    `pulumi:"regex"`
	Values []string `pulumi:"values"`
}

type GetProtectionRulesFilterArgs

type GetProtectionRulesFilterArgs struct {
	// The name of the protection rule.
	Name   pulumi.StringInput      `pulumi:"name"`
	Regex  pulumi.BoolPtrInput     `pulumi:"regex"`
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetProtectionRulesFilterArgs) ElementType

func (GetProtectionRulesFilterArgs) ToGetProtectionRulesFilterOutput

func (i GetProtectionRulesFilterArgs) ToGetProtectionRulesFilterOutput() GetProtectionRulesFilterOutput

func (GetProtectionRulesFilterArgs) ToGetProtectionRulesFilterOutputWithContext

func (i GetProtectionRulesFilterArgs) ToGetProtectionRulesFilterOutputWithContext(ctx context.Context) GetProtectionRulesFilterOutput

type GetProtectionRulesFilterArray

type GetProtectionRulesFilterArray []GetProtectionRulesFilterInput

func (GetProtectionRulesFilterArray) ElementType

func (GetProtectionRulesFilterArray) ToGetProtectionRulesFilterArrayOutput

func (i GetProtectionRulesFilterArray) ToGetProtectionRulesFilterArrayOutput() GetProtectionRulesFilterArrayOutput

func (GetProtectionRulesFilterArray) ToGetProtectionRulesFilterArrayOutputWithContext

func (i GetProtectionRulesFilterArray) ToGetProtectionRulesFilterArrayOutputWithContext(ctx context.Context) GetProtectionRulesFilterArrayOutput

type GetProtectionRulesFilterArrayInput

type GetProtectionRulesFilterArrayInput interface {
	pulumi.Input

	ToGetProtectionRulesFilterArrayOutput() GetProtectionRulesFilterArrayOutput
	ToGetProtectionRulesFilterArrayOutputWithContext(context.Context) GetProtectionRulesFilterArrayOutput
}

GetProtectionRulesFilterArrayInput is an input type that accepts GetProtectionRulesFilterArray and GetProtectionRulesFilterArrayOutput values. You can construct a concrete instance of `GetProtectionRulesFilterArrayInput` via:

GetProtectionRulesFilterArray{ GetProtectionRulesFilterArgs{...} }

type GetProtectionRulesFilterArrayOutput

type GetProtectionRulesFilterArrayOutput struct{ *pulumi.OutputState }

func (GetProtectionRulesFilterArrayOutput) ElementType

func (GetProtectionRulesFilterArrayOutput) Index

func (GetProtectionRulesFilterArrayOutput) ToGetProtectionRulesFilterArrayOutput

func (o GetProtectionRulesFilterArrayOutput) ToGetProtectionRulesFilterArrayOutput() GetProtectionRulesFilterArrayOutput

func (GetProtectionRulesFilterArrayOutput) ToGetProtectionRulesFilterArrayOutputWithContext

func (o GetProtectionRulesFilterArrayOutput) ToGetProtectionRulesFilterArrayOutputWithContext(ctx context.Context) GetProtectionRulesFilterArrayOutput

type GetProtectionRulesFilterInput

type GetProtectionRulesFilterInput interface {
	pulumi.Input

	ToGetProtectionRulesFilterOutput() GetProtectionRulesFilterOutput
	ToGetProtectionRulesFilterOutputWithContext(context.Context) GetProtectionRulesFilterOutput
}

GetProtectionRulesFilterInput is an input type that accepts GetProtectionRulesFilterArgs and GetProtectionRulesFilterOutput values. You can construct a concrete instance of `GetProtectionRulesFilterInput` via:

GetProtectionRulesFilterArgs{...}

type GetProtectionRulesFilterOutput

type GetProtectionRulesFilterOutput struct{ *pulumi.OutputState }

func (GetProtectionRulesFilterOutput) ElementType

func (GetProtectionRulesFilterOutput) Name

The name of the protection rule.

func (GetProtectionRulesFilterOutput) Regex

func (GetProtectionRulesFilterOutput) ToGetProtectionRulesFilterOutput

func (o GetProtectionRulesFilterOutput) ToGetProtectionRulesFilterOutput() GetProtectionRulesFilterOutput

func (GetProtectionRulesFilterOutput) ToGetProtectionRulesFilterOutputWithContext

func (o GetProtectionRulesFilterOutput) ToGetProtectionRulesFilterOutputWithContext(ctx context.Context) GetProtectionRulesFilterOutput

func (GetProtectionRulesFilterOutput) Values

type GetProtectionRulesOutputArgs

type GetProtectionRulesOutputArgs struct {
	// Filter rules using a list of actions.
	Actions pulumi.StringArrayInput            `pulumi:"actions"`
	Filters GetProtectionRulesFilterArrayInput `pulumi:"filters"`
	// Filter rules using a list of ModSecurity rule IDs.
	ModSecurityRuleIds pulumi.StringArrayInput `pulumi:"modSecurityRuleIds"`
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the WAAS policy.
	WaasPolicyId pulumi.StringInput `pulumi:"waasPolicyId"`
}

A collection of arguments for invoking getProtectionRules.

func (GetProtectionRulesOutputArgs) ElementType

type GetProtectionRulesProtectionRule

type GetProtectionRulesProtectionRule struct {
	// Filter rules using a list of actions.
	Action string `pulumi:"action"`
	// The description of the protection rule.
	Description string `pulumi:"description"`
	// An array of The target property of a request that would allow it to bypass the protection rule. For example, when `target` is `REQUEST_COOKIE_NAMES`, the list may include names of cookies to exclude from the protection rule. When the target is `ARGS`, the list may include strings of URL query parameters and values from form-urlencoded XML, JSON, AMP, or POST payloads to exclude from the protection rule. `Exclusions` properties must not contain whitespace, comma or |. **Note:** If protection rules have been enabled that utilize the `maxArgumentCount` or `maxTotalNameLengthOfArguments` properties, and the `target` property has been set to `ARGS`, it is important that the `exclusions` properties be defined to honor those protection rule settings in a consistent manner.
	Exclusions []GetProtectionRulesProtectionRuleExclusion `pulumi:"exclusions"`
	// The unique key of the protection rule.
	Key string `pulumi:"key"`
	// The list of labels for the protection rule.
	Labels []string `pulumi:"labels"`
	// The list of the ModSecurity rule IDs that apply to this protection rule. For more information about ModSecurity's open source WAF rules, see [Mod Security's documentation](https://www.modsecurity.org/CRS/Documentation/index.html).
	ModSecurityRuleIds []string `pulumi:"modSecurityRuleIds"`
	// The name of the protection rule.
	Name string `pulumi:"name"`
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the WAAS policy.
	WaasPolicyId string `pulumi:"waasPolicyId"`
}

type GetProtectionRulesProtectionRuleArgs

type GetProtectionRulesProtectionRuleArgs struct {
	// Filter rules using a list of actions.
	Action pulumi.StringInput `pulumi:"action"`
	// The description of the protection rule.
	Description pulumi.StringInput `pulumi:"description"`
	// An array of The target property of a request that would allow it to bypass the protection rule. For example, when `target` is `REQUEST_COOKIE_NAMES`, the list may include names of cookies to exclude from the protection rule. When the target is `ARGS`, the list may include strings of URL query parameters and values from form-urlencoded XML, JSON, AMP, or POST payloads to exclude from the protection rule. `Exclusions` properties must not contain whitespace, comma or |. **Note:** If protection rules have been enabled that utilize the `maxArgumentCount` or `maxTotalNameLengthOfArguments` properties, and the `target` property has been set to `ARGS`, it is important that the `exclusions` properties be defined to honor those protection rule settings in a consistent manner.
	Exclusions GetProtectionRulesProtectionRuleExclusionArrayInput `pulumi:"exclusions"`
	// The unique key of the protection rule.
	Key pulumi.StringInput `pulumi:"key"`
	// The list of labels for the protection rule.
	Labels pulumi.StringArrayInput `pulumi:"labels"`
	// The list of the ModSecurity rule IDs that apply to this protection rule. For more information about ModSecurity's open source WAF rules, see [Mod Security's documentation](https://www.modsecurity.org/CRS/Documentation/index.html).
	ModSecurityRuleIds pulumi.StringArrayInput `pulumi:"modSecurityRuleIds"`
	// The name of the protection rule.
	Name pulumi.StringInput `pulumi:"name"`
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the WAAS policy.
	WaasPolicyId pulumi.StringInput `pulumi:"waasPolicyId"`
}

func (GetProtectionRulesProtectionRuleArgs) ElementType

func (GetProtectionRulesProtectionRuleArgs) ToGetProtectionRulesProtectionRuleOutput

func (i GetProtectionRulesProtectionRuleArgs) ToGetProtectionRulesProtectionRuleOutput() GetProtectionRulesProtectionRuleOutput

func (GetProtectionRulesProtectionRuleArgs) ToGetProtectionRulesProtectionRuleOutputWithContext

func (i GetProtectionRulesProtectionRuleArgs) ToGetProtectionRulesProtectionRuleOutputWithContext(ctx context.Context) GetProtectionRulesProtectionRuleOutput

type GetProtectionRulesProtectionRuleArray

type GetProtectionRulesProtectionRuleArray []GetProtectionRulesProtectionRuleInput

func (GetProtectionRulesProtectionRuleArray) ElementType

func (GetProtectionRulesProtectionRuleArray) ToGetProtectionRulesProtectionRuleArrayOutput

func (i GetProtectionRulesProtectionRuleArray) ToGetProtectionRulesProtectionRuleArrayOutput() GetProtectionRulesProtectionRuleArrayOutput

func (GetProtectionRulesProtectionRuleArray) ToGetProtectionRulesProtectionRuleArrayOutputWithContext

func (i GetProtectionRulesProtectionRuleArray) ToGetProtectionRulesProtectionRuleArrayOutputWithContext(ctx context.Context) GetProtectionRulesProtectionRuleArrayOutput

type GetProtectionRulesProtectionRuleArrayInput

type GetProtectionRulesProtectionRuleArrayInput interface {
	pulumi.Input

	ToGetProtectionRulesProtectionRuleArrayOutput() GetProtectionRulesProtectionRuleArrayOutput
	ToGetProtectionRulesProtectionRuleArrayOutputWithContext(context.Context) GetProtectionRulesProtectionRuleArrayOutput
}

GetProtectionRulesProtectionRuleArrayInput is an input type that accepts GetProtectionRulesProtectionRuleArray and GetProtectionRulesProtectionRuleArrayOutput values. You can construct a concrete instance of `GetProtectionRulesProtectionRuleArrayInput` via:

GetProtectionRulesProtectionRuleArray{ GetProtectionRulesProtectionRuleArgs{...} }

type GetProtectionRulesProtectionRuleArrayOutput

type GetProtectionRulesProtectionRuleArrayOutput struct{ *pulumi.OutputState }

func (GetProtectionRulesProtectionRuleArrayOutput) ElementType

func (GetProtectionRulesProtectionRuleArrayOutput) Index

func (GetProtectionRulesProtectionRuleArrayOutput) ToGetProtectionRulesProtectionRuleArrayOutput

func (o GetProtectionRulesProtectionRuleArrayOutput) ToGetProtectionRulesProtectionRuleArrayOutput() GetProtectionRulesProtectionRuleArrayOutput

func (GetProtectionRulesProtectionRuleArrayOutput) ToGetProtectionRulesProtectionRuleArrayOutputWithContext

func (o GetProtectionRulesProtectionRuleArrayOutput) ToGetProtectionRulesProtectionRuleArrayOutputWithContext(ctx context.Context) GetProtectionRulesProtectionRuleArrayOutput

type GetProtectionRulesProtectionRuleExclusion

type GetProtectionRulesProtectionRuleExclusion struct {
	// An array of The target property of a request that would allow it to bypass the protection rule. For example, when `target` is `REQUEST_COOKIE_NAMES`, the list may include names of cookies to exclude from the protection rule. When the target is `ARGS`, the list may include strings of URL query parameters and values from form-urlencoded XML, JSON, AMP, or POST payloads to exclude from the protection rule. `Exclusions` properties must not contain whitespace, comma or |. **Note:** If protection rules have been enabled that utilize the `maxArgumentCount` or `maxTotalNameLengthOfArguments` properties, and the `target` property has been set to `ARGS`, it is important that the `exclusions` properties be defined to honor those protection rule settings in a consistent manner.
	Exclusions []string `pulumi:"exclusions"`
	// The target of the exclusion.
	Target string `pulumi:"target"`
}

type GetProtectionRulesProtectionRuleExclusionArgs

type GetProtectionRulesProtectionRuleExclusionArgs struct {
	// An array of The target property of a request that would allow it to bypass the protection rule. For example, when `target` is `REQUEST_COOKIE_NAMES`, the list may include names of cookies to exclude from the protection rule. When the target is `ARGS`, the list may include strings of URL query parameters and values from form-urlencoded XML, JSON, AMP, or POST payloads to exclude from the protection rule. `Exclusions` properties must not contain whitespace, comma or |. **Note:** If protection rules have been enabled that utilize the `maxArgumentCount` or `maxTotalNameLengthOfArguments` properties, and the `target` property has been set to `ARGS`, it is important that the `exclusions` properties be defined to honor those protection rule settings in a consistent manner.
	Exclusions pulumi.StringArrayInput `pulumi:"exclusions"`
	// The target of the exclusion.
	Target pulumi.StringInput `pulumi:"target"`
}

func (GetProtectionRulesProtectionRuleExclusionArgs) ElementType

func (GetProtectionRulesProtectionRuleExclusionArgs) ToGetProtectionRulesProtectionRuleExclusionOutput

func (i GetProtectionRulesProtectionRuleExclusionArgs) ToGetProtectionRulesProtectionRuleExclusionOutput() GetProtectionRulesProtectionRuleExclusionOutput

func (GetProtectionRulesProtectionRuleExclusionArgs) ToGetProtectionRulesProtectionRuleExclusionOutputWithContext

func (i GetProtectionRulesProtectionRuleExclusionArgs) ToGetProtectionRulesProtectionRuleExclusionOutputWithContext(ctx context.Context) GetProtectionRulesProtectionRuleExclusionOutput

type GetProtectionRulesProtectionRuleExclusionArray

type GetProtectionRulesProtectionRuleExclusionArray []GetProtectionRulesProtectionRuleExclusionInput

func (GetProtectionRulesProtectionRuleExclusionArray) ElementType

func (GetProtectionRulesProtectionRuleExclusionArray) ToGetProtectionRulesProtectionRuleExclusionArrayOutput

func (i GetProtectionRulesProtectionRuleExclusionArray) ToGetProtectionRulesProtectionRuleExclusionArrayOutput() GetProtectionRulesProtectionRuleExclusionArrayOutput

func (GetProtectionRulesProtectionRuleExclusionArray) ToGetProtectionRulesProtectionRuleExclusionArrayOutputWithContext

func (i GetProtectionRulesProtectionRuleExclusionArray) ToGetProtectionRulesProtectionRuleExclusionArrayOutputWithContext(ctx context.Context) GetProtectionRulesProtectionRuleExclusionArrayOutput

type GetProtectionRulesProtectionRuleExclusionArrayInput

type GetProtectionRulesProtectionRuleExclusionArrayInput interface {
	pulumi.Input

	ToGetProtectionRulesProtectionRuleExclusionArrayOutput() GetProtectionRulesProtectionRuleExclusionArrayOutput
	ToGetProtectionRulesProtectionRuleExclusionArrayOutputWithContext(context.Context) GetProtectionRulesProtectionRuleExclusionArrayOutput
}

GetProtectionRulesProtectionRuleExclusionArrayInput is an input type that accepts GetProtectionRulesProtectionRuleExclusionArray and GetProtectionRulesProtectionRuleExclusionArrayOutput values. You can construct a concrete instance of `GetProtectionRulesProtectionRuleExclusionArrayInput` via:

GetProtectionRulesProtectionRuleExclusionArray{ GetProtectionRulesProtectionRuleExclusionArgs{...} }

type GetProtectionRulesProtectionRuleExclusionArrayOutput

type GetProtectionRulesProtectionRuleExclusionArrayOutput struct{ *pulumi.OutputState }

func (GetProtectionRulesProtectionRuleExclusionArrayOutput) ElementType

func (GetProtectionRulesProtectionRuleExclusionArrayOutput) Index

func (GetProtectionRulesProtectionRuleExclusionArrayOutput) ToGetProtectionRulesProtectionRuleExclusionArrayOutput

func (GetProtectionRulesProtectionRuleExclusionArrayOutput) ToGetProtectionRulesProtectionRuleExclusionArrayOutputWithContext

func (o GetProtectionRulesProtectionRuleExclusionArrayOutput) ToGetProtectionRulesProtectionRuleExclusionArrayOutputWithContext(ctx context.Context) GetProtectionRulesProtectionRuleExclusionArrayOutput

type GetProtectionRulesProtectionRuleExclusionInput

type GetProtectionRulesProtectionRuleExclusionInput interface {
	pulumi.Input

	ToGetProtectionRulesProtectionRuleExclusionOutput() GetProtectionRulesProtectionRuleExclusionOutput
	ToGetProtectionRulesProtectionRuleExclusionOutputWithContext(context.Context) GetProtectionRulesProtectionRuleExclusionOutput
}

GetProtectionRulesProtectionRuleExclusionInput is an input type that accepts GetProtectionRulesProtectionRuleExclusionArgs and GetProtectionRulesProtectionRuleExclusionOutput values. You can construct a concrete instance of `GetProtectionRulesProtectionRuleExclusionInput` via:

GetProtectionRulesProtectionRuleExclusionArgs{...}

type GetProtectionRulesProtectionRuleExclusionOutput

type GetProtectionRulesProtectionRuleExclusionOutput struct{ *pulumi.OutputState }

func (GetProtectionRulesProtectionRuleExclusionOutput) ElementType

func (GetProtectionRulesProtectionRuleExclusionOutput) Exclusions

An array of The target property of a request that would allow it to bypass the protection rule. For example, when `target` is `REQUEST_COOKIE_NAMES`, the list may include names of cookies to exclude from the protection rule. When the target is `ARGS`, the list may include strings of URL query parameters and values from form-urlencoded XML, JSON, AMP, or POST payloads to exclude from the protection rule. `Exclusions` properties must not contain whitespace, comma or |. **Note:** If protection rules have been enabled that utilize the `maxArgumentCount` or `maxTotalNameLengthOfArguments` properties, and the `target` property has been set to `ARGS`, it is important that the `exclusions` properties be defined to honor those protection rule settings in a consistent manner.

func (GetProtectionRulesProtectionRuleExclusionOutput) Target

The target of the exclusion.

func (GetProtectionRulesProtectionRuleExclusionOutput) ToGetProtectionRulesProtectionRuleExclusionOutput

func (o GetProtectionRulesProtectionRuleExclusionOutput) ToGetProtectionRulesProtectionRuleExclusionOutput() GetProtectionRulesProtectionRuleExclusionOutput

func (GetProtectionRulesProtectionRuleExclusionOutput) ToGetProtectionRulesProtectionRuleExclusionOutputWithContext

func (o GetProtectionRulesProtectionRuleExclusionOutput) ToGetProtectionRulesProtectionRuleExclusionOutputWithContext(ctx context.Context) GetProtectionRulesProtectionRuleExclusionOutput

type GetProtectionRulesProtectionRuleInput

type GetProtectionRulesProtectionRuleInput interface {
	pulumi.Input

	ToGetProtectionRulesProtectionRuleOutput() GetProtectionRulesProtectionRuleOutput
	ToGetProtectionRulesProtectionRuleOutputWithContext(context.Context) GetProtectionRulesProtectionRuleOutput
}

GetProtectionRulesProtectionRuleInput is an input type that accepts GetProtectionRulesProtectionRuleArgs and GetProtectionRulesProtectionRuleOutput values. You can construct a concrete instance of `GetProtectionRulesProtectionRuleInput` via:

GetProtectionRulesProtectionRuleArgs{...}

type GetProtectionRulesProtectionRuleOutput

type GetProtectionRulesProtectionRuleOutput struct{ *pulumi.OutputState }

func (GetProtectionRulesProtectionRuleOutput) Action

Filter rules using a list of actions.

func (GetProtectionRulesProtectionRuleOutput) Description

The description of the protection rule.

func (GetProtectionRulesProtectionRuleOutput) ElementType

func (GetProtectionRulesProtectionRuleOutput) Exclusions

An array of The target property of a request that would allow it to bypass the protection rule. For example, when `target` is `REQUEST_COOKIE_NAMES`, the list may include names of cookies to exclude from the protection rule. When the target is `ARGS`, the list may include strings of URL query parameters and values from form-urlencoded XML, JSON, AMP, or POST payloads to exclude from the protection rule. `Exclusions` properties must not contain whitespace, comma or |. **Note:** If protection rules have been enabled that utilize the `maxArgumentCount` or `maxTotalNameLengthOfArguments` properties, and the `target` property has been set to `ARGS`, it is important that the `exclusions` properties be defined to honor those protection rule settings in a consistent manner.

func (GetProtectionRulesProtectionRuleOutput) Key

The unique key of the protection rule.

func (GetProtectionRulesProtectionRuleOutput) Labels

The list of labels for the protection rule.

func (GetProtectionRulesProtectionRuleOutput) ModSecurityRuleIds

The list of the ModSecurity rule IDs that apply to this protection rule. For more information about ModSecurity's open source WAF rules, see [Mod Security's documentation](https://www.modsecurity.org/CRS/Documentation/index.html).

func (GetProtectionRulesProtectionRuleOutput) Name

The name of the protection rule.

func (GetProtectionRulesProtectionRuleOutput) ToGetProtectionRulesProtectionRuleOutput

func (o GetProtectionRulesProtectionRuleOutput) ToGetProtectionRulesProtectionRuleOutput() GetProtectionRulesProtectionRuleOutput

func (GetProtectionRulesProtectionRuleOutput) ToGetProtectionRulesProtectionRuleOutputWithContext

func (o GetProtectionRulesProtectionRuleOutput) ToGetProtectionRulesProtectionRuleOutputWithContext(ctx context.Context) GetProtectionRulesProtectionRuleOutput

func (GetProtectionRulesProtectionRuleOutput) WaasPolicyId

The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the WAAS policy.

type GetProtectionRulesResult

type GetProtectionRulesResult struct {
	// The action to take when the traffic is detected as malicious. If unspecified, defaults to `OFF`.
	Actions []string                   `pulumi:"actions"`
	Filters []GetProtectionRulesFilter `pulumi:"filters"`
	// The provider-assigned unique ID for this managed resource.
	Id                 string   `pulumi:"id"`
	ModSecurityRuleIds []string `pulumi:"modSecurityRuleIds"`
	// The list of protection_rules.
	ProtectionRules []GetProtectionRulesProtectionRule `pulumi:"protectionRules"`
	WaasPolicyId    string                             `pulumi:"waasPolicyId"`
}

A collection of values returned by getProtectionRules.

func GetProtectionRules

func GetProtectionRules(ctx *pulumi.Context, args *GetProtectionRulesArgs, opts ...pulumi.InvokeOption) (*GetProtectionRulesResult, error)

This data source provides the list of Protection Rules in Oracle Cloud Infrastructure Web Application Acceleration and Security service.

Gets the list of available protection rules for a WAAS policy. Use the `GetWafConfig` operation to view a list of currently configured protection rules for the Web Application Firewall, or use the `ListRecommendations` operation to get a list of recommended protection rules for the Web Application Firewall. The list is sorted by `key`, in ascending order.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-oci/sdk/go/oci/Waas"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Waas.GetProtectionRules(ctx, &waas.GetProtectionRulesArgs{
			WaasPolicyId:       testWaasPolicy.Id,
			Actions:            protectionRuleAction,
			ModSecurityRuleIds: testRule.Id,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetProtectionRulesResultOutput

type GetProtectionRulesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getProtectionRules.

func (GetProtectionRulesResultOutput) Actions

The action to take when the traffic is detected as malicious. If unspecified, defaults to `OFF`.

func (GetProtectionRulesResultOutput) ElementType

func (GetProtectionRulesResultOutput) Filters

func (GetProtectionRulesResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetProtectionRulesResultOutput) ModSecurityRuleIds

func (GetProtectionRulesResultOutput) ProtectionRules

The list of protection_rules.

func (GetProtectionRulesResultOutput) ToGetProtectionRulesResultOutput

func (o GetProtectionRulesResultOutput) ToGetProtectionRulesResultOutput() GetProtectionRulesResultOutput

func (GetProtectionRulesResultOutput) ToGetProtectionRulesResultOutputWithContext

func (o GetProtectionRulesResultOutput) ToGetProtectionRulesResultOutputWithContext(ctx context.Context) GetProtectionRulesResultOutput

func (GetProtectionRulesResultOutput) WaasPolicyId

type GetWaasPoliciesArgs

type GetWaasPoliciesArgs struct {
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. This number is generated when the compartment is created.
	CompartmentId string `pulumi:"compartmentId"`
	// Filter policies using a list of display names.
	DisplayNames []string                `pulumi:"displayNames"`
	Filters      []GetWaasPoliciesFilter `pulumi:"filters"`
	// Filter policies using a list of policy OCIDs.
	Ids []string `pulumi:"ids"`
	// Filter policies using a list of lifecycle states.
	States []string `pulumi:"states"`
	// A filter that matches policies created on or after the specified date and time.
	TimeCreatedGreaterThanOrEqualTo *string `pulumi:"timeCreatedGreaterThanOrEqualTo"`
	// A filter that matches policies created before the specified date-time.
	TimeCreatedLessThan *string `pulumi:"timeCreatedLessThan"`
}

A collection of arguments for invoking getWaasPolicies.

type GetWaasPoliciesFilter

type GetWaasPoliciesFilter struct {
	// The unique name of the whitelist.
	Name   string   `pulumi:"name"`
	Regex  *bool    `pulumi:"regex"`
	Values []string `pulumi:"values"`
}

type GetWaasPoliciesFilterArgs

type GetWaasPoliciesFilterArgs struct {
	// The unique name of the whitelist.
	Name   pulumi.StringInput      `pulumi:"name"`
	Regex  pulumi.BoolPtrInput     `pulumi:"regex"`
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetWaasPoliciesFilterArgs) ElementType

func (GetWaasPoliciesFilterArgs) ElementType() reflect.Type

func (GetWaasPoliciesFilterArgs) ToGetWaasPoliciesFilterOutput

func (i GetWaasPoliciesFilterArgs) ToGetWaasPoliciesFilterOutput() GetWaasPoliciesFilterOutput

func (GetWaasPoliciesFilterArgs) ToGetWaasPoliciesFilterOutputWithContext

func (i GetWaasPoliciesFilterArgs) ToGetWaasPoliciesFilterOutputWithContext(ctx context.Context) GetWaasPoliciesFilterOutput

type GetWaasPoliciesFilterArray

type GetWaasPoliciesFilterArray []GetWaasPoliciesFilterInput

func (GetWaasPoliciesFilterArray) ElementType

func (GetWaasPoliciesFilterArray) ElementType() reflect.Type

func (GetWaasPoliciesFilterArray) ToGetWaasPoliciesFilterArrayOutput

func (i GetWaasPoliciesFilterArray) ToGetWaasPoliciesFilterArrayOutput() GetWaasPoliciesFilterArrayOutput

func (GetWaasPoliciesFilterArray) ToGetWaasPoliciesFilterArrayOutputWithContext

func (i GetWaasPoliciesFilterArray) ToGetWaasPoliciesFilterArrayOutputWithContext(ctx context.Context) GetWaasPoliciesFilterArrayOutput

type GetWaasPoliciesFilterArrayInput

type GetWaasPoliciesFilterArrayInput interface {
	pulumi.Input

	ToGetWaasPoliciesFilterArrayOutput() GetWaasPoliciesFilterArrayOutput
	ToGetWaasPoliciesFilterArrayOutputWithContext(context.Context) GetWaasPoliciesFilterArrayOutput
}

GetWaasPoliciesFilterArrayInput is an input type that accepts GetWaasPoliciesFilterArray and GetWaasPoliciesFilterArrayOutput values. You can construct a concrete instance of `GetWaasPoliciesFilterArrayInput` via:

GetWaasPoliciesFilterArray{ GetWaasPoliciesFilterArgs{...} }

type GetWaasPoliciesFilterArrayOutput

type GetWaasPoliciesFilterArrayOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesFilterArrayOutput) ElementType

func (GetWaasPoliciesFilterArrayOutput) Index

func (GetWaasPoliciesFilterArrayOutput) ToGetWaasPoliciesFilterArrayOutput

func (o GetWaasPoliciesFilterArrayOutput) ToGetWaasPoliciesFilterArrayOutput() GetWaasPoliciesFilterArrayOutput

func (GetWaasPoliciesFilterArrayOutput) ToGetWaasPoliciesFilterArrayOutputWithContext

func (o GetWaasPoliciesFilterArrayOutput) ToGetWaasPoliciesFilterArrayOutputWithContext(ctx context.Context) GetWaasPoliciesFilterArrayOutput

type GetWaasPoliciesFilterInput

type GetWaasPoliciesFilterInput interface {
	pulumi.Input

	ToGetWaasPoliciesFilterOutput() GetWaasPoliciesFilterOutput
	ToGetWaasPoliciesFilterOutputWithContext(context.Context) GetWaasPoliciesFilterOutput
}

GetWaasPoliciesFilterInput is an input type that accepts GetWaasPoliciesFilterArgs and GetWaasPoliciesFilterOutput values. You can construct a concrete instance of `GetWaasPoliciesFilterInput` via:

GetWaasPoliciesFilterArgs{...}

type GetWaasPoliciesFilterOutput

type GetWaasPoliciesFilterOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesFilterOutput) ElementType

func (GetWaasPoliciesFilterOutput) Name

The unique name of the whitelist.

func (GetWaasPoliciesFilterOutput) Regex

func (GetWaasPoliciesFilterOutput) ToGetWaasPoliciesFilterOutput

func (o GetWaasPoliciesFilterOutput) ToGetWaasPoliciesFilterOutput() GetWaasPoliciesFilterOutput

func (GetWaasPoliciesFilterOutput) ToGetWaasPoliciesFilterOutputWithContext

func (o GetWaasPoliciesFilterOutput) ToGetWaasPoliciesFilterOutputWithContext(ctx context.Context) GetWaasPoliciesFilterOutput

func (GetWaasPoliciesFilterOutput) Values

type GetWaasPoliciesOutputArgs

type GetWaasPoliciesOutputArgs struct {
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. This number is generated when the compartment is created.
	CompartmentId pulumi.StringInput `pulumi:"compartmentId"`
	// Filter policies using a list of display names.
	DisplayNames pulumi.StringArrayInput         `pulumi:"displayNames"`
	Filters      GetWaasPoliciesFilterArrayInput `pulumi:"filters"`
	// Filter policies using a list of policy OCIDs.
	Ids pulumi.StringArrayInput `pulumi:"ids"`
	// Filter policies using a list of lifecycle states.
	States pulumi.StringArrayInput `pulumi:"states"`
	// A filter that matches policies created on or after the specified date and time.
	TimeCreatedGreaterThanOrEqualTo pulumi.StringPtrInput `pulumi:"timeCreatedGreaterThanOrEqualTo"`
	// A filter that matches policies created before the specified date-time.
	TimeCreatedLessThan pulumi.StringPtrInput `pulumi:"timeCreatedLessThan"`
}

A collection of arguments for invoking getWaasPolicies.

func (GetWaasPoliciesOutputArgs) ElementType

func (GetWaasPoliciesOutputArgs) ElementType() reflect.Type

type GetWaasPoliciesResult

type GetWaasPoliciesResult struct {
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the WAAS policy's compartment.
	CompartmentId string                  `pulumi:"compartmentId"`
	DisplayNames  []string                `pulumi:"displayNames"`
	Filters       []GetWaasPoliciesFilter `pulumi:"filters"`
	// The provider-assigned unique ID for this managed resource.
	Id                              string   `pulumi:"id"`
	Ids                             []string `pulumi:"ids"`
	States                          []string `pulumi:"states"`
	TimeCreatedGreaterThanOrEqualTo *string  `pulumi:"timeCreatedGreaterThanOrEqualTo"`
	TimeCreatedLessThan             *string  `pulumi:"timeCreatedLessThan"`
	// The list of waas_policies.
	WaasPolicies []GetWaasPoliciesWaasPolicy `pulumi:"waasPolicies"`
}

A collection of values returned by getWaasPolicies.

func GetWaasPolicies

func GetWaasPolicies(ctx *pulumi.Context, args *GetWaasPoliciesArgs, opts ...pulumi.InvokeOption) (*GetWaasPoliciesResult, error)

This data source provides the list of Waas Policies in Oracle Cloud Infrastructure Web Application Acceleration and Security service.

Gets a list of WAAS policies.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-oci/sdk/go/oci/Waas"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Waas.GetWaasPolicies(ctx, &waas.GetWaasPoliciesArgs{
			CompartmentId:                   compartmentId,
			DisplayNames:                    waasPolicyDisplayNames,
			Ids:                             waasPolicyIds,
			States:                          waasPolicyStates,
			TimeCreatedGreaterThanOrEqualTo: pulumi.StringRef(waasPolicyTimeCreatedGreaterThanOrEqualTo),
			TimeCreatedLessThan:             pulumi.StringRef(waasPolicyTimeCreatedLessThan),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetWaasPoliciesResultOutput

type GetWaasPoliciesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getWaasPolicies.

func (GetWaasPoliciesResultOutput) CompartmentId

The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the WAAS policy's compartment.

func (GetWaasPoliciesResultOutput) DisplayNames

func (GetWaasPoliciesResultOutput) ElementType

func (GetWaasPoliciesResultOutput) Filters

func (GetWaasPoliciesResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetWaasPoliciesResultOutput) Ids

func (GetWaasPoliciesResultOutput) States

func (GetWaasPoliciesResultOutput) TimeCreatedGreaterThanOrEqualTo

func (o GetWaasPoliciesResultOutput) TimeCreatedGreaterThanOrEqualTo() pulumi.StringPtrOutput

func (GetWaasPoliciesResultOutput) TimeCreatedLessThan

func (o GetWaasPoliciesResultOutput) TimeCreatedLessThan() pulumi.StringPtrOutput

func (GetWaasPoliciesResultOutput) ToGetWaasPoliciesResultOutput

func (o GetWaasPoliciesResultOutput) ToGetWaasPoliciesResultOutput() GetWaasPoliciesResultOutput

func (GetWaasPoliciesResultOutput) ToGetWaasPoliciesResultOutputWithContext

func (o GetWaasPoliciesResultOutput) ToGetWaasPoliciesResultOutputWithContext(ctx context.Context) GetWaasPoliciesResultOutput

func (GetWaasPoliciesResultOutput) WaasPolicies

The list of waas_policies.

type GetWaasPoliciesWaasPolicy

type GetWaasPoliciesWaasPolicy struct {
	// An array of additional domains for this web application.
	AdditionalDomains []string `pulumi:"additionalDomains"`
	// The CNAME record to add to your DNS configuration to route traffic for the domain, and all additional domains, through the WAF.
	Cname string `pulumi:"cname"`
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. This number is generated when the compartment is created.
	CompartmentId string `pulumi:"compartmentId"`
	// Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Operations.CostCenter": "42"}`
	DefinedTags map[string]interface{} `pulumi:"definedTags"`
	// The user-friendly name of the WAAS policy. The name can be changed and does not need to be unique.
	DisplayName string `pulumi:"displayName"`
	// The domain for which the cookie is set, defaults to WAAS policy domain.
	Domain string `pulumi:"domain"`
	// Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Department": "Finance"}`
	FreeformTags map[string]interface{} `pulumi:"freeformTags"`
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the custom protection rule.
	Id string `pulumi:"id"`
	// The map of origin groups and their keys used to associate origins to the `wafConfig`. Origin groups allow you to apply weights to groups of origins for load balancing purposes. Origins with higher weights will receive larger proportions of client requests. To add additional origins to your WAAS policy, update the `origins` field of a `UpdateWaasPolicy` request.
	OriginGroups []GetWaasPoliciesWaasPolicyOriginGroup `pulumi:"originGroups"`
	// A map of host servers (origins) and their keys for the web application. Origin keys are used to associate origins to specific protection rules. The key should be a user-friendly name for the host. **Examples:** `primary` or `secondary`.
	Origins []GetWaasPoliciesWaasPolicyOrigin `pulumi:"origins"`
	// The configuration details for the WAAS policy.
	PolicyConfigs []GetWaasPoliciesWaasPolicyPolicyConfig `pulumi:"policyConfigs"`
	// The current lifecycle state of the WAAS policy.
	State string `pulumi:"state"`
	// The date and time the policy was created, expressed in RFC 3339 timestamp format.
	TimeCreated string `pulumi:"timeCreated"`
	// The Web Application Firewall configuration for the WAAS policy.
	WafConfigs []GetWaasPoliciesWaasPolicyWafConfig `pulumi:"wafConfigs"`
}

type GetWaasPoliciesWaasPolicyArgs

type GetWaasPoliciesWaasPolicyArgs struct {
	// An array of additional domains for this web application.
	AdditionalDomains pulumi.StringArrayInput `pulumi:"additionalDomains"`
	// The CNAME record to add to your DNS configuration to route traffic for the domain, and all additional domains, through the WAF.
	Cname pulumi.StringInput `pulumi:"cname"`
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. This number is generated when the compartment is created.
	CompartmentId pulumi.StringInput `pulumi:"compartmentId"`
	// Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Operations.CostCenter": "42"}`
	DefinedTags pulumi.MapInput `pulumi:"definedTags"`
	// The user-friendly name of the WAAS policy. The name can be changed and does not need to be unique.
	DisplayName pulumi.StringInput `pulumi:"displayName"`
	// The domain for which the cookie is set, defaults to WAAS policy domain.
	Domain pulumi.StringInput `pulumi:"domain"`
	// Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Department": "Finance"}`
	FreeformTags pulumi.MapInput `pulumi:"freeformTags"`
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the custom protection rule.
	Id pulumi.StringInput `pulumi:"id"`
	// The map of origin groups and their keys used to associate origins to the `wafConfig`. Origin groups allow you to apply weights to groups of origins for load balancing purposes. Origins with higher weights will receive larger proportions of client requests. To add additional origins to your WAAS policy, update the `origins` field of a `UpdateWaasPolicy` request.
	OriginGroups GetWaasPoliciesWaasPolicyOriginGroupArrayInput `pulumi:"originGroups"`
	// A map of host servers (origins) and their keys for the web application. Origin keys are used to associate origins to specific protection rules. The key should be a user-friendly name for the host. **Examples:** `primary` or `secondary`.
	Origins GetWaasPoliciesWaasPolicyOriginArrayInput `pulumi:"origins"`
	// The configuration details for the WAAS policy.
	PolicyConfigs GetWaasPoliciesWaasPolicyPolicyConfigArrayInput `pulumi:"policyConfigs"`
	// The current lifecycle state of the WAAS policy.
	State pulumi.StringInput `pulumi:"state"`
	// The date and time the policy was created, expressed in RFC 3339 timestamp format.
	TimeCreated pulumi.StringInput `pulumi:"timeCreated"`
	// The Web Application Firewall configuration for the WAAS policy.
	WafConfigs GetWaasPoliciesWaasPolicyWafConfigArrayInput `pulumi:"wafConfigs"`
}

func (GetWaasPoliciesWaasPolicyArgs) ElementType

func (GetWaasPoliciesWaasPolicyArgs) ToGetWaasPoliciesWaasPolicyOutput

func (i GetWaasPoliciesWaasPolicyArgs) ToGetWaasPoliciesWaasPolicyOutput() GetWaasPoliciesWaasPolicyOutput

func (GetWaasPoliciesWaasPolicyArgs) ToGetWaasPoliciesWaasPolicyOutputWithContext

func (i GetWaasPoliciesWaasPolicyArgs) ToGetWaasPoliciesWaasPolicyOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyOutput

type GetWaasPoliciesWaasPolicyArray

type GetWaasPoliciesWaasPolicyArray []GetWaasPoliciesWaasPolicyInput

func (GetWaasPoliciesWaasPolicyArray) ElementType

func (GetWaasPoliciesWaasPolicyArray) ToGetWaasPoliciesWaasPolicyArrayOutput

func (i GetWaasPoliciesWaasPolicyArray) ToGetWaasPoliciesWaasPolicyArrayOutput() GetWaasPoliciesWaasPolicyArrayOutput

func (GetWaasPoliciesWaasPolicyArray) ToGetWaasPoliciesWaasPolicyArrayOutputWithContext

func (i GetWaasPoliciesWaasPolicyArray) ToGetWaasPoliciesWaasPolicyArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyArrayOutput

type GetWaasPoliciesWaasPolicyArrayInput

type GetWaasPoliciesWaasPolicyArrayInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyArrayOutput() GetWaasPoliciesWaasPolicyArrayOutput
	ToGetWaasPoliciesWaasPolicyArrayOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyArrayOutput
}

GetWaasPoliciesWaasPolicyArrayInput is an input type that accepts GetWaasPoliciesWaasPolicyArray and GetWaasPoliciesWaasPolicyArrayOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyArrayInput` via:

GetWaasPoliciesWaasPolicyArray{ GetWaasPoliciesWaasPolicyArgs{...} }

type GetWaasPoliciesWaasPolicyArrayOutput

type GetWaasPoliciesWaasPolicyArrayOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyArrayOutput) ElementType

func (GetWaasPoliciesWaasPolicyArrayOutput) Index

func (GetWaasPoliciesWaasPolicyArrayOutput) ToGetWaasPoliciesWaasPolicyArrayOutput

func (o GetWaasPoliciesWaasPolicyArrayOutput) ToGetWaasPoliciesWaasPolicyArrayOutput() GetWaasPoliciesWaasPolicyArrayOutput

func (GetWaasPoliciesWaasPolicyArrayOutput) ToGetWaasPoliciesWaasPolicyArrayOutputWithContext

func (o GetWaasPoliciesWaasPolicyArrayOutput) ToGetWaasPoliciesWaasPolicyArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyArrayOutput

type GetWaasPoliciesWaasPolicyInput

type GetWaasPoliciesWaasPolicyInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyOutput() GetWaasPoliciesWaasPolicyOutput
	ToGetWaasPoliciesWaasPolicyOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyOutput
}

GetWaasPoliciesWaasPolicyInput is an input type that accepts GetWaasPoliciesWaasPolicyArgs and GetWaasPoliciesWaasPolicyOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyInput` via:

GetWaasPoliciesWaasPolicyArgs{...}

type GetWaasPoliciesWaasPolicyOrigin

type GetWaasPoliciesWaasPolicyOrigin struct {
	// A list of HTTP headers to forward to your origin.
	CustomHeaders []GetWaasPoliciesWaasPolicyOriginCustomHeader `pulumi:"customHeaders"`
	// The HTTP port on the origin that the web application listens on. If unspecified, defaults to `80`. If `0` is specified - the origin is not used for HTTP traffic.
	HttpPort int `pulumi:"httpPort"`
	// The HTTPS port on the origin that the web application listens on. If unspecified, defaults to `443`. If `0` is specified - the origin is not used for HTTPS traffic.
	HttpsPort int    `pulumi:"httpsPort"`
	Label     string `pulumi:"label"`
	// The URI of the origin. Does not support paths. Port numbers should be specified in the `httpPort` and `httpsPort` fields.
	Uri string `pulumi:"uri"`
}

type GetWaasPoliciesWaasPolicyOriginArgs

type GetWaasPoliciesWaasPolicyOriginArgs struct {
	// A list of HTTP headers to forward to your origin.
	CustomHeaders GetWaasPoliciesWaasPolicyOriginCustomHeaderArrayInput `pulumi:"customHeaders"`
	// The HTTP port on the origin that the web application listens on. If unspecified, defaults to `80`. If `0` is specified - the origin is not used for HTTP traffic.
	HttpPort pulumi.IntInput `pulumi:"httpPort"`
	// The HTTPS port on the origin that the web application listens on. If unspecified, defaults to `443`. If `0` is specified - the origin is not used for HTTPS traffic.
	HttpsPort pulumi.IntInput    `pulumi:"httpsPort"`
	Label     pulumi.StringInput `pulumi:"label"`
	// The URI of the origin. Does not support paths. Port numbers should be specified in the `httpPort` and `httpsPort` fields.
	Uri pulumi.StringInput `pulumi:"uri"`
}

func (GetWaasPoliciesWaasPolicyOriginArgs) ElementType

func (GetWaasPoliciesWaasPolicyOriginArgs) ToGetWaasPoliciesWaasPolicyOriginOutput

func (i GetWaasPoliciesWaasPolicyOriginArgs) ToGetWaasPoliciesWaasPolicyOriginOutput() GetWaasPoliciesWaasPolicyOriginOutput

func (GetWaasPoliciesWaasPolicyOriginArgs) ToGetWaasPoliciesWaasPolicyOriginOutputWithContext

func (i GetWaasPoliciesWaasPolicyOriginArgs) ToGetWaasPoliciesWaasPolicyOriginOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyOriginOutput

type GetWaasPoliciesWaasPolicyOriginArray

type GetWaasPoliciesWaasPolicyOriginArray []GetWaasPoliciesWaasPolicyOriginInput

func (GetWaasPoliciesWaasPolicyOriginArray) ElementType

func (GetWaasPoliciesWaasPolicyOriginArray) ToGetWaasPoliciesWaasPolicyOriginArrayOutput

func (i GetWaasPoliciesWaasPolicyOriginArray) ToGetWaasPoliciesWaasPolicyOriginArrayOutput() GetWaasPoliciesWaasPolicyOriginArrayOutput

func (GetWaasPoliciesWaasPolicyOriginArray) ToGetWaasPoliciesWaasPolicyOriginArrayOutputWithContext

func (i GetWaasPoliciesWaasPolicyOriginArray) ToGetWaasPoliciesWaasPolicyOriginArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyOriginArrayOutput

type GetWaasPoliciesWaasPolicyOriginArrayInput

type GetWaasPoliciesWaasPolicyOriginArrayInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyOriginArrayOutput() GetWaasPoliciesWaasPolicyOriginArrayOutput
	ToGetWaasPoliciesWaasPolicyOriginArrayOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyOriginArrayOutput
}

GetWaasPoliciesWaasPolicyOriginArrayInput is an input type that accepts GetWaasPoliciesWaasPolicyOriginArray and GetWaasPoliciesWaasPolicyOriginArrayOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyOriginArrayInput` via:

GetWaasPoliciesWaasPolicyOriginArray{ GetWaasPoliciesWaasPolicyOriginArgs{...} }

type GetWaasPoliciesWaasPolicyOriginArrayOutput

type GetWaasPoliciesWaasPolicyOriginArrayOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyOriginArrayOutput) ElementType

func (GetWaasPoliciesWaasPolicyOriginArrayOutput) Index

func (GetWaasPoliciesWaasPolicyOriginArrayOutput) ToGetWaasPoliciesWaasPolicyOriginArrayOutput

func (o GetWaasPoliciesWaasPolicyOriginArrayOutput) ToGetWaasPoliciesWaasPolicyOriginArrayOutput() GetWaasPoliciesWaasPolicyOriginArrayOutput

func (GetWaasPoliciesWaasPolicyOriginArrayOutput) ToGetWaasPoliciesWaasPolicyOriginArrayOutputWithContext

func (o GetWaasPoliciesWaasPolicyOriginArrayOutput) ToGetWaasPoliciesWaasPolicyOriginArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyOriginArrayOutput

type GetWaasPoliciesWaasPolicyOriginCustomHeader

type GetWaasPoliciesWaasPolicyOriginCustomHeader struct {
	// The unique name of the whitelist.
	Name string `pulumi:"name"`
	// The value of the header.
	Value string `pulumi:"value"`
}

type GetWaasPoliciesWaasPolicyOriginCustomHeaderArgs

type GetWaasPoliciesWaasPolicyOriginCustomHeaderArgs struct {
	// The unique name of the whitelist.
	Name pulumi.StringInput `pulumi:"name"`
	// The value of the header.
	Value pulumi.StringInput `pulumi:"value"`
}

func (GetWaasPoliciesWaasPolicyOriginCustomHeaderArgs) ElementType

func (GetWaasPoliciesWaasPolicyOriginCustomHeaderArgs) ToGetWaasPoliciesWaasPolicyOriginCustomHeaderOutput

func (i GetWaasPoliciesWaasPolicyOriginCustomHeaderArgs) ToGetWaasPoliciesWaasPolicyOriginCustomHeaderOutput() GetWaasPoliciesWaasPolicyOriginCustomHeaderOutput

func (GetWaasPoliciesWaasPolicyOriginCustomHeaderArgs) ToGetWaasPoliciesWaasPolicyOriginCustomHeaderOutputWithContext

func (i GetWaasPoliciesWaasPolicyOriginCustomHeaderArgs) ToGetWaasPoliciesWaasPolicyOriginCustomHeaderOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyOriginCustomHeaderOutput

type GetWaasPoliciesWaasPolicyOriginCustomHeaderArray

type GetWaasPoliciesWaasPolicyOriginCustomHeaderArray []GetWaasPoliciesWaasPolicyOriginCustomHeaderInput

func (GetWaasPoliciesWaasPolicyOriginCustomHeaderArray) ElementType

func (GetWaasPoliciesWaasPolicyOriginCustomHeaderArray) ToGetWaasPoliciesWaasPolicyOriginCustomHeaderArrayOutput

func (i GetWaasPoliciesWaasPolicyOriginCustomHeaderArray) ToGetWaasPoliciesWaasPolicyOriginCustomHeaderArrayOutput() GetWaasPoliciesWaasPolicyOriginCustomHeaderArrayOutput

func (GetWaasPoliciesWaasPolicyOriginCustomHeaderArray) ToGetWaasPoliciesWaasPolicyOriginCustomHeaderArrayOutputWithContext

func (i GetWaasPoliciesWaasPolicyOriginCustomHeaderArray) ToGetWaasPoliciesWaasPolicyOriginCustomHeaderArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyOriginCustomHeaderArrayOutput

type GetWaasPoliciesWaasPolicyOriginCustomHeaderArrayInput

type GetWaasPoliciesWaasPolicyOriginCustomHeaderArrayInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyOriginCustomHeaderArrayOutput() GetWaasPoliciesWaasPolicyOriginCustomHeaderArrayOutput
	ToGetWaasPoliciesWaasPolicyOriginCustomHeaderArrayOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyOriginCustomHeaderArrayOutput
}

GetWaasPoliciesWaasPolicyOriginCustomHeaderArrayInput is an input type that accepts GetWaasPoliciesWaasPolicyOriginCustomHeaderArray and GetWaasPoliciesWaasPolicyOriginCustomHeaderArrayOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyOriginCustomHeaderArrayInput` via:

GetWaasPoliciesWaasPolicyOriginCustomHeaderArray{ GetWaasPoliciesWaasPolicyOriginCustomHeaderArgs{...} }

type GetWaasPoliciesWaasPolicyOriginCustomHeaderArrayOutput

type GetWaasPoliciesWaasPolicyOriginCustomHeaderArrayOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyOriginCustomHeaderArrayOutput) ElementType

func (GetWaasPoliciesWaasPolicyOriginCustomHeaderArrayOutput) Index

func (GetWaasPoliciesWaasPolicyOriginCustomHeaderArrayOutput) ToGetWaasPoliciesWaasPolicyOriginCustomHeaderArrayOutput

func (GetWaasPoliciesWaasPolicyOriginCustomHeaderArrayOutput) ToGetWaasPoliciesWaasPolicyOriginCustomHeaderArrayOutputWithContext

func (o GetWaasPoliciesWaasPolicyOriginCustomHeaderArrayOutput) ToGetWaasPoliciesWaasPolicyOriginCustomHeaderArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyOriginCustomHeaderArrayOutput

type GetWaasPoliciesWaasPolicyOriginCustomHeaderInput

type GetWaasPoliciesWaasPolicyOriginCustomHeaderInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyOriginCustomHeaderOutput() GetWaasPoliciesWaasPolicyOriginCustomHeaderOutput
	ToGetWaasPoliciesWaasPolicyOriginCustomHeaderOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyOriginCustomHeaderOutput
}

GetWaasPoliciesWaasPolicyOriginCustomHeaderInput is an input type that accepts GetWaasPoliciesWaasPolicyOriginCustomHeaderArgs and GetWaasPoliciesWaasPolicyOriginCustomHeaderOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyOriginCustomHeaderInput` via:

GetWaasPoliciesWaasPolicyOriginCustomHeaderArgs{...}

type GetWaasPoliciesWaasPolicyOriginCustomHeaderOutput

type GetWaasPoliciesWaasPolicyOriginCustomHeaderOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyOriginCustomHeaderOutput) ElementType

func (GetWaasPoliciesWaasPolicyOriginCustomHeaderOutput) Name

The unique name of the whitelist.

func (GetWaasPoliciesWaasPolicyOriginCustomHeaderOutput) ToGetWaasPoliciesWaasPolicyOriginCustomHeaderOutput

func (o GetWaasPoliciesWaasPolicyOriginCustomHeaderOutput) ToGetWaasPoliciesWaasPolicyOriginCustomHeaderOutput() GetWaasPoliciesWaasPolicyOriginCustomHeaderOutput

func (GetWaasPoliciesWaasPolicyOriginCustomHeaderOutput) ToGetWaasPoliciesWaasPolicyOriginCustomHeaderOutputWithContext

func (o GetWaasPoliciesWaasPolicyOriginCustomHeaderOutput) ToGetWaasPoliciesWaasPolicyOriginCustomHeaderOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyOriginCustomHeaderOutput

func (GetWaasPoliciesWaasPolicyOriginCustomHeaderOutput) Value

The value of the header.

type GetWaasPoliciesWaasPolicyOriginGroup

type GetWaasPoliciesWaasPolicyOriginGroup struct {
	Label        string                                            `pulumi:"label"`
	OriginGroups []GetWaasPoliciesWaasPolicyOriginGroupOriginGroup `pulumi:"originGroups"`
}

type GetWaasPoliciesWaasPolicyOriginGroupArgs

type GetWaasPoliciesWaasPolicyOriginGroupArgs struct {
	Label        pulumi.StringInput                                        `pulumi:"label"`
	OriginGroups GetWaasPoliciesWaasPolicyOriginGroupOriginGroupArrayInput `pulumi:"originGroups"`
}

func (GetWaasPoliciesWaasPolicyOriginGroupArgs) ElementType

func (GetWaasPoliciesWaasPolicyOriginGroupArgs) ToGetWaasPoliciesWaasPolicyOriginGroupOutput

func (i GetWaasPoliciesWaasPolicyOriginGroupArgs) ToGetWaasPoliciesWaasPolicyOriginGroupOutput() GetWaasPoliciesWaasPolicyOriginGroupOutput

func (GetWaasPoliciesWaasPolicyOriginGroupArgs) ToGetWaasPoliciesWaasPolicyOriginGroupOutputWithContext

func (i GetWaasPoliciesWaasPolicyOriginGroupArgs) ToGetWaasPoliciesWaasPolicyOriginGroupOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyOriginGroupOutput

type GetWaasPoliciesWaasPolicyOriginGroupArray

type GetWaasPoliciesWaasPolicyOriginGroupArray []GetWaasPoliciesWaasPolicyOriginGroupInput

func (GetWaasPoliciesWaasPolicyOriginGroupArray) ElementType

func (GetWaasPoliciesWaasPolicyOriginGroupArray) ToGetWaasPoliciesWaasPolicyOriginGroupArrayOutput

func (i GetWaasPoliciesWaasPolicyOriginGroupArray) ToGetWaasPoliciesWaasPolicyOriginGroupArrayOutput() GetWaasPoliciesWaasPolicyOriginGroupArrayOutput

func (GetWaasPoliciesWaasPolicyOriginGroupArray) ToGetWaasPoliciesWaasPolicyOriginGroupArrayOutputWithContext

func (i GetWaasPoliciesWaasPolicyOriginGroupArray) ToGetWaasPoliciesWaasPolicyOriginGroupArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyOriginGroupArrayOutput

type GetWaasPoliciesWaasPolicyOriginGroupArrayInput

type GetWaasPoliciesWaasPolicyOriginGroupArrayInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyOriginGroupArrayOutput() GetWaasPoliciesWaasPolicyOriginGroupArrayOutput
	ToGetWaasPoliciesWaasPolicyOriginGroupArrayOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyOriginGroupArrayOutput
}

GetWaasPoliciesWaasPolicyOriginGroupArrayInput is an input type that accepts GetWaasPoliciesWaasPolicyOriginGroupArray and GetWaasPoliciesWaasPolicyOriginGroupArrayOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyOriginGroupArrayInput` via:

GetWaasPoliciesWaasPolicyOriginGroupArray{ GetWaasPoliciesWaasPolicyOriginGroupArgs{...} }

type GetWaasPoliciesWaasPolicyOriginGroupArrayOutput

type GetWaasPoliciesWaasPolicyOriginGroupArrayOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyOriginGroupArrayOutput) ElementType

func (GetWaasPoliciesWaasPolicyOriginGroupArrayOutput) Index

func (GetWaasPoliciesWaasPolicyOriginGroupArrayOutput) ToGetWaasPoliciesWaasPolicyOriginGroupArrayOutput

func (o GetWaasPoliciesWaasPolicyOriginGroupArrayOutput) ToGetWaasPoliciesWaasPolicyOriginGroupArrayOutput() GetWaasPoliciesWaasPolicyOriginGroupArrayOutput

func (GetWaasPoliciesWaasPolicyOriginGroupArrayOutput) ToGetWaasPoliciesWaasPolicyOriginGroupArrayOutputWithContext

func (o GetWaasPoliciesWaasPolicyOriginGroupArrayOutput) ToGetWaasPoliciesWaasPolicyOriginGroupArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyOriginGroupArrayOutput

type GetWaasPoliciesWaasPolicyOriginGroupInput

type GetWaasPoliciesWaasPolicyOriginGroupInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyOriginGroupOutput() GetWaasPoliciesWaasPolicyOriginGroupOutput
	ToGetWaasPoliciesWaasPolicyOriginGroupOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyOriginGroupOutput
}

GetWaasPoliciesWaasPolicyOriginGroupInput is an input type that accepts GetWaasPoliciesWaasPolicyOriginGroupArgs and GetWaasPoliciesWaasPolicyOriginGroupOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyOriginGroupInput` via:

GetWaasPoliciesWaasPolicyOriginGroupArgs{...}

type GetWaasPoliciesWaasPolicyOriginGroupOriginGroup

type GetWaasPoliciesWaasPolicyOriginGroupOriginGroup struct {
	// The key in the map of origins referencing the origin used for the Web Application Firewall. The origin must already be included in `Origins`. Required when creating the `WafConfig` resource, but not on update.
	Origin string `pulumi:"origin"`
	Weight int    `pulumi:"weight"`
}

type GetWaasPoliciesWaasPolicyOriginGroupOriginGroupArgs

type GetWaasPoliciesWaasPolicyOriginGroupOriginGroupArgs struct {
	// The key in the map of origins referencing the origin used for the Web Application Firewall. The origin must already be included in `Origins`. Required when creating the `WafConfig` resource, but not on update.
	Origin pulumi.StringInput `pulumi:"origin"`
	Weight pulumi.IntInput    `pulumi:"weight"`
}

func (GetWaasPoliciesWaasPolicyOriginGroupOriginGroupArgs) ElementType

func (GetWaasPoliciesWaasPolicyOriginGroupOriginGroupArgs) ToGetWaasPoliciesWaasPolicyOriginGroupOriginGroupOutput

func (i GetWaasPoliciesWaasPolicyOriginGroupOriginGroupArgs) ToGetWaasPoliciesWaasPolicyOriginGroupOriginGroupOutput() GetWaasPoliciesWaasPolicyOriginGroupOriginGroupOutput

func (GetWaasPoliciesWaasPolicyOriginGroupOriginGroupArgs) ToGetWaasPoliciesWaasPolicyOriginGroupOriginGroupOutputWithContext

func (i GetWaasPoliciesWaasPolicyOriginGroupOriginGroupArgs) ToGetWaasPoliciesWaasPolicyOriginGroupOriginGroupOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyOriginGroupOriginGroupOutput

type GetWaasPoliciesWaasPolicyOriginGroupOriginGroupArray

type GetWaasPoliciesWaasPolicyOriginGroupOriginGroupArray []GetWaasPoliciesWaasPolicyOriginGroupOriginGroupInput

func (GetWaasPoliciesWaasPolicyOriginGroupOriginGroupArray) ElementType

func (GetWaasPoliciesWaasPolicyOriginGroupOriginGroupArray) ToGetWaasPoliciesWaasPolicyOriginGroupOriginGroupArrayOutput

func (i GetWaasPoliciesWaasPolicyOriginGroupOriginGroupArray) ToGetWaasPoliciesWaasPolicyOriginGroupOriginGroupArrayOutput() GetWaasPoliciesWaasPolicyOriginGroupOriginGroupArrayOutput

func (GetWaasPoliciesWaasPolicyOriginGroupOriginGroupArray) ToGetWaasPoliciesWaasPolicyOriginGroupOriginGroupArrayOutputWithContext

func (i GetWaasPoliciesWaasPolicyOriginGroupOriginGroupArray) ToGetWaasPoliciesWaasPolicyOriginGroupOriginGroupArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyOriginGroupOriginGroupArrayOutput

type GetWaasPoliciesWaasPolicyOriginGroupOriginGroupArrayInput

type GetWaasPoliciesWaasPolicyOriginGroupOriginGroupArrayInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyOriginGroupOriginGroupArrayOutput() GetWaasPoliciesWaasPolicyOriginGroupOriginGroupArrayOutput
	ToGetWaasPoliciesWaasPolicyOriginGroupOriginGroupArrayOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyOriginGroupOriginGroupArrayOutput
}

GetWaasPoliciesWaasPolicyOriginGroupOriginGroupArrayInput is an input type that accepts GetWaasPoliciesWaasPolicyOriginGroupOriginGroupArray and GetWaasPoliciesWaasPolicyOriginGroupOriginGroupArrayOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyOriginGroupOriginGroupArrayInput` via:

GetWaasPoliciesWaasPolicyOriginGroupOriginGroupArray{ GetWaasPoliciesWaasPolicyOriginGroupOriginGroupArgs{...} }

type GetWaasPoliciesWaasPolicyOriginGroupOriginGroupArrayOutput

type GetWaasPoliciesWaasPolicyOriginGroupOriginGroupArrayOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyOriginGroupOriginGroupArrayOutput) ElementType

func (GetWaasPoliciesWaasPolicyOriginGroupOriginGroupArrayOutput) Index

func (GetWaasPoliciesWaasPolicyOriginGroupOriginGroupArrayOutput) ToGetWaasPoliciesWaasPolicyOriginGroupOriginGroupArrayOutput

func (GetWaasPoliciesWaasPolicyOriginGroupOriginGroupArrayOutput) ToGetWaasPoliciesWaasPolicyOriginGroupOriginGroupArrayOutputWithContext

func (o GetWaasPoliciesWaasPolicyOriginGroupOriginGroupArrayOutput) ToGetWaasPoliciesWaasPolicyOriginGroupOriginGroupArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyOriginGroupOriginGroupArrayOutput

type GetWaasPoliciesWaasPolicyOriginGroupOriginGroupInput

type GetWaasPoliciesWaasPolicyOriginGroupOriginGroupInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyOriginGroupOriginGroupOutput() GetWaasPoliciesWaasPolicyOriginGroupOriginGroupOutput
	ToGetWaasPoliciesWaasPolicyOriginGroupOriginGroupOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyOriginGroupOriginGroupOutput
}

GetWaasPoliciesWaasPolicyOriginGroupOriginGroupInput is an input type that accepts GetWaasPoliciesWaasPolicyOriginGroupOriginGroupArgs and GetWaasPoliciesWaasPolicyOriginGroupOriginGroupOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyOriginGroupOriginGroupInput` via:

GetWaasPoliciesWaasPolicyOriginGroupOriginGroupArgs{...}

type GetWaasPoliciesWaasPolicyOriginGroupOriginGroupOutput

type GetWaasPoliciesWaasPolicyOriginGroupOriginGroupOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyOriginGroupOriginGroupOutput) ElementType

func (GetWaasPoliciesWaasPolicyOriginGroupOriginGroupOutput) Origin

The key in the map of origins referencing the origin used for the Web Application Firewall. The origin must already be included in `Origins`. Required when creating the `WafConfig` resource, but not on update.

func (GetWaasPoliciesWaasPolicyOriginGroupOriginGroupOutput) ToGetWaasPoliciesWaasPolicyOriginGroupOriginGroupOutput

func (GetWaasPoliciesWaasPolicyOriginGroupOriginGroupOutput) ToGetWaasPoliciesWaasPolicyOriginGroupOriginGroupOutputWithContext

func (o GetWaasPoliciesWaasPolicyOriginGroupOriginGroupOutput) ToGetWaasPoliciesWaasPolicyOriginGroupOriginGroupOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyOriginGroupOriginGroupOutput

func (GetWaasPoliciesWaasPolicyOriginGroupOriginGroupOutput) Weight

type GetWaasPoliciesWaasPolicyOriginGroupOutput

type GetWaasPoliciesWaasPolicyOriginGroupOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyOriginGroupOutput) ElementType

func (GetWaasPoliciesWaasPolicyOriginGroupOutput) Label

func (GetWaasPoliciesWaasPolicyOriginGroupOutput) OriginGroups

func (GetWaasPoliciesWaasPolicyOriginGroupOutput) ToGetWaasPoliciesWaasPolicyOriginGroupOutput

func (o GetWaasPoliciesWaasPolicyOriginGroupOutput) ToGetWaasPoliciesWaasPolicyOriginGroupOutput() GetWaasPoliciesWaasPolicyOriginGroupOutput

func (GetWaasPoliciesWaasPolicyOriginGroupOutput) ToGetWaasPoliciesWaasPolicyOriginGroupOutputWithContext

func (o GetWaasPoliciesWaasPolicyOriginGroupOutput) ToGetWaasPoliciesWaasPolicyOriginGroupOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyOriginGroupOutput

type GetWaasPoliciesWaasPolicyOriginInput

type GetWaasPoliciesWaasPolicyOriginInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyOriginOutput() GetWaasPoliciesWaasPolicyOriginOutput
	ToGetWaasPoliciesWaasPolicyOriginOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyOriginOutput
}

GetWaasPoliciesWaasPolicyOriginInput is an input type that accepts GetWaasPoliciesWaasPolicyOriginArgs and GetWaasPoliciesWaasPolicyOriginOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyOriginInput` via:

GetWaasPoliciesWaasPolicyOriginArgs{...}

type GetWaasPoliciesWaasPolicyOriginOutput

type GetWaasPoliciesWaasPolicyOriginOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyOriginOutput) CustomHeaders

A list of HTTP headers to forward to your origin.

func (GetWaasPoliciesWaasPolicyOriginOutput) ElementType

func (GetWaasPoliciesWaasPolicyOriginOutput) HttpPort

The HTTP port on the origin that the web application listens on. If unspecified, defaults to `80`. If `0` is specified - the origin is not used for HTTP traffic.

func (GetWaasPoliciesWaasPolicyOriginOutput) HttpsPort

The HTTPS port on the origin that the web application listens on. If unspecified, defaults to `443`. If `0` is specified - the origin is not used for HTTPS traffic.

func (GetWaasPoliciesWaasPolicyOriginOutput) Label

func (GetWaasPoliciesWaasPolicyOriginOutput) ToGetWaasPoliciesWaasPolicyOriginOutput

func (o GetWaasPoliciesWaasPolicyOriginOutput) ToGetWaasPoliciesWaasPolicyOriginOutput() GetWaasPoliciesWaasPolicyOriginOutput

func (GetWaasPoliciesWaasPolicyOriginOutput) ToGetWaasPoliciesWaasPolicyOriginOutputWithContext

func (o GetWaasPoliciesWaasPolicyOriginOutput) ToGetWaasPoliciesWaasPolicyOriginOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyOriginOutput

func (GetWaasPoliciesWaasPolicyOriginOutput) Uri

The URI of the origin. Does not support paths. Port numbers should be specified in the `httpPort` and `httpsPort` fields.

type GetWaasPoliciesWaasPolicyOutput

type GetWaasPoliciesWaasPolicyOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyOutput) AdditionalDomains

An array of additional domains for this web application.

func (GetWaasPoliciesWaasPolicyOutput) Cname

The CNAME record to add to your DNS configuration to route traffic for the domain, and all additional domains, through the WAF.

func (GetWaasPoliciesWaasPolicyOutput) CompartmentId

The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. This number is generated when the compartment is created.

func (GetWaasPoliciesWaasPolicyOutput) DefinedTags

Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Operations.CostCenter": "42"}`

func (GetWaasPoliciesWaasPolicyOutput) DisplayName

The user-friendly name of the WAAS policy. The name can be changed and does not need to be unique.

func (GetWaasPoliciesWaasPolicyOutput) Domain

The domain for which the cookie is set, defaults to WAAS policy domain.

func (GetWaasPoliciesWaasPolicyOutput) ElementType

func (GetWaasPoliciesWaasPolicyOutput) FreeformTags

Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Department": "Finance"}`

func (GetWaasPoliciesWaasPolicyOutput) Id

The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the custom protection rule.

func (GetWaasPoliciesWaasPolicyOutput) OriginGroups

The map of origin groups and their keys used to associate origins to the `wafConfig`. Origin groups allow you to apply weights to groups of origins for load balancing purposes. Origins with higher weights will receive larger proportions of client requests. To add additional origins to your WAAS policy, update the `origins` field of a `UpdateWaasPolicy` request.

func (GetWaasPoliciesWaasPolicyOutput) Origins

A map of host servers (origins) and their keys for the web application. Origin keys are used to associate origins to specific protection rules. The key should be a user-friendly name for the host. **Examples:** `primary` or `secondary`.

func (GetWaasPoliciesWaasPolicyOutput) PolicyConfigs

The configuration details for the WAAS policy.

func (GetWaasPoliciesWaasPolicyOutput) State

The current lifecycle state of the WAAS policy.

func (GetWaasPoliciesWaasPolicyOutput) TimeCreated

The date and time the policy was created, expressed in RFC 3339 timestamp format.

func (GetWaasPoliciesWaasPolicyOutput) ToGetWaasPoliciesWaasPolicyOutput

func (o GetWaasPoliciesWaasPolicyOutput) ToGetWaasPoliciesWaasPolicyOutput() GetWaasPoliciesWaasPolicyOutput

func (GetWaasPoliciesWaasPolicyOutput) ToGetWaasPoliciesWaasPolicyOutputWithContext

func (o GetWaasPoliciesWaasPolicyOutput) ToGetWaasPoliciesWaasPolicyOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyOutput

func (GetWaasPoliciesWaasPolicyOutput) WafConfigs

The Web Application Firewall configuration for the WAAS policy.

type GetWaasPoliciesWaasPolicyPolicyConfig

type GetWaasPoliciesWaasPolicyPolicyConfig struct {
	// The OCID of the SSL certificate to use if HTTPS is supported.
	CertificateId string `pulumi:"certificateId"`
	// The set cipher group for the configured TLS protocol. This sets the configuration for the TLS connections between clients and edge nodes only.
	// * **DEFAULT:** Cipher group supports TLS 1.0, TLS 1.1, TLS 1.2, TLS 1.3 protocols. It has the following ciphers enabled: `ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:!DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA`
	CipherGroup string `pulumi:"cipherGroup"`
	// Specifies an HTTP header name which is treated as the connecting client's IP address. Applicable only if `isBehindCdn` is enabled.
	ClientAddressHeader string `pulumi:"clientAddressHeader"`
	// Health checks monitor the status of your origin servers and only route traffic to the origins that pass the health check. If the health check fails, origin is automatically removed from the load balancing. There is roughly one health check per EDGE POP per period. Any checks that pass will be reported as "healthy".
	HealthChecks []GetWaasPoliciesWaasPolicyPolicyConfigHealthCheck `pulumi:"healthChecks"`
	// Enabling `isBehindCdn` allows for the collection of IP addresses from client requests if the WAF is connected to a CDN.
	IsBehindCdn bool `pulumi:"isBehindCdn"`
	// Enable or disable automatic content caching based on the response `cache-control` header. This feature enables the origin to act as a proxy cache. Caching is usually defined using `cache-control` header. For example `cache-control: max-age=120` means that the returned resource is valid for 120 seconds. Caching rules will overwrite this setting.
	IsCacheControlRespected bool `pulumi:"isCacheControlRespected"`
	// Enable or disable HTTPS support. If true, a `certificateId` is required. If unspecified, defaults to `false`.
	IsHttpsEnabled bool `pulumi:"isHttpsEnabled"`
	// Force HTTP to HTTPS redirection. If unspecified, defaults to `false`.
	IsHttpsForced bool `pulumi:"isHttpsForced"`
	// Enable or disable GZIP compression of origin responses. If enabled, the header `Accept-Encoding: gzip` is sent to origin, otherwise, the empty `Accept-Encoding:` header is used.
	IsOriginCompressionEnabled bool `pulumi:"isOriginCompressionEnabled"`
	// Enable or disable buffering of responses from the origin. Buffering improves overall stability in case of network issues, but slightly increases Time To First Byte.
	IsResponseBufferingEnabled bool `pulumi:"isResponseBufferingEnabled"`
	// SNI stands for Server Name Indication and is an extension of the TLS protocol. It indicates which hostname is being contacted by the browser at the beginning of the 'handshake'-process. This allows a server to connect multiple SSL Certificates to one IP address and port.
	IsSniEnabled bool `pulumi:"isSniEnabled"`
	// An object that represents a load balancing method and its properties.
	LoadBalancingMethods []GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethod `pulumi:"loadBalancingMethods"`
	// A list of allowed TLS protocols. Only applicable when HTTPS support is enabled. The TLS protocol is negotiated while the request is connecting and the most recent protocol supported by both the edge node and client browser will be selected. If no such version exists, the connection will be aborted.
	// * **TLS_V1:** corresponds to TLS 1.0 specification.
	// * **TLS_V1_1:** corresponds to TLS 1.1 specification.
	// * **TLS_V1_2:** corresponds to TLS 1.2 specification.
	// * **TLS_V1_3:** corresponds to TLS 1.3 specification.
	TlsProtocols []string `pulumi:"tlsProtocols"`
	// ModSecurity is not capable to inspect WebSockets. Therefore paths specified here have WAF disabled if Connection request header from the client has the value Upgrade (case insensitive matching) and Upgrade request header has the value websocket (case insensitive matching). Paths matches if the concatenation of request URL path and query starts with the contents of the one of `websocketPathPrefixes` array value. In All other cases challenges, like JSC, HIC and etc., remain active.
	WebsocketPathPrefixes []string `pulumi:"websocketPathPrefixes"`
}

type GetWaasPoliciesWaasPolicyPolicyConfigArgs

type GetWaasPoliciesWaasPolicyPolicyConfigArgs struct {
	// The OCID of the SSL certificate to use if HTTPS is supported.
	CertificateId pulumi.StringInput `pulumi:"certificateId"`
	// The set cipher group for the configured TLS protocol. This sets the configuration for the TLS connections between clients and edge nodes only.
	// * **DEFAULT:** Cipher group supports TLS 1.0, TLS 1.1, TLS 1.2, TLS 1.3 protocols. It has the following ciphers enabled: `ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:!DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA`
	CipherGroup pulumi.StringInput `pulumi:"cipherGroup"`
	// Specifies an HTTP header name which is treated as the connecting client's IP address. Applicable only if `isBehindCdn` is enabled.
	ClientAddressHeader pulumi.StringInput `pulumi:"clientAddressHeader"`
	// Health checks monitor the status of your origin servers and only route traffic to the origins that pass the health check. If the health check fails, origin is automatically removed from the load balancing. There is roughly one health check per EDGE POP per period. Any checks that pass will be reported as "healthy".
	HealthChecks GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckArrayInput `pulumi:"healthChecks"`
	// Enabling `isBehindCdn` allows for the collection of IP addresses from client requests if the WAF is connected to a CDN.
	IsBehindCdn pulumi.BoolInput `pulumi:"isBehindCdn"`
	// Enable or disable automatic content caching based on the response `cache-control` header. This feature enables the origin to act as a proxy cache. Caching is usually defined using `cache-control` header. For example `cache-control: max-age=120` means that the returned resource is valid for 120 seconds. Caching rules will overwrite this setting.
	IsCacheControlRespected pulumi.BoolInput `pulumi:"isCacheControlRespected"`
	// Enable or disable HTTPS support. If true, a `certificateId` is required. If unspecified, defaults to `false`.
	IsHttpsEnabled pulumi.BoolInput `pulumi:"isHttpsEnabled"`
	// Force HTTP to HTTPS redirection. If unspecified, defaults to `false`.
	IsHttpsForced pulumi.BoolInput `pulumi:"isHttpsForced"`
	// Enable or disable GZIP compression of origin responses. If enabled, the header `Accept-Encoding: gzip` is sent to origin, otherwise, the empty `Accept-Encoding:` header is used.
	IsOriginCompressionEnabled pulumi.BoolInput `pulumi:"isOriginCompressionEnabled"`
	// Enable or disable buffering of responses from the origin. Buffering improves overall stability in case of network issues, but slightly increases Time To First Byte.
	IsResponseBufferingEnabled pulumi.BoolInput `pulumi:"isResponseBufferingEnabled"`
	// SNI stands for Server Name Indication and is an extension of the TLS protocol. It indicates which hostname is being contacted by the browser at the beginning of the 'handshake'-process. This allows a server to connect multiple SSL Certificates to one IP address and port.
	IsSniEnabled pulumi.BoolInput `pulumi:"isSniEnabled"`
	// An object that represents a load balancing method and its properties.
	LoadBalancingMethods GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodArrayInput `pulumi:"loadBalancingMethods"`
	// A list of allowed TLS protocols. Only applicable when HTTPS support is enabled. The TLS protocol is negotiated while the request is connecting and the most recent protocol supported by both the edge node and client browser will be selected. If no such version exists, the connection will be aborted.
	// * **TLS_V1:** corresponds to TLS 1.0 specification.
	// * **TLS_V1_1:** corresponds to TLS 1.1 specification.
	// * **TLS_V1_2:** corresponds to TLS 1.2 specification.
	// * **TLS_V1_3:** corresponds to TLS 1.3 specification.
	TlsProtocols pulumi.StringArrayInput `pulumi:"tlsProtocols"`
	// ModSecurity is not capable to inspect WebSockets. Therefore paths specified here have WAF disabled if Connection request header from the client has the value Upgrade (case insensitive matching) and Upgrade request header has the value websocket (case insensitive matching). Paths matches if the concatenation of request URL path and query starts with the contents of the one of `websocketPathPrefixes` array value. In All other cases challenges, like JSC, HIC and etc., remain active.
	WebsocketPathPrefixes pulumi.StringArrayInput `pulumi:"websocketPathPrefixes"`
}

func (GetWaasPoliciesWaasPolicyPolicyConfigArgs) ElementType

func (GetWaasPoliciesWaasPolicyPolicyConfigArgs) ToGetWaasPoliciesWaasPolicyPolicyConfigOutput

func (i GetWaasPoliciesWaasPolicyPolicyConfigArgs) ToGetWaasPoliciesWaasPolicyPolicyConfigOutput() GetWaasPoliciesWaasPolicyPolicyConfigOutput

func (GetWaasPoliciesWaasPolicyPolicyConfigArgs) ToGetWaasPoliciesWaasPolicyPolicyConfigOutputWithContext

func (i GetWaasPoliciesWaasPolicyPolicyConfigArgs) ToGetWaasPoliciesWaasPolicyPolicyConfigOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyPolicyConfigOutput

type GetWaasPoliciesWaasPolicyPolicyConfigArray

type GetWaasPoliciesWaasPolicyPolicyConfigArray []GetWaasPoliciesWaasPolicyPolicyConfigInput

func (GetWaasPoliciesWaasPolicyPolicyConfigArray) ElementType

func (GetWaasPoliciesWaasPolicyPolicyConfigArray) ToGetWaasPoliciesWaasPolicyPolicyConfigArrayOutput

func (i GetWaasPoliciesWaasPolicyPolicyConfigArray) ToGetWaasPoliciesWaasPolicyPolicyConfigArrayOutput() GetWaasPoliciesWaasPolicyPolicyConfigArrayOutput

func (GetWaasPoliciesWaasPolicyPolicyConfigArray) ToGetWaasPoliciesWaasPolicyPolicyConfigArrayOutputWithContext

func (i GetWaasPoliciesWaasPolicyPolicyConfigArray) ToGetWaasPoliciesWaasPolicyPolicyConfigArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyPolicyConfigArrayOutput

type GetWaasPoliciesWaasPolicyPolicyConfigArrayInput

type GetWaasPoliciesWaasPolicyPolicyConfigArrayInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyPolicyConfigArrayOutput() GetWaasPoliciesWaasPolicyPolicyConfigArrayOutput
	ToGetWaasPoliciesWaasPolicyPolicyConfigArrayOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyPolicyConfigArrayOutput
}

GetWaasPoliciesWaasPolicyPolicyConfigArrayInput is an input type that accepts GetWaasPoliciesWaasPolicyPolicyConfigArray and GetWaasPoliciesWaasPolicyPolicyConfigArrayOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyPolicyConfigArrayInput` via:

GetWaasPoliciesWaasPolicyPolicyConfigArray{ GetWaasPoliciesWaasPolicyPolicyConfigArgs{...} }

type GetWaasPoliciesWaasPolicyPolicyConfigArrayOutput

type GetWaasPoliciesWaasPolicyPolicyConfigArrayOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyPolicyConfigArrayOutput) ElementType

func (GetWaasPoliciesWaasPolicyPolicyConfigArrayOutput) Index

func (GetWaasPoliciesWaasPolicyPolicyConfigArrayOutput) ToGetWaasPoliciesWaasPolicyPolicyConfigArrayOutput

func (o GetWaasPoliciesWaasPolicyPolicyConfigArrayOutput) ToGetWaasPoliciesWaasPolicyPolicyConfigArrayOutput() GetWaasPoliciesWaasPolicyPolicyConfigArrayOutput

func (GetWaasPoliciesWaasPolicyPolicyConfigArrayOutput) ToGetWaasPoliciesWaasPolicyPolicyConfigArrayOutputWithContext

func (o GetWaasPoliciesWaasPolicyPolicyConfigArrayOutput) ToGetWaasPoliciesWaasPolicyPolicyConfigArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyPolicyConfigArrayOutput

type GetWaasPoliciesWaasPolicyPolicyConfigHealthCheck

type GetWaasPoliciesWaasPolicyPolicyConfigHealthCheck struct {
	// The HTTP response codes that signify a healthy state.
	// * **2XX:** Success response code group.
	// * **3XX:** Redirection response code group.
	// * **4XX:** Client errors response code group.
	// * **5XX:** Server errors response code group.
	ExpectedResponseCodeGroups []string `pulumi:"expectedResponseCodeGroups"`
	// Health check will search for the given text in a case-sensitive manner within the response body and will fail if the text is not found.
	ExpectedResponseText string `pulumi:"expectedResponseText"`
	// HTTP header fields to include in health check requests, expressed as `"name": "value"` properties. Because HTTP header field names are case-insensitive, any use of names that are case-insensitive equal to other names will be rejected. If Host is not specified, requests will include a Host header field with value matching the policy's protected domain. If User-Agent is not specified, requests will include a User-Agent header field with value "waf health checks".
	Headers map[string]interface{} `pulumi:"headers"`
	// Number of successful health checks after which the server is marked up.
	HealthyThreshold int `pulumi:"healthyThreshold"`
	// Time between health checks of an individual origin server, in seconds.
	IntervalInSeconds int `pulumi:"intervalInSeconds"`
	// Enables or disables the JavaScript challenge Web Application Firewall feature.
	IsEnabled bool `pulumi:"isEnabled"`
	// Enables or disables additional check for predefined text in addition to response code.
	IsResponseTextCheckEnabled bool `pulumi:"isResponseTextCheckEnabled"`
	// Load balancing methods are algorithms used to efficiently distribute traffic among origin servers.
	// * **[IP_HASH](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/IPHashLoadBalancingMethod):** All the incoming requests from the same client IP address should go to the same content origination server. IP_HASH load balancing method uses origin weights when choosing which origin should the hash be assigned to initially.
	// * **[ROUND_ROBIN](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/RoundRobinLoadBalancingMethod):** Forwards requests sequentially to the available origin servers. The first request - to the first origin server, the second request - to the next origin server, and so on. After it sends a request to the last origin server, it starts again with the first origin server. When using weights on origins, Weighted Round Robin assigns more requests to origins with a greater weight. Over a period of time, origins will receive a number of requests in proportion to their weight.
	// * **[STICKY_COOKIE](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/StickyCookieLoadBalancingMethod):** Adds a session cookie to the first response from the origin server and identifies the server that sent the response. The client's next request contains the cookie value, and nginx routes the request to the origin server that responded to the first request. STICKY_COOKIE load balancing method falls back to Round Robin for the first request.
	Method string `pulumi:"method"`
	// Path to visit on your origins when performing the health check.
	Path string `pulumi:"path"`
	// Response timeout represents wait time until request is considered failed, in seconds.
	TimeoutInSeconds int `pulumi:"timeoutInSeconds"`
	// Number of failed health checks after which the server is marked down.
	UnhealthyThreshold int `pulumi:"unhealthyThreshold"`
}

type GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckArgs

type GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckArgs struct {
	// The HTTP response codes that signify a healthy state.
	// * **2XX:** Success response code group.
	// * **3XX:** Redirection response code group.
	// * **4XX:** Client errors response code group.
	// * **5XX:** Server errors response code group.
	ExpectedResponseCodeGroups pulumi.StringArrayInput `pulumi:"expectedResponseCodeGroups"`
	// Health check will search for the given text in a case-sensitive manner within the response body and will fail if the text is not found.
	ExpectedResponseText pulumi.StringInput `pulumi:"expectedResponseText"`
	// HTTP header fields to include in health check requests, expressed as `"name": "value"` properties. Because HTTP header field names are case-insensitive, any use of names that are case-insensitive equal to other names will be rejected. If Host is not specified, requests will include a Host header field with value matching the policy's protected domain. If User-Agent is not specified, requests will include a User-Agent header field with value "waf health checks".
	Headers pulumi.MapInput `pulumi:"headers"`
	// Number of successful health checks after which the server is marked up.
	HealthyThreshold pulumi.IntInput `pulumi:"healthyThreshold"`
	// Time between health checks of an individual origin server, in seconds.
	IntervalInSeconds pulumi.IntInput `pulumi:"intervalInSeconds"`
	// Enables or disables the JavaScript challenge Web Application Firewall feature.
	IsEnabled pulumi.BoolInput `pulumi:"isEnabled"`
	// Enables or disables additional check for predefined text in addition to response code.
	IsResponseTextCheckEnabled pulumi.BoolInput `pulumi:"isResponseTextCheckEnabled"`
	// Load balancing methods are algorithms used to efficiently distribute traffic among origin servers.
	// * **[IP_HASH](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/IPHashLoadBalancingMethod):** All the incoming requests from the same client IP address should go to the same content origination server. IP_HASH load balancing method uses origin weights when choosing which origin should the hash be assigned to initially.
	// * **[ROUND_ROBIN](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/RoundRobinLoadBalancingMethod):** Forwards requests sequentially to the available origin servers. The first request - to the first origin server, the second request - to the next origin server, and so on. After it sends a request to the last origin server, it starts again with the first origin server. When using weights on origins, Weighted Round Robin assigns more requests to origins with a greater weight. Over a period of time, origins will receive a number of requests in proportion to their weight.
	// * **[STICKY_COOKIE](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/StickyCookieLoadBalancingMethod):** Adds a session cookie to the first response from the origin server and identifies the server that sent the response. The client's next request contains the cookie value, and nginx routes the request to the origin server that responded to the first request. STICKY_COOKIE load balancing method falls back to Round Robin for the first request.
	Method pulumi.StringInput `pulumi:"method"`
	// Path to visit on your origins when performing the health check.
	Path pulumi.StringInput `pulumi:"path"`
	// Response timeout represents wait time until request is considered failed, in seconds.
	TimeoutInSeconds pulumi.IntInput `pulumi:"timeoutInSeconds"`
	// Number of failed health checks after which the server is marked down.
	UnhealthyThreshold pulumi.IntInput `pulumi:"unhealthyThreshold"`
}

func (GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckArgs) ElementType

func (GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckArgs) ToGetWaasPoliciesWaasPolicyPolicyConfigHealthCheckOutput

func (i GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckArgs) ToGetWaasPoliciesWaasPolicyPolicyConfigHealthCheckOutput() GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckOutput

func (GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckArgs) ToGetWaasPoliciesWaasPolicyPolicyConfigHealthCheckOutputWithContext

func (i GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckArgs) ToGetWaasPoliciesWaasPolicyPolicyConfigHealthCheckOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckOutput

type GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckArray

type GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckArray []GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckInput

func (GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckArray) ElementType

func (GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckArray) ToGetWaasPoliciesWaasPolicyPolicyConfigHealthCheckArrayOutput

func (i GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckArray) ToGetWaasPoliciesWaasPolicyPolicyConfigHealthCheckArrayOutput() GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckArrayOutput

func (GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckArray) ToGetWaasPoliciesWaasPolicyPolicyConfigHealthCheckArrayOutputWithContext

func (i GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckArray) ToGetWaasPoliciesWaasPolicyPolicyConfigHealthCheckArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckArrayOutput

type GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckArrayInput

type GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckArrayInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyPolicyConfigHealthCheckArrayOutput() GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckArrayOutput
	ToGetWaasPoliciesWaasPolicyPolicyConfigHealthCheckArrayOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckArrayOutput
}

GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckArrayInput is an input type that accepts GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckArray and GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckArrayOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckArrayInput` via:

GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckArray{ GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckArgs{...} }

type GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckArrayOutput

type GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckArrayOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckArrayOutput) ElementType

func (GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckArrayOutput) Index

func (GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckArrayOutput) ToGetWaasPoliciesWaasPolicyPolicyConfigHealthCheckArrayOutput

func (GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckArrayOutput) ToGetWaasPoliciesWaasPolicyPolicyConfigHealthCheckArrayOutputWithContext

func (o GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckArrayOutput) ToGetWaasPoliciesWaasPolicyPolicyConfigHealthCheckArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckArrayOutput

type GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckInput

type GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyPolicyConfigHealthCheckOutput() GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckOutput
	ToGetWaasPoliciesWaasPolicyPolicyConfigHealthCheckOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckOutput
}

GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckInput is an input type that accepts GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckArgs and GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckInput` via:

GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckArgs{...}

type GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckOutput

type GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckOutput) ElementType

func (GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckOutput) ExpectedResponseCodeGroups

The HTTP response codes that signify a healthy state. * **2XX:** Success response code group. * **3XX:** Redirection response code group. * **4XX:** Client errors response code group. * **5XX:** Server errors response code group.

func (GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckOutput) ExpectedResponseText

Health check will search for the given text in a case-sensitive manner within the response body and will fail if the text is not found.

func (GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckOutput) Headers

HTTP header fields to include in health check requests, expressed as `"name": "value"` properties. Because HTTP header field names are case-insensitive, any use of names that are case-insensitive equal to other names will be rejected. If Host is not specified, requests will include a Host header field with value matching the policy's protected domain. If User-Agent is not specified, requests will include a User-Agent header field with value "waf health checks".

func (GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckOutput) HealthyThreshold

Number of successful health checks after which the server is marked up.

func (GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckOutput) IntervalInSeconds

Time between health checks of an individual origin server, in seconds.

func (GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckOutput) IsEnabled

Enables or disables the JavaScript challenge Web Application Firewall feature.

func (GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckOutput) IsResponseTextCheckEnabled

Enables or disables additional check for predefined text in addition to response code.

func (GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckOutput) Method

Load balancing methods are algorithms used to efficiently distribute traffic among origin servers. * **[IP_HASH](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/IPHashLoadBalancingMethod):** All the incoming requests from the same client IP address should go to the same content origination server. IP_HASH load balancing method uses origin weights when choosing which origin should the hash be assigned to initially. * **[ROUND_ROBIN](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/RoundRobinLoadBalancingMethod):** Forwards requests sequentially to the available origin servers. The first request - to the first origin server, the second request - to the next origin server, and so on. After it sends a request to the last origin server, it starts again with the first origin server. When using weights on origins, Weighted Round Robin assigns more requests to origins with a greater weight. Over a period of time, origins will receive a number of requests in proportion to their weight. * **[STICKY_COOKIE](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/StickyCookieLoadBalancingMethod):** Adds a session cookie to the first response from the origin server and identifies the server that sent the response. The client's next request contains the cookie value, and nginx routes the request to the origin server that responded to the first request. STICKY_COOKIE load balancing method falls back to Round Robin for the first request.

func (GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckOutput) Path

Path to visit on your origins when performing the health check.

func (GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckOutput) TimeoutInSeconds

Response timeout represents wait time until request is considered failed, in seconds.

func (GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckOutput) ToGetWaasPoliciesWaasPolicyPolicyConfigHealthCheckOutput

func (GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckOutput) ToGetWaasPoliciesWaasPolicyPolicyConfigHealthCheckOutputWithContext

func (o GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckOutput) ToGetWaasPoliciesWaasPolicyPolicyConfigHealthCheckOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckOutput

func (GetWaasPoliciesWaasPolicyPolicyConfigHealthCheckOutput) UnhealthyThreshold

Number of failed health checks after which the server is marked down.

type GetWaasPoliciesWaasPolicyPolicyConfigInput

type GetWaasPoliciesWaasPolicyPolicyConfigInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyPolicyConfigOutput() GetWaasPoliciesWaasPolicyPolicyConfigOutput
	ToGetWaasPoliciesWaasPolicyPolicyConfigOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyPolicyConfigOutput
}

GetWaasPoliciesWaasPolicyPolicyConfigInput is an input type that accepts GetWaasPoliciesWaasPolicyPolicyConfigArgs and GetWaasPoliciesWaasPolicyPolicyConfigOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyPolicyConfigInput` via:

GetWaasPoliciesWaasPolicyPolicyConfigArgs{...}

type GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethod

type GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethod struct {
	// The domain for which the cookie is set, defaults to WAAS policy domain.
	Domain string `pulumi:"domain"`
	// The time for which a browser should keep the cookie in seconds. Empty value will cause the cookie to expire at the end of a browser session.
	ExpirationTimeInSeconds int `pulumi:"expirationTimeInSeconds"`
	// Load balancing methods are algorithms used to efficiently distribute traffic among origin servers.
	// * **[IP_HASH](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/IPHashLoadBalancingMethod):** All the incoming requests from the same client IP address should go to the same content origination server. IP_HASH load balancing method uses origin weights when choosing which origin should the hash be assigned to initially.
	// * **[ROUND_ROBIN](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/RoundRobinLoadBalancingMethod):** Forwards requests sequentially to the available origin servers. The first request - to the first origin server, the second request - to the next origin server, and so on. After it sends a request to the last origin server, it starts again with the first origin server. When using weights on origins, Weighted Round Robin assigns more requests to origins with a greater weight. Over a period of time, origins will receive a number of requests in proportion to their weight.
	// * **[STICKY_COOKIE](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/StickyCookieLoadBalancingMethod):** Adds a session cookie to the first response from the origin server and identifies the server that sent the response. The client's next request contains the cookie value, and nginx routes the request to the origin server that responded to the first request. STICKY_COOKIE load balancing method falls back to Round Robin for the first request.
	Method string `pulumi:"method"`
	// The unique name of the whitelist.
	Name string `pulumi:"name"`
}

type GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodArgs

type GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodArgs struct {
	// The domain for which the cookie is set, defaults to WAAS policy domain.
	Domain pulumi.StringInput `pulumi:"domain"`
	// The time for which a browser should keep the cookie in seconds. Empty value will cause the cookie to expire at the end of a browser session.
	ExpirationTimeInSeconds pulumi.IntInput `pulumi:"expirationTimeInSeconds"`
	// Load balancing methods are algorithms used to efficiently distribute traffic among origin servers.
	// * **[IP_HASH](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/IPHashLoadBalancingMethod):** All the incoming requests from the same client IP address should go to the same content origination server. IP_HASH load balancing method uses origin weights when choosing which origin should the hash be assigned to initially.
	// * **[ROUND_ROBIN](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/RoundRobinLoadBalancingMethod):** Forwards requests sequentially to the available origin servers. The first request - to the first origin server, the second request - to the next origin server, and so on. After it sends a request to the last origin server, it starts again with the first origin server. When using weights on origins, Weighted Round Robin assigns more requests to origins with a greater weight. Over a period of time, origins will receive a number of requests in proportion to their weight.
	// * **[STICKY_COOKIE](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/StickyCookieLoadBalancingMethod):** Adds a session cookie to the first response from the origin server and identifies the server that sent the response. The client's next request contains the cookie value, and nginx routes the request to the origin server that responded to the first request. STICKY_COOKIE load balancing method falls back to Round Robin for the first request.
	Method pulumi.StringInput `pulumi:"method"`
	// The unique name of the whitelist.
	Name pulumi.StringInput `pulumi:"name"`
}

func (GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodArgs) ElementType

func (GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodArgs) ToGetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodOutput

func (GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodArgs) ToGetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodOutputWithContext

func (i GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodArgs) ToGetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodOutput

type GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodArray

type GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodArray []GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodInput

func (GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodArray) ElementType

func (GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodArray) ToGetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodArrayOutput

func (GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodArray) ToGetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodArrayOutputWithContext

func (i GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodArray) ToGetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodArrayOutput

type GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodArrayInput

type GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodArrayInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodArrayOutput() GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodArrayOutput
	ToGetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodArrayOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodArrayOutput
}

GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodArrayInput is an input type that accepts GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodArray and GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodArrayOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodArrayInput` via:

GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodArray{ GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodArgs{...} }

type GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodArrayOutput

type GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodArrayOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodArrayOutput) ElementType

func (GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodArrayOutput) Index

func (GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodArrayOutput) ToGetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodArrayOutput

func (GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodArrayOutput) ToGetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodArrayOutputWithContext

func (o GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodArrayOutput) ToGetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodArrayOutput

type GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodInput

type GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodOutput() GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodOutput
	ToGetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodOutput
}

GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodInput is an input type that accepts GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodArgs and GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodInput` via:

GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodArgs{...}

type GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodOutput

type GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodOutput) Domain

The domain for which the cookie is set, defaults to WAAS policy domain.

func (GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodOutput) ElementType

func (GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodOutput) ExpirationTimeInSeconds

The time for which a browser should keep the cookie in seconds. Empty value will cause the cookie to expire at the end of a browser session.

func (GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodOutput) Method

Load balancing methods are algorithms used to efficiently distribute traffic among origin servers. * **[IP_HASH](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/IPHashLoadBalancingMethod):** All the incoming requests from the same client IP address should go to the same content origination server. IP_HASH load balancing method uses origin weights when choosing which origin should the hash be assigned to initially. * **[ROUND_ROBIN](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/RoundRobinLoadBalancingMethod):** Forwards requests sequentially to the available origin servers. The first request - to the first origin server, the second request - to the next origin server, and so on. After it sends a request to the last origin server, it starts again with the first origin server. When using weights on origins, Weighted Round Robin assigns more requests to origins with a greater weight. Over a period of time, origins will receive a number of requests in proportion to their weight. * **[STICKY_COOKIE](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/StickyCookieLoadBalancingMethod):** Adds a session cookie to the first response from the origin server and identifies the server that sent the response. The client's next request contains the cookie value, and nginx routes the request to the origin server that responded to the first request. STICKY_COOKIE load balancing method falls back to Round Robin for the first request.

func (GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodOutput) Name

The unique name of the whitelist.

func (GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodOutput) ToGetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodOutput

func (GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodOutput) ToGetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodOutputWithContext

func (o GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodOutput) ToGetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyPolicyConfigLoadBalancingMethodOutput

type GetWaasPoliciesWaasPolicyPolicyConfigOutput

type GetWaasPoliciesWaasPolicyPolicyConfigOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyPolicyConfigOutput) CertificateId

The OCID of the SSL certificate to use if HTTPS is supported.

func (GetWaasPoliciesWaasPolicyPolicyConfigOutput) CipherGroup

The set cipher group for the configured TLS protocol. This sets the configuration for the TLS connections between clients and edge nodes only. * **DEFAULT:** Cipher group supports TLS 1.0, TLS 1.1, TLS 1.2, TLS 1.3 protocols. It has the following ciphers enabled: `ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:!DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA`

func (GetWaasPoliciesWaasPolicyPolicyConfigOutput) ClientAddressHeader

Specifies an HTTP header name which is treated as the connecting client's IP address. Applicable only if `isBehindCdn` is enabled.

func (GetWaasPoliciesWaasPolicyPolicyConfigOutput) ElementType

func (GetWaasPoliciesWaasPolicyPolicyConfigOutput) HealthChecks

Health checks monitor the status of your origin servers and only route traffic to the origins that pass the health check. If the health check fails, origin is automatically removed from the load balancing. There is roughly one health check per EDGE POP per period. Any checks that pass will be reported as "healthy".

func (GetWaasPoliciesWaasPolicyPolicyConfigOutput) IsBehindCdn

Enabling `isBehindCdn` allows for the collection of IP addresses from client requests if the WAF is connected to a CDN.

func (GetWaasPoliciesWaasPolicyPolicyConfigOutput) IsCacheControlRespected

Enable or disable automatic content caching based on the response `cache-control` header. This feature enables the origin to act as a proxy cache. Caching is usually defined using `cache-control` header. For example `cache-control: max-age=120` means that the returned resource is valid for 120 seconds. Caching rules will overwrite this setting.

func (GetWaasPoliciesWaasPolicyPolicyConfigOutput) IsHttpsEnabled

Enable or disable HTTPS support. If true, a `certificateId` is required. If unspecified, defaults to `false`.

func (GetWaasPoliciesWaasPolicyPolicyConfigOutput) IsHttpsForced

Force HTTP to HTTPS redirection. If unspecified, defaults to `false`.

func (GetWaasPoliciesWaasPolicyPolicyConfigOutput) IsOriginCompressionEnabled

func (o GetWaasPoliciesWaasPolicyPolicyConfigOutput) IsOriginCompressionEnabled() pulumi.BoolOutput

Enable or disable GZIP compression of origin responses. If enabled, the header `Accept-Encoding: gzip` is sent to origin, otherwise, the empty `Accept-Encoding:` header is used.

func (GetWaasPoliciesWaasPolicyPolicyConfigOutput) IsResponseBufferingEnabled

func (o GetWaasPoliciesWaasPolicyPolicyConfigOutput) IsResponseBufferingEnabled() pulumi.BoolOutput

Enable or disable buffering of responses from the origin. Buffering improves overall stability in case of network issues, but slightly increases Time To First Byte.

func (GetWaasPoliciesWaasPolicyPolicyConfigOutput) IsSniEnabled

SNI stands for Server Name Indication and is an extension of the TLS protocol. It indicates which hostname is being contacted by the browser at the beginning of the 'handshake'-process. This allows a server to connect multiple SSL Certificates to one IP address and port.

func (GetWaasPoliciesWaasPolicyPolicyConfigOutput) LoadBalancingMethods

An object that represents a load balancing method and its properties.

func (GetWaasPoliciesWaasPolicyPolicyConfigOutput) TlsProtocols

A list of allowed TLS protocols. Only applicable when HTTPS support is enabled. The TLS protocol is negotiated while the request is connecting and the most recent protocol supported by both the edge node and client browser will be selected. If no such version exists, the connection will be aborted. * **TLS_V1:** corresponds to TLS 1.0 specification. * **TLS_V1_1:** corresponds to TLS 1.1 specification. * **TLS_V1_2:** corresponds to TLS 1.2 specification. * **TLS_V1_3:** corresponds to TLS 1.3 specification.

func (GetWaasPoliciesWaasPolicyPolicyConfigOutput) ToGetWaasPoliciesWaasPolicyPolicyConfigOutput

func (o GetWaasPoliciesWaasPolicyPolicyConfigOutput) ToGetWaasPoliciesWaasPolicyPolicyConfigOutput() GetWaasPoliciesWaasPolicyPolicyConfigOutput

func (GetWaasPoliciesWaasPolicyPolicyConfigOutput) ToGetWaasPoliciesWaasPolicyPolicyConfigOutputWithContext

func (o GetWaasPoliciesWaasPolicyPolicyConfigOutput) ToGetWaasPoliciesWaasPolicyPolicyConfigOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyPolicyConfigOutput

func (GetWaasPoliciesWaasPolicyPolicyConfigOutput) WebsocketPathPrefixes

ModSecurity is not capable to inspect WebSockets. Therefore paths specified here have WAF disabled if Connection request header from the client has the value Upgrade (case insensitive matching) and Upgrade request header has the value websocket (case insensitive matching). Paths matches if the concatenation of request URL path and query starts with the contents of the one of `websocketPathPrefixes` array value. In All other cases challenges, like JSC, HIC and etc., remain active.

type GetWaasPoliciesWaasPolicyWafConfig

type GetWaasPoliciesWaasPolicyWafConfig struct {
	// The access rules applied to the Web Application Firewall. Used for defining custom access policies with the combination of `ALLOW`, `DETECT`, and `BLOCK` rules, based on different criteria.
	AccessRules []GetWaasPoliciesWaasPolicyWafConfigAccessRule `pulumi:"accessRules"`
	// The IP address rate limiting settings used to limit the number of requests from an address.
	AddressRateLimitings []GetWaasPoliciesWaasPolicyWafConfigAddressRateLimiting `pulumi:"addressRateLimitings"`
	// A list of caching rules applied to the web application.
	CachingRules []GetWaasPoliciesWaasPolicyWafConfigCachingRule `pulumi:"cachingRules"`
	// A list of CAPTCHA challenge settings. These are used to challenge requests with a CAPTCHA to block bots.
	Captchas []GetWaasPoliciesWaasPolicyWafConfigCaptcha `pulumi:"captchas"`
	// A list of the custom protection rule OCIDs and their actions.
	CustomProtectionRules []GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRule `pulumi:"customProtectionRules"`
	// The device fingerprint challenge settings. Used to detect unique devices based on the device fingerprint information collected in order to block bots.
	DeviceFingerprintChallenges []GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallenge `pulumi:"deviceFingerprintChallenges"`
	// The human interaction challenge settings. Used to look for natural human interactions such as mouse movements, time on site, and page scrolling to identify bots.
	HumanInteractionChallenges []GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallenge `pulumi:"humanInteractionChallenges"`
	// The JavaScript challenge settings. Used to challenge requests with a JavaScript challenge and take the action if a browser has no JavaScript support in order to block bots.
	JsChallenges []GetWaasPoliciesWaasPolicyWafConfigJsChallenge `pulumi:"jsChallenges"`
	// The key in the map of origins referencing the origin used for the Web Application Firewall. The origin must already be included in `Origins`. Required when creating the `WafConfig` resource, but not on update.
	Origin string `pulumi:"origin"`
	// The map of origin groups and their keys used to associate origins to the `wafConfig`. Origin groups allow you to apply weights to groups of origins for load balancing purposes. Origins with higher weights will receive larger proportions of client requests. To add additional origins to your WAAS policy, update the `origins` field of a `UpdateWaasPolicy` request.
	OriginGroups []string `pulumi:"originGroups"`
	// The settings to apply to protection rules.
	ProtectionSettings []GetWaasPoliciesWaasPolicyWafConfigProtectionSetting `pulumi:"protectionSettings"`
	// A list of IP addresses that bypass the Web Application Firewall.
	Whitelists []GetWaasPoliciesWaasPolicyWafConfigWhitelist `pulumi:"whitelists"`
}

type GetWaasPoliciesWaasPolicyWafConfigAccessRule

type GetWaasPoliciesWaasPolicyWafConfigAccessRule struct {
	// The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.
	Action string `pulumi:"action"`
	// If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.
	BlockAction string `pulumi:"blockAction"`
	// The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.
	BlockErrorPageCode string `pulumi:"blockErrorPageCode"`
	// The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`
	BlockErrorPageDescription string `pulumi:"blockErrorPageDescription"`
	// The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'
	BlockErrorPageMessage string `pulumi:"blockErrorPageMessage"`
	// The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.
	BlockResponseCode int `pulumi:"blockResponseCode"`
	// The list of challenges to bypass when `action` is set to `BYPASS`. If unspecified or empty, all challenges are bypassed.
	// * **JS_CHALLENGE:** Bypasses JavaScript Challenge.
	// * **DEVICE_FINGERPRINT_CHALLENGE:** Bypasses Device Fingerprint Challenge.
	// * **HUMAN_INTERACTION_CHALLENGE:** Bypasses Human Interaction Challenge.
	// * **CAPTCHA:** Bypasses CAPTCHA Challenge.
	BypassChallenges []string `pulumi:"bypassChallenges"`
	// The text to show in the footer when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, default to `Enter the letters and numbers as they are shown in image above`.
	CaptchaFooter string `pulumi:"captchaFooter"`
	// The text to show in the header when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `We have detected an increased number of attempts to access this webapp. To help us keep this webapp secure, please let us know that you are not a robot by entering the text from captcha below.`
	CaptchaHeader string `pulumi:"captchaHeader"`
	// The text to show on the label of the CAPTCHA challenge submit button when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Yes, I am human`.
	CaptchaSubmitLabel string `pulumi:"captchaSubmitLabel"`
	// The title used when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Are you human?`
	CaptchaTitle string `pulumi:"captchaTitle"`
	// When defined, the JavaScript Challenge would be applied only for the requests that matched all the listed conditions.
	Criterias []GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteria `pulumi:"criterias"`
	// The unique name of the whitelist.
	Name string `pulumi:"name"`
	// The response status code to return when `action` is set to `REDIRECT`.
	// * **MOVED_PERMANENTLY:** Used for designating the permanent movement of a page (numerical code - 301).
	// * **FOUND:** Used for designating the temporary movement of a page (numerical code - 302).
	RedirectResponseCode string `pulumi:"redirectResponseCode"`
	// The target to which the request should be redirected, represented as a URI reference. Required when `action` is `REDIRECT`.
	RedirectUrl string `pulumi:"redirectUrl"`
	// An object that represents an action to apply to an HTTP response headers if all rule criteria will be matched regardless of `action` value.
	ResponseHeaderManipulations []GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulation `pulumi:"responseHeaderManipulations"`
}

type GetWaasPoliciesWaasPolicyWafConfigAccessRuleArgs

type GetWaasPoliciesWaasPolicyWafConfigAccessRuleArgs struct {
	// The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.
	Action pulumi.StringInput `pulumi:"action"`
	// If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.
	BlockAction pulumi.StringInput `pulumi:"blockAction"`
	// The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.
	BlockErrorPageCode pulumi.StringInput `pulumi:"blockErrorPageCode"`
	// The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`
	BlockErrorPageDescription pulumi.StringInput `pulumi:"blockErrorPageDescription"`
	// The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'
	BlockErrorPageMessage pulumi.StringInput `pulumi:"blockErrorPageMessage"`
	// The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.
	BlockResponseCode pulumi.IntInput `pulumi:"blockResponseCode"`
	// The list of challenges to bypass when `action` is set to `BYPASS`. If unspecified or empty, all challenges are bypassed.
	// * **JS_CHALLENGE:** Bypasses JavaScript Challenge.
	// * **DEVICE_FINGERPRINT_CHALLENGE:** Bypasses Device Fingerprint Challenge.
	// * **HUMAN_INTERACTION_CHALLENGE:** Bypasses Human Interaction Challenge.
	// * **CAPTCHA:** Bypasses CAPTCHA Challenge.
	BypassChallenges pulumi.StringArrayInput `pulumi:"bypassChallenges"`
	// The text to show in the footer when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, default to `Enter the letters and numbers as they are shown in image above`.
	CaptchaFooter pulumi.StringInput `pulumi:"captchaFooter"`
	// The text to show in the header when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `We have detected an increased number of attempts to access this webapp. To help us keep this webapp secure, please let us know that you are not a robot by entering the text from captcha below.`
	CaptchaHeader pulumi.StringInput `pulumi:"captchaHeader"`
	// The text to show on the label of the CAPTCHA challenge submit button when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Yes, I am human`.
	CaptchaSubmitLabel pulumi.StringInput `pulumi:"captchaSubmitLabel"`
	// The title used when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Are you human?`
	CaptchaTitle pulumi.StringInput `pulumi:"captchaTitle"`
	// When defined, the JavaScript Challenge would be applied only for the requests that matched all the listed conditions.
	Criterias GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaArrayInput `pulumi:"criterias"`
	// The unique name of the whitelist.
	Name pulumi.StringInput `pulumi:"name"`
	// The response status code to return when `action` is set to `REDIRECT`.
	// * **MOVED_PERMANENTLY:** Used for designating the permanent movement of a page (numerical code - 301).
	// * **FOUND:** Used for designating the temporary movement of a page (numerical code - 302).
	RedirectResponseCode pulumi.StringInput `pulumi:"redirectResponseCode"`
	// The target to which the request should be redirected, represented as a URI reference. Required when `action` is `REDIRECT`.
	RedirectUrl pulumi.StringInput `pulumi:"redirectUrl"`
	// An object that represents an action to apply to an HTTP response headers if all rule criteria will be matched regardless of `action` value.
	ResponseHeaderManipulations GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArrayInput `pulumi:"responseHeaderManipulations"`
}

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleArgs) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleArgs) ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleOutput

func (i GetWaasPoliciesWaasPolicyWafConfigAccessRuleArgs) ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleOutput() GetWaasPoliciesWaasPolicyWafConfigAccessRuleOutput

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleArgs) ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleOutputWithContext

func (i GetWaasPoliciesWaasPolicyWafConfigAccessRuleArgs) ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigAccessRuleOutput

type GetWaasPoliciesWaasPolicyWafConfigAccessRuleArray

type GetWaasPoliciesWaasPolicyWafConfigAccessRuleArray []GetWaasPoliciesWaasPolicyWafConfigAccessRuleInput

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleArray) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleArray) ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleArrayOutput

func (i GetWaasPoliciesWaasPolicyWafConfigAccessRuleArray) ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleArrayOutput() GetWaasPoliciesWaasPolicyWafConfigAccessRuleArrayOutput

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleArray) ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleArrayOutputWithContext

func (i GetWaasPoliciesWaasPolicyWafConfigAccessRuleArray) ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigAccessRuleArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigAccessRuleArrayInput

type GetWaasPoliciesWaasPolicyWafConfigAccessRuleArrayInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleArrayOutput() GetWaasPoliciesWaasPolicyWafConfigAccessRuleArrayOutput
	ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleArrayOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyWafConfigAccessRuleArrayOutput
}

GetWaasPoliciesWaasPolicyWafConfigAccessRuleArrayInput is an input type that accepts GetWaasPoliciesWaasPolicyWafConfigAccessRuleArray and GetWaasPoliciesWaasPolicyWafConfigAccessRuleArrayOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyWafConfigAccessRuleArrayInput` via:

GetWaasPoliciesWaasPolicyWafConfigAccessRuleArray{ GetWaasPoliciesWaasPolicyWafConfigAccessRuleArgs{...} }

type GetWaasPoliciesWaasPolicyWafConfigAccessRuleArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigAccessRuleArrayOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleArrayOutput) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleArrayOutput) Index

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleArrayOutput

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleArrayOutputWithContext

func (o GetWaasPoliciesWaasPolicyWafConfigAccessRuleArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigAccessRuleArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteria

type GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteria struct {
	// The criteria the access rule and JavaScript Challenge uses to determine if action should be taken on a request.
	// * **URL_IS:** Matches if the concatenation of request URL path and query is identical to the contents of the `value` field. URL must start with a `/`.
	// * **URL_IS_NOT:** Matches if the concatenation of request URL path and query is not identical to the contents of the `value` field. URL must start with a `/`.
	// * **URL_STARTS_WITH:** Matches if the concatenation of request URL path and query starts with the contents of the `value` field. URL must start with a `/`.
	// * **URL_PART_ENDS_WITH:** Matches if the concatenation of request URL path and query ends with the contents of the `value` field.
	// * **URL_PART_CONTAINS:** Matches if the concatenation of request URL path and query contains the contents of the `value` field.
	// * **URL_REGEX:** Matches if the concatenation of request URL path and query is described by the regular expression in the value field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org).
	// * **URL_DOES_NOT_MATCH_REGEX:** Matches if the concatenation of request URL path and query is not described by the regular expression in the `value` field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org).
	// * **URL_DOES_NOT_START_WITH:** Matches if the concatenation of request URL path and query does not start with the contents of the `value` field.
	// * **URL_PART_DOES_NOT_CONTAIN:** Matches if the concatenation of request URL path and query does not contain the contents of the `value` field.
	// * **URL_PART_DOES_NOT_END_WITH:** Matches if the concatenation of request URL path and query does not end with the contents of the `value` field.
	// * **IP_IS:** Matches if the request originates from one of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30"
	// * **IP_IS_NOT:** Matches if the request does not originate from any of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30"
	// * **IP_IN_LIST:** Matches if the request originates from one of the IP addresses contained in the referenced address list. The `value` in this case is OCID of the address list.
	// * **IP_NOT_IN_LIST:** Matches if the request does not originate from any IP address contained in the referenced address list. The `value` field in this case is OCID of the address list.
	// * **HTTP_HEADER_CONTAINS:** The HTTP_HEADER_CONTAINS criteria is defined using a compound value separated by a colon: a header field name and a header field value. `host:test.example.com` is an example of a criteria value where `host` is the header field name and `test.example.com` is the header field value. A request matches when the header field name is a case insensitive match and the header field value is a case insensitive, substring match. *Example:* With a criteria value of `host:test.example.com`, where `host` is the name of the field and `test.example.com` is the value of the host field, a request with the header values, `Host: www.test.example.com` will match, where as a request with header values of `host: www.example.com` or `host: test.sub.example.com` will not match.
	// * **HTTP_METHOD_IS:** Matches if the request method is identical to one of the values listed in field. The `value` in this case is string with one or multiple HTTP methods separated by new line symbol \n The list of available methods: `GET`, `HEAD`, `POST`, `PUT`, `DELETE`, `CONNECT`, `OPTIONS`, `TRACE`, `PATCH`
	Condition string `pulumi:"condition"`
	// When enabled, the condition will be matched with case-sensitive rules.
	IsCaseSensitive bool `pulumi:"isCaseSensitive"`
	// The value of the header.
	Value string `pulumi:"value"`
}

type GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaArgs

type GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaArgs struct {
	// The criteria the access rule and JavaScript Challenge uses to determine if action should be taken on a request.
	// * **URL_IS:** Matches if the concatenation of request URL path and query is identical to the contents of the `value` field. URL must start with a `/`.
	// * **URL_IS_NOT:** Matches if the concatenation of request URL path and query is not identical to the contents of the `value` field. URL must start with a `/`.
	// * **URL_STARTS_WITH:** Matches if the concatenation of request URL path and query starts with the contents of the `value` field. URL must start with a `/`.
	// * **URL_PART_ENDS_WITH:** Matches if the concatenation of request URL path and query ends with the contents of the `value` field.
	// * **URL_PART_CONTAINS:** Matches if the concatenation of request URL path and query contains the contents of the `value` field.
	// * **URL_REGEX:** Matches if the concatenation of request URL path and query is described by the regular expression in the value field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org).
	// * **URL_DOES_NOT_MATCH_REGEX:** Matches if the concatenation of request URL path and query is not described by the regular expression in the `value` field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org).
	// * **URL_DOES_NOT_START_WITH:** Matches if the concatenation of request URL path and query does not start with the contents of the `value` field.
	// * **URL_PART_DOES_NOT_CONTAIN:** Matches if the concatenation of request URL path and query does not contain the contents of the `value` field.
	// * **URL_PART_DOES_NOT_END_WITH:** Matches if the concatenation of request URL path and query does not end with the contents of the `value` field.
	// * **IP_IS:** Matches if the request originates from one of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30"
	// * **IP_IS_NOT:** Matches if the request does not originate from any of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30"
	// * **IP_IN_LIST:** Matches if the request originates from one of the IP addresses contained in the referenced address list. The `value` in this case is OCID of the address list.
	// * **IP_NOT_IN_LIST:** Matches if the request does not originate from any IP address contained in the referenced address list. The `value` field in this case is OCID of the address list.
	// * **HTTP_HEADER_CONTAINS:** The HTTP_HEADER_CONTAINS criteria is defined using a compound value separated by a colon: a header field name and a header field value. `host:test.example.com` is an example of a criteria value where `host` is the header field name and `test.example.com` is the header field value. A request matches when the header field name is a case insensitive match and the header field value is a case insensitive, substring match. *Example:* With a criteria value of `host:test.example.com`, where `host` is the name of the field and `test.example.com` is the value of the host field, a request with the header values, `Host: www.test.example.com` will match, where as a request with header values of `host: www.example.com` or `host: test.sub.example.com` will not match.
	// * **HTTP_METHOD_IS:** Matches if the request method is identical to one of the values listed in field. The `value` in this case is string with one or multiple HTTP methods separated by new line symbol \n The list of available methods: `GET`, `HEAD`, `POST`, `PUT`, `DELETE`, `CONNECT`, `OPTIONS`, `TRACE`, `PATCH`
	Condition pulumi.StringInput `pulumi:"condition"`
	// When enabled, the condition will be matched with case-sensitive rules.
	IsCaseSensitive pulumi.BoolInput `pulumi:"isCaseSensitive"`
	// The value of the header.
	Value pulumi.StringInput `pulumi:"value"`
}

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaArgs) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaArgs) ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaOutput

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaArgs) ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaOutputWithContext

func (i GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaArgs) ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaOutput

type GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaArray

type GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaArray []GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaInput

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaArray) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaArray) ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaArrayOutput

func (i GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaArray) ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaArrayOutput() GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaArrayOutput

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaArray) ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaArrayOutputWithContext

func (i GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaArray) ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaArrayInput

type GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaArrayInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaArrayOutput() GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaArrayOutput
	ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaArrayOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaArrayOutput
}

GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaArrayInput is an input type that accepts GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaArray and GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaArrayOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaArrayInput` via:

GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaArray{ GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaArgs{...} }

type GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaArrayOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaArrayOutput) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaArrayOutput) Index

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaArrayOutput

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaArrayOutputWithContext

func (o GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaInput

type GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaOutput() GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaOutput
	ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaOutput
}

GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaInput is an input type that accepts GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaArgs and GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaInput` via:

GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaArgs{...}

type GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaOutput

type GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaOutput) Condition

The criteria the access rule and JavaScript Challenge uses to determine if action should be taken on a request. * **URL_IS:** Matches if the concatenation of request URL path and query is identical to the contents of the `value` field. URL must start with a `/`. * **URL_IS_NOT:** Matches if the concatenation of request URL path and query is not identical to the contents of the `value` field. URL must start with a `/`. * **URL_STARTS_WITH:** Matches if the concatenation of request URL path and query starts with the contents of the `value` field. URL must start with a `/`. * **URL_PART_ENDS_WITH:** Matches if the concatenation of request URL path and query ends with the contents of the `value` field. * **URL_PART_CONTAINS:** Matches if the concatenation of request URL path and query contains the contents of the `value` field. * **URL_REGEX:** Matches if the concatenation of request URL path and query is described by the regular expression in the value field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org). * **URL_DOES_NOT_MATCH_REGEX:** Matches if the concatenation of request URL path and query is not described by the regular expression in the `value` field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org). * **URL_DOES_NOT_START_WITH:** Matches if the concatenation of request URL path and query does not start with the contents of the `value` field. * **URL_PART_DOES_NOT_CONTAIN:** Matches if the concatenation of request URL path and query does not contain the contents of the `value` field. * **URL_PART_DOES_NOT_END_WITH:** Matches if the concatenation of request URL path and query does not end with the contents of the `value` field. * **IP_IS:** Matches if the request originates from one of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30" * **IP_IS_NOT:** Matches if the request does not originate from any of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30" * **IP_IN_LIST:** Matches if the request originates from one of the IP addresses contained in the referenced address list. The `value` in this case is OCID of the address list. * **IP_NOT_IN_LIST:** Matches if the request does not originate from any IP address contained in the referenced address list. The `value` field in this case is OCID of the address list. * **HTTP_HEADER_CONTAINS:** The HTTP_HEADER_CONTAINS criteria is defined using a compound value separated by a colon: a header field name and a header field value. `host:test.example.com` is an example of a criteria value where `host` is the header field name and `test.example.com` is the header field value. A request matches when the header field name is a case insensitive match and the header field value is a case insensitive, substring match. *Example:* With a criteria value of `host:test.example.com`, where `host` is the name of the field and `test.example.com` is the value of the host field, a request with the header values, `Host: www.test.example.com` will match, where as a request with header values of `host: www.example.com` or `host: test.sub.example.com` will not match. * **HTTP_METHOD_IS:** Matches if the request method is identical to one of the values listed in field. The `value` in this case is string with one or multiple HTTP methods separated by new line symbol \n The list of available methods: `GET`, `HEAD`, `POST`, `PUT`, `DELETE`, `CONNECT`, `OPTIONS`, `TRACE`, `PATCH`

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaOutput) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaOutput) IsCaseSensitive

When enabled, the condition will be matched with case-sensitive rules.

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaOutput) ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaOutput

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaOutput) ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaOutputWithContext

func (o GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaOutput) ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaOutput

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleCriteriaOutput) Value

The value of the header.

type GetWaasPoliciesWaasPolicyWafConfigAccessRuleInput

type GetWaasPoliciesWaasPolicyWafConfigAccessRuleInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleOutput() GetWaasPoliciesWaasPolicyWafConfigAccessRuleOutput
	ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyWafConfigAccessRuleOutput
}

GetWaasPoliciesWaasPolicyWafConfigAccessRuleInput is an input type that accepts GetWaasPoliciesWaasPolicyWafConfigAccessRuleArgs and GetWaasPoliciesWaasPolicyWafConfigAccessRuleOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyWafConfigAccessRuleInput` via:

GetWaasPoliciesWaasPolicyWafConfigAccessRuleArgs{...}

type GetWaasPoliciesWaasPolicyWafConfigAccessRuleOutput

type GetWaasPoliciesWaasPolicyWafConfigAccessRuleOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleOutput) Action

The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleOutput) BlockAction

If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleOutput) BlockErrorPageCode

The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleOutput) BlockErrorPageDescription

The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleOutput) BlockErrorPageMessage

The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleOutput) BlockResponseCode

The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleOutput) BypassChallenges

The list of challenges to bypass when `action` is set to `BYPASS`. If unspecified or empty, all challenges are bypassed. * **JS_CHALLENGE:** Bypasses JavaScript Challenge. * **DEVICE_FINGERPRINT_CHALLENGE:** Bypasses Device Fingerprint Challenge. * **HUMAN_INTERACTION_CHALLENGE:** Bypasses Human Interaction Challenge. * **CAPTCHA:** Bypasses CAPTCHA Challenge.

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleOutput) CaptchaFooter

The text to show in the footer when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, default to `Enter the letters and numbers as they are shown in image above`.

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleOutput) CaptchaHeader

The text to show in the header when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `We have detected an increased number of attempts to access this webapp. To help us keep this webapp secure, please let us know that you are not a robot by entering the text from captcha below.`

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleOutput) CaptchaSubmitLabel

The text to show on the label of the CAPTCHA challenge submit button when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Yes, I am human`.

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleOutput) CaptchaTitle

The title used when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Are you human?`

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleOutput) Criterias

When defined, the JavaScript Challenge would be applied only for the requests that matched all the listed conditions.

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleOutput) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleOutput) Name

The unique name of the whitelist.

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleOutput) RedirectResponseCode

The response status code to return when `action` is set to `REDIRECT`. * **MOVED_PERMANENTLY:** Used for designating the permanent movement of a page (numerical code - 301). * **FOUND:** Used for designating the temporary movement of a page (numerical code - 302).

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleOutput) RedirectUrl

The target to which the request should be redirected, represented as a URI reference. Required when `action` is `REDIRECT`.

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleOutput) ResponseHeaderManipulations

An object that represents an action to apply to an HTTP response headers if all rule criteria will be matched regardless of `action` value.

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleOutput) ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleOutput

func (o GetWaasPoliciesWaasPolicyWafConfigAccessRuleOutput) ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleOutput() GetWaasPoliciesWaasPolicyWafConfigAccessRuleOutput

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleOutput) ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleOutputWithContext

func (o GetWaasPoliciesWaasPolicyWafConfigAccessRuleOutput) ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigAccessRuleOutput

type GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulation

type GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulation struct {
	// The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.
	Action string `pulumi:"action"`
	// A header field name that conforms to RFC 7230.  Example: `exampleHeaderName`
	Header string `pulumi:"header"`
	// The value of the header.
	Value string `pulumi:"value"`
}

type GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArgs

type GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArgs struct {
	// The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.
	Action pulumi.StringInput `pulumi:"action"`
	// A header field name that conforms to RFC 7230.  Example: `exampleHeaderName`
	Header pulumi.StringInput `pulumi:"header"`
	// The value of the header.
	Value pulumi.StringInput `pulumi:"value"`
}

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArgs) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArgs) ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationOutput

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArgs) ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationOutputWithContext

type GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArray

type GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArray []GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationInput

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArray) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArray) ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutput

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArray) ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutputWithContext

func (i GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArray) ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArrayInput

type GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArrayInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutput() GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutput
	ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutput
}

GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArrayInput is an input type that accepts GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArray and GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArrayInput` via:

GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArray{ GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArgs{...} }

type GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutput) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutput

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutputWithContext

type GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationInput

type GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationOutput() GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationOutput
	ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationOutput
}

GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationInput is an input type that accepts GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArgs and GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationInput` via:

GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArgs{...}

type GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationOutput

type GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationOutput) Action

The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationOutput) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationOutput) Header

A header field name that conforms to RFC 7230. Example: `exampleHeaderName`

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationOutput) ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationOutput

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationOutput) ToGetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationOutputWithContext

func (GetWaasPoliciesWaasPolicyWafConfigAccessRuleResponseHeaderManipulationOutput) Value

The value of the header.

type GetWaasPoliciesWaasPolicyWafConfigAddressRateLimiting

type GetWaasPoliciesWaasPolicyWafConfigAddressRateLimiting struct {
	// The number of allowed requests per second from one IP address. If unspecified, defaults to `1`.
	AllowedRatePerAddress int `pulumi:"allowedRatePerAddress"`
	// The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.
	BlockResponseCode int `pulumi:"blockResponseCode"`
	// Enables or disables the JavaScript challenge Web Application Firewall feature.
	IsEnabled bool `pulumi:"isEnabled"`
	// The maximum number of requests allowed to be queued before subsequent requests are dropped. If unspecified, defaults to `10`.
	MaxDelayedCountPerAddress int `pulumi:"maxDelayedCountPerAddress"`
}

type GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingArgs

type GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingArgs struct {
	// The number of allowed requests per second from one IP address. If unspecified, defaults to `1`.
	AllowedRatePerAddress pulumi.IntInput `pulumi:"allowedRatePerAddress"`
	// The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.
	BlockResponseCode pulumi.IntInput `pulumi:"blockResponseCode"`
	// Enables or disables the JavaScript challenge Web Application Firewall feature.
	IsEnabled pulumi.BoolInput `pulumi:"isEnabled"`
	// The maximum number of requests allowed to be queued before subsequent requests are dropped. If unspecified, defaults to `10`.
	MaxDelayedCountPerAddress pulumi.IntInput `pulumi:"maxDelayedCountPerAddress"`
}

func (GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingArgs) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingArgs) ToGetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingOutput

func (GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingArgs) ToGetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingOutputWithContext

func (i GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingArgs) ToGetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingOutput

type GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingArray

type GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingArray []GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingInput

func (GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingArray) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingArray) ToGetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingArrayOutput

func (GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingArray) ToGetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingArrayOutputWithContext

func (i GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingArray) ToGetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingArrayInput

type GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingArrayInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingArrayOutput() GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingArrayOutput
	ToGetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingArrayOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingArrayOutput
}

GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingArrayInput is an input type that accepts GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingArray and GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingArrayOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingArrayInput` via:

GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingArray{ GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingArgs{...} }

type GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingArrayOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingArrayOutput) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingArrayOutput) Index

func (GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingArrayOutput

func (GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingArrayOutputWithContext

func (o GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingInput

type GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingOutput() GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingOutput
	ToGetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingOutput
}

GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingInput is an input type that accepts GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingArgs and GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingInput` via:

GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingArgs{...}

type GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingOutput

type GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingOutput) AllowedRatePerAddress

The number of allowed requests per second from one IP address. If unspecified, defaults to `1`.

func (GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingOutput) BlockResponseCode

The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.

func (GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingOutput) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingOutput) IsEnabled

Enables or disables the JavaScript challenge Web Application Firewall feature.

func (GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingOutput) MaxDelayedCountPerAddress

The maximum number of requests allowed to be queued before subsequent requests are dropped. If unspecified, defaults to `10`.

func (GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingOutput) ToGetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingOutput

func (GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingOutput) ToGetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingOutputWithContext

func (o GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingOutput) ToGetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingOutput

type GetWaasPoliciesWaasPolicyWafConfigArgs

type GetWaasPoliciesWaasPolicyWafConfigArgs struct {
	// The access rules applied to the Web Application Firewall. Used for defining custom access policies with the combination of `ALLOW`, `DETECT`, and `BLOCK` rules, based on different criteria.
	AccessRules GetWaasPoliciesWaasPolicyWafConfigAccessRuleArrayInput `pulumi:"accessRules"`
	// The IP address rate limiting settings used to limit the number of requests from an address.
	AddressRateLimitings GetWaasPoliciesWaasPolicyWafConfigAddressRateLimitingArrayInput `pulumi:"addressRateLimitings"`
	// A list of caching rules applied to the web application.
	CachingRules GetWaasPoliciesWaasPolicyWafConfigCachingRuleArrayInput `pulumi:"cachingRules"`
	// A list of CAPTCHA challenge settings. These are used to challenge requests with a CAPTCHA to block bots.
	Captchas GetWaasPoliciesWaasPolicyWafConfigCaptchaArrayInput `pulumi:"captchas"`
	// A list of the custom protection rule OCIDs and their actions.
	CustomProtectionRules GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleArrayInput `pulumi:"customProtectionRules"`
	// The device fingerprint challenge settings. Used to detect unique devices based on the device fingerprint information collected in order to block bots.
	DeviceFingerprintChallenges GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeArrayInput `pulumi:"deviceFingerprintChallenges"`
	// The human interaction challenge settings. Used to look for natural human interactions such as mouse movements, time on site, and page scrolling to identify bots.
	HumanInteractionChallenges GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeArrayInput `pulumi:"humanInteractionChallenges"`
	// The JavaScript challenge settings. Used to challenge requests with a JavaScript challenge and take the action if a browser has no JavaScript support in order to block bots.
	JsChallenges GetWaasPoliciesWaasPolicyWafConfigJsChallengeArrayInput `pulumi:"jsChallenges"`
	// The key in the map of origins referencing the origin used for the Web Application Firewall. The origin must already be included in `Origins`. Required when creating the `WafConfig` resource, but not on update.
	Origin pulumi.StringInput `pulumi:"origin"`
	// The map of origin groups and their keys used to associate origins to the `wafConfig`. Origin groups allow you to apply weights to groups of origins for load balancing purposes. Origins with higher weights will receive larger proportions of client requests. To add additional origins to your WAAS policy, update the `origins` field of a `UpdateWaasPolicy` request.
	OriginGroups pulumi.StringArrayInput `pulumi:"originGroups"`
	// The settings to apply to protection rules.
	ProtectionSettings GetWaasPoliciesWaasPolicyWafConfigProtectionSettingArrayInput `pulumi:"protectionSettings"`
	// A list of IP addresses that bypass the Web Application Firewall.
	Whitelists GetWaasPoliciesWaasPolicyWafConfigWhitelistArrayInput `pulumi:"whitelists"`
}

func (GetWaasPoliciesWaasPolicyWafConfigArgs) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigArgs) ToGetWaasPoliciesWaasPolicyWafConfigOutput

func (i GetWaasPoliciesWaasPolicyWafConfigArgs) ToGetWaasPoliciesWaasPolicyWafConfigOutput() GetWaasPoliciesWaasPolicyWafConfigOutput

func (GetWaasPoliciesWaasPolicyWafConfigArgs) ToGetWaasPoliciesWaasPolicyWafConfigOutputWithContext

func (i GetWaasPoliciesWaasPolicyWafConfigArgs) ToGetWaasPoliciesWaasPolicyWafConfigOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigOutput

type GetWaasPoliciesWaasPolicyWafConfigArray

type GetWaasPoliciesWaasPolicyWafConfigArray []GetWaasPoliciesWaasPolicyWafConfigInput

func (GetWaasPoliciesWaasPolicyWafConfigArray) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigArray) ToGetWaasPoliciesWaasPolicyWafConfigArrayOutput

func (i GetWaasPoliciesWaasPolicyWafConfigArray) ToGetWaasPoliciesWaasPolicyWafConfigArrayOutput() GetWaasPoliciesWaasPolicyWafConfigArrayOutput

func (GetWaasPoliciesWaasPolicyWafConfigArray) ToGetWaasPoliciesWaasPolicyWafConfigArrayOutputWithContext

func (i GetWaasPoliciesWaasPolicyWafConfigArray) ToGetWaasPoliciesWaasPolicyWafConfigArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigArrayInput

type GetWaasPoliciesWaasPolicyWafConfigArrayInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyWafConfigArrayOutput() GetWaasPoliciesWaasPolicyWafConfigArrayOutput
	ToGetWaasPoliciesWaasPolicyWafConfigArrayOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyWafConfigArrayOutput
}

GetWaasPoliciesWaasPolicyWafConfigArrayInput is an input type that accepts GetWaasPoliciesWaasPolicyWafConfigArray and GetWaasPoliciesWaasPolicyWafConfigArrayOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyWafConfigArrayInput` via:

GetWaasPoliciesWaasPolicyWafConfigArray{ GetWaasPoliciesWaasPolicyWafConfigArgs{...} }

type GetWaasPoliciesWaasPolicyWafConfigArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigArrayOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyWafConfigArrayOutput) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigArrayOutput) Index

func (GetWaasPoliciesWaasPolicyWafConfigArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigArrayOutput

func (o GetWaasPoliciesWaasPolicyWafConfigArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigArrayOutput() GetWaasPoliciesWaasPolicyWafConfigArrayOutput

func (GetWaasPoliciesWaasPolicyWafConfigArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigArrayOutputWithContext

func (o GetWaasPoliciesWaasPolicyWafConfigArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigCachingRule

type GetWaasPoliciesWaasPolicyWafConfigCachingRule struct {
	// The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.
	Action string `pulumi:"action"`
	// The duration to cache content for the caching rule, specified in ISO 8601 extended format. Supported units: seconds, minutes, hours, days, weeks, months. The maximum value that can be set for any unit is `99`. Mixing of multiple units is not supported. Only applies when the `action` is set to `CACHE`. Example: `PT1H`
	CachingDuration string `pulumi:"cachingDuration"`
	// The duration to cache content in the user's browser, specified in ISO 8601 extended format. Supported units: seconds, minutes, hours, days, weeks, months. The maximum value that can be set for any unit is `99`. Mixing of multiple units is not supported. Only applies when the `action` is set to `CACHE`. Example: `PT1H`
	ClientCachingDuration string `pulumi:"clientCachingDuration"`
	// When defined, the JavaScript Challenge would be applied only for the requests that matched all the listed conditions.
	Criterias []GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteria `pulumi:"criterias"`
	// Enables or disables client caching. Browsers use the `Cache-Control` header value for caching content locally in the browser. This setting overrides the addition of a `Cache-Control` header in responses.
	IsClientCachingEnabled bool `pulumi:"isClientCachingEnabled"`
	// The unique key for the caching rule.
	Key string `pulumi:"key"`
	// The unique name of the whitelist.
	Name string `pulumi:"name"`
}

type GetWaasPoliciesWaasPolicyWafConfigCachingRuleArgs

type GetWaasPoliciesWaasPolicyWafConfigCachingRuleArgs struct {
	// The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.
	Action pulumi.StringInput `pulumi:"action"`
	// The duration to cache content for the caching rule, specified in ISO 8601 extended format. Supported units: seconds, minutes, hours, days, weeks, months. The maximum value that can be set for any unit is `99`. Mixing of multiple units is not supported. Only applies when the `action` is set to `CACHE`. Example: `PT1H`
	CachingDuration pulumi.StringInput `pulumi:"cachingDuration"`
	// The duration to cache content in the user's browser, specified in ISO 8601 extended format. Supported units: seconds, minutes, hours, days, weeks, months. The maximum value that can be set for any unit is `99`. Mixing of multiple units is not supported. Only applies when the `action` is set to `CACHE`. Example: `PT1H`
	ClientCachingDuration pulumi.StringInput `pulumi:"clientCachingDuration"`
	// When defined, the JavaScript Challenge would be applied only for the requests that matched all the listed conditions.
	Criterias GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaArrayInput `pulumi:"criterias"`
	// Enables or disables client caching. Browsers use the `Cache-Control` header value for caching content locally in the browser. This setting overrides the addition of a `Cache-Control` header in responses.
	IsClientCachingEnabled pulumi.BoolInput `pulumi:"isClientCachingEnabled"`
	// The unique key for the caching rule.
	Key pulumi.StringInput `pulumi:"key"`
	// The unique name of the whitelist.
	Name pulumi.StringInput `pulumi:"name"`
}

func (GetWaasPoliciesWaasPolicyWafConfigCachingRuleArgs) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigCachingRuleArgs) ToGetWaasPoliciesWaasPolicyWafConfigCachingRuleOutput

func (i GetWaasPoliciesWaasPolicyWafConfigCachingRuleArgs) ToGetWaasPoliciesWaasPolicyWafConfigCachingRuleOutput() GetWaasPoliciesWaasPolicyWafConfigCachingRuleOutput

func (GetWaasPoliciesWaasPolicyWafConfigCachingRuleArgs) ToGetWaasPoliciesWaasPolicyWafConfigCachingRuleOutputWithContext

func (i GetWaasPoliciesWaasPolicyWafConfigCachingRuleArgs) ToGetWaasPoliciesWaasPolicyWafConfigCachingRuleOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigCachingRuleOutput

type GetWaasPoliciesWaasPolicyWafConfigCachingRuleArray

type GetWaasPoliciesWaasPolicyWafConfigCachingRuleArray []GetWaasPoliciesWaasPolicyWafConfigCachingRuleInput

func (GetWaasPoliciesWaasPolicyWafConfigCachingRuleArray) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigCachingRuleArray) ToGetWaasPoliciesWaasPolicyWafConfigCachingRuleArrayOutput

func (i GetWaasPoliciesWaasPolicyWafConfigCachingRuleArray) ToGetWaasPoliciesWaasPolicyWafConfigCachingRuleArrayOutput() GetWaasPoliciesWaasPolicyWafConfigCachingRuleArrayOutput

func (GetWaasPoliciesWaasPolicyWafConfigCachingRuleArray) ToGetWaasPoliciesWaasPolicyWafConfigCachingRuleArrayOutputWithContext

func (i GetWaasPoliciesWaasPolicyWafConfigCachingRuleArray) ToGetWaasPoliciesWaasPolicyWafConfigCachingRuleArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigCachingRuleArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigCachingRuleArrayInput

type GetWaasPoliciesWaasPolicyWafConfigCachingRuleArrayInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyWafConfigCachingRuleArrayOutput() GetWaasPoliciesWaasPolicyWafConfigCachingRuleArrayOutput
	ToGetWaasPoliciesWaasPolicyWafConfigCachingRuleArrayOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyWafConfigCachingRuleArrayOutput
}

GetWaasPoliciesWaasPolicyWafConfigCachingRuleArrayInput is an input type that accepts GetWaasPoliciesWaasPolicyWafConfigCachingRuleArray and GetWaasPoliciesWaasPolicyWafConfigCachingRuleArrayOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyWafConfigCachingRuleArrayInput` via:

GetWaasPoliciesWaasPolicyWafConfigCachingRuleArray{ GetWaasPoliciesWaasPolicyWafConfigCachingRuleArgs{...} }

type GetWaasPoliciesWaasPolicyWafConfigCachingRuleArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigCachingRuleArrayOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyWafConfigCachingRuleArrayOutput) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigCachingRuleArrayOutput) Index

func (GetWaasPoliciesWaasPolicyWafConfigCachingRuleArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigCachingRuleArrayOutput

func (GetWaasPoliciesWaasPolicyWafConfigCachingRuleArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigCachingRuleArrayOutputWithContext

func (o GetWaasPoliciesWaasPolicyWafConfigCachingRuleArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigCachingRuleArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigCachingRuleArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteria

type GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteria struct {
	// The criteria the access rule and JavaScript Challenge uses to determine if action should be taken on a request.
	// * **URL_IS:** Matches if the concatenation of request URL path and query is identical to the contents of the `value` field. URL must start with a `/`.
	// * **URL_IS_NOT:** Matches if the concatenation of request URL path and query is not identical to the contents of the `value` field. URL must start with a `/`.
	// * **URL_STARTS_WITH:** Matches if the concatenation of request URL path and query starts with the contents of the `value` field. URL must start with a `/`.
	// * **URL_PART_ENDS_WITH:** Matches if the concatenation of request URL path and query ends with the contents of the `value` field.
	// * **URL_PART_CONTAINS:** Matches if the concatenation of request URL path and query contains the contents of the `value` field.
	// * **URL_REGEX:** Matches if the concatenation of request URL path and query is described by the regular expression in the value field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org).
	// * **URL_DOES_NOT_MATCH_REGEX:** Matches if the concatenation of request URL path and query is not described by the regular expression in the `value` field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org).
	// * **URL_DOES_NOT_START_WITH:** Matches if the concatenation of request URL path and query does not start with the contents of the `value` field.
	// * **URL_PART_DOES_NOT_CONTAIN:** Matches if the concatenation of request URL path and query does not contain the contents of the `value` field.
	// * **URL_PART_DOES_NOT_END_WITH:** Matches if the concatenation of request URL path and query does not end with the contents of the `value` field.
	// * **IP_IS:** Matches if the request originates from one of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30"
	// * **IP_IS_NOT:** Matches if the request does not originate from any of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30"
	// * **IP_IN_LIST:** Matches if the request originates from one of the IP addresses contained in the referenced address list. The `value` in this case is OCID of the address list.
	// * **IP_NOT_IN_LIST:** Matches if the request does not originate from any IP address contained in the referenced address list. The `value` field in this case is OCID of the address list.
	// * **HTTP_HEADER_CONTAINS:** The HTTP_HEADER_CONTAINS criteria is defined using a compound value separated by a colon: a header field name and a header field value. `host:test.example.com` is an example of a criteria value where `host` is the header field name and `test.example.com` is the header field value. A request matches when the header field name is a case insensitive match and the header field value is a case insensitive, substring match. *Example:* With a criteria value of `host:test.example.com`, where `host` is the name of the field and `test.example.com` is the value of the host field, a request with the header values, `Host: www.test.example.com` will match, where as a request with header values of `host: www.example.com` or `host: test.sub.example.com` will not match.
	// * **HTTP_METHOD_IS:** Matches if the request method is identical to one of the values listed in field. The `value` in this case is string with one or multiple HTTP methods separated by new line symbol \n The list of available methods: `GET`, `HEAD`, `POST`, `PUT`, `DELETE`, `CONNECT`, `OPTIONS`, `TRACE`, `PATCH`
	Condition string `pulumi:"condition"`
	// The value of the header.
	Value string `pulumi:"value"`
}

type GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaArgs

type GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaArgs struct {
	// The criteria the access rule and JavaScript Challenge uses to determine if action should be taken on a request.
	// * **URL_IS:** Matches if the concatenation of request URL path and query is identical to the contents of the `value` field. URL must start with a `/`.
	// * **URL_IS_NOT:** Matches if the concatenation of request URL path and query is not identical to the contents of the `value` field. URL must start with a `/`.
	// * **URL_STARTS_WITH:** Matches if the concatenation of request URL path and query starts with the contents of the `value` field. URL must start with a `/`.
	// * **URL_PART_ENDS_WITH:** Matches if the concatenation of request URL path and query ends with the contents of the `value` field.
	// * **URL_PART_CONTAINS:** Matches if the concatenation of request URL path and query contains the contents of the `value` field.
	// * **URL_REGEX:** Matches if the concatenation of request URL path and query is described by the regular expression in the value field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org).
	// * **URL_DOES_NOT_MATCH_REGEX:** Matches if the concatenation of request URL path and query is not described by the regular expression in the `value` field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org).
	// * **URL_DOES_NOT_START_WITH:** Matches if the concatenation of request URL path and query does not start with the contents of the `value` field.
	// * **URL_PART_DOES_NOT_CONTAIN:** Matches if the concatenation of request URL path and query does not contain the contents of the `value` field.
	// * **URL_PART_DOES_NOT_END_WITH:** Matches if the concatenation of request URL path and query does not end with the contents of the `value` field.
	// * **IP_IS:** Matches if the request originates from one of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30"
	// * **IP_IS_NOT:** Matches if the request does not originate from any of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30"
	// * **IP_IN_LIST:** Matches if the request originates from one of the IP addresses contained in the referenced address list. The `value` in this case is OCID of the address list.
	// * **IP_NOT_IN_LIST:** Matches if the request does not originate from any IP address contained in the referenced address list. The `value` field in this case is OCID of the address list.
	// * **HTTP_HEADER_CONTAINS:** The HTTP_HEADER_CONTAINS criteria is defined using a compound value separated by a colon: a header field name and a header field value. `host:test.example.com` is an example of a criteria value where `host` is the header field name and `test.example.com` is the header field value. A request matches when the header field name is a case insensitive match and the header field value is a case insensitive, substring match. *Example:* With a criteria value of `host:test.example.com`, where `host` is the name of the field and `test.example.com` is the value of the host field, a request with the header values, `Host: www.test.example.com` will match, where as a request with header values of `host: www.example.com` or `host: test.sub.example.com` will not match.
	// * **HTTP_METHOD_IS:** Matches if the request method is identical to one of the values listed in field. The `value` in this case is string with one or multiple HTTP methods separated by new line symbol \n The list of available methods: `GET`, `HEAD`, `POST`, `PUT`, `DELETE`, `CONNECT`, `OPTIONS`, `TRACE`, `PATCH`
	Condition pulumi.StringInput `pulumi:"condition"`
	// The value of the header.
	Value pulumi.StringInput `pulumi:"value"`
}

func (GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaArgs) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaArgs) ToGetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaOutput

func (GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaArgs) ToGetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaOutputWithContext

func (i GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaArgs) ToGetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaOutput

type GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaArray

type GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaArray []GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaInput

func (GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaArray) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaArray) ToGetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaArrayOutput

func (GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaArray) ToGetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaArrayOutputWithContext

func (i GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaArray) ToGetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaArrayInput

type GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaArrayInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaArrayOutput() GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaArrayOutput
	ToGetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaArrayOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaArrayOutput
}

GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaArrayInput is an input type that accepts GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaArray and GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaArrayOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaArrayInput` via:

GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaArray{ GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaArgs{...} }

type GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaArrayOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaArrayOutput) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaArrayOutput) Index

func (GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaArrayOutput

func (GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaArrayOutputWithContext

func (o GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaInput

type GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaOutput() GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaOutput
	ToGetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaOutput
}

GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaInput is an input type that accepts GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaArgs and GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaInput` via:

GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaArgs{...}

type GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaOutput

type GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaOutput) Condition

The criteria the access rule and JavaScript Challenge uses to determine if action should be taken on a request. * **URL_IS:** Matches if the concatenation of request URL path and query is identical to the contents of the `value` field. URL must start with a `/`. * **URL_IS_NOT:** Matches if the concatenation of request URL path and query is not identical to the contents of the `value` field. URL must start with a `/`. * **URL_STARTS_WITH:** Matches if the concatenation of request URL path and query starts with the contents of the `value` field. URL must start with a `/`. * **URL_PART_ENDS_WITH:** Matches if the concatenation of request URL path and query ends with the contents of the `value` field. * **URL_PART_CONTAINS:** Matches if the concatenation of request URL path and query contains the contents of the `value` field. * **URL_REGEX:** Matches if the concatenation of request URL path and query is described by the regular expression in the value field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org). * **URL_DOES_NOT_MATCH_REGEX:** Matches if the concatenation of request URL path and query is not described by the regular expression in the `value` field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org). * **URL_DOES_NOT_START_WITH:** Matches if the concatenation of request URL path and query does not start with the contents of the `value` field. * **URL_PART_DOES_NOT_CONTAIN:** Matches if the concatenation of request URL path and query does not contain the contents of the `value` field. * **URL_PART_DOES_NOT_END_WITH:** Matches if the concatenation of request URL path and query does not end with the contents of the `value` field. * **IP_IS:** Matches if the request originates from one of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30" * **IP_IS_NOT:** Matches if the request does not originate from any of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30" * **IP_IN_LIST:** Matches if the request originates from one of the IP addresses contained in the referenced address list. The `value` in this case is OCID of the address list. * **IP_NOT_IN_LIST:** Matches if the request does not originate from any IP address contained in the referenced address list. The `value` field in this case is OCID of the address list. * **HTTP_HEADER_CONTAINS:** The HTTP_HEADER_CONTAINS criteria is defined using a compound value separated by a colon: a header field name and a header field value. `host:test.example.com` is an example of a criteria value where `host` is the header field name and `test.example.com` is the header field value. A request matches when the header field name is a case insensitive match and the header field value is a case insensitive, substring match. *Example:* With a criteria value of `host:test.example.com`, where `host` is the name of the field and `test.example.com` is the value of the host field, a request with the header values, `Host: www.test.example.com` will match, where as a request with header values of `host: www.example.com` or `host: test.sub.example.com` will not match. * **HTTP_METHOD_IS:** Matches if the request method is identical to one of the values listed in field. The `value` in this case is string with one or multiple HTTP methods separated by new line symbol \n The list of available methods: `GET`, `HEAD`, `POST`, `PUT`, `DELETE`, `CONNECT`, `OPTIONS`, `TRACE`, `PATCH`

func (GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaOutput) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaOutput) ToGetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaOutput

func (GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaOutput) ToGetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaOutputWithContext

func (o GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaOutput) ToGetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaOutput

func (GetWaasPoliciesWaasPolicyWafConfigCachingRuleCriteriaOutput) Value

The value of the header.

type GetWaasPoliciesWaasPolicyWafConfigCachingRuleInput

type GetWaasPoliciesWaasPolicyWafConfigCachingRuleInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyWafConfigCachingRuleOutput() GetWaasPoliciesWaasPolicyWafConfigCachingRuleOutput
	ToGetWaasPoliciesWaasPolicyWafConfigCachingRuleOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyWafConfigCachingRuleOutput
}

GetWaasPoliciesWaasPolicyWafConfigCachingRuleInput is an input type that accepts GetWaasPoliciesWaasPolicyWafConfigCachingRuleArgs and GetWaasPoliciesWaasPolicyWafConfigCachingRuleOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyWafConfigCachingRuleInput` via:

GetWaasPoliciesWaasPolicyWafConfigCachingRuleArgs{...}

type GetWaasPoliciesWaasPolicyWafConfigCachingRuleOutput

type GetWaasPoliciesWaasPolicyWafConfigCachingRuleOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyWafConfigCachingRuleOutput) Action

The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.

func (GetWaasPoliciesWaasPolicyWafConfigCachingRuleOutput) CachingDuration

The duration to cache content for the caching rule, specified in ISO 8601 extended format. Supported units: seconds, minutes, hours, days, weeks, months. The maximum value that can be set for any unit is `99`. Mixing of multiple units is not supported. Only applies when the `action` is set to `CACHE`. Example: `PT1H`

func (GetWaasPoliciesWaasPolicyWafConfigCachingRuleOutput) ClientCachingDuration

The duration to cache content in the user's browser, specified in ISO 8601 extended format. Supported units: seconds, minutes, hours, days, weeks, months. The maximum value that can be set for any unit is `99`. Mixing of multiple units is not supported. Only applies when the `action` is set to `CACHE`. Example: `PT1H`

func (GetWaasPoliciesWaasPolicyWafConfigCachingRuleOutput) Criterias

When defined, the JavaScript Challenge would be applied only for the requests that matched all the listed conditions.

func (GetWaasPoliciesWaasPolicyWafConfigCachingRuleOutput) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigCachingRuleOutput) IsClientCachingEnabled

Enables or disables client caching. Browsers use the `Cache-Control` header value for caching content locally in the browser. This setting overrides the addition of a `Cache-Control` header in responses.

func (GetWaasPoliciesWaasPolicyWafConfigCachingRuleOutput) Key

The unique key for the caching rule.

func (GetWaasPoliciesWaasPolicyWafConfigCachingRuleOutput) Name

The unique name of the whitelist.

func (GetWaasPoliciesWaasPolicyWafConfigCachingRuleOutput) ToGetWaasPoliciesWaasPolicyWafConfigCachingRuleOutput

func (o GetWaasPoliciesWaasPolicyWafConfigCachingRuleOutput) ToGetWaasPoliciesWaasPolicyWafConfigCachingRuleOutput() GetWaasPoliciesWaasPolicyWafConfigCachingRuleOutput

func (GetWaasPoliciesWaasPolicyWafConfigCachingRuleOutput) ToGetWaasPoliciesWaasPolicyWafConfigCachingRuleOutputWithContext

func (o GetWaasPoliciesWaasPolicyWafConfigCachingRuleOutput) ToGetWaasPoliciesWaasPolicyWafConfigCachingRuleOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigCachingRuleOutput

type GetWaasPoliciesWaasPolicyWafConfigCaptcha

type GetWaasPoliciesWaasPolicyWafConfigCaptcha struct {
	// The text to show when incorrect CAPTCHA text is entered. If unspecified, defaults to `The CAPTCHA was incorrect. Try again.`
	FailureMessage string `pulumi:"failureMessage"`
	// The text to show in the footer when showing a CAPTCHA challenge. If unspecified, defaults to 'Enter the letters and numbers as they are shown in the image above.'
	FooterText string `pulumi:"footerText"`
	// The text to show in the header when showing a CAPTCHA challenge. If unspecified, defaults to 'We have detected an increased number of attempts to access this website. To help us keep this site secure, please let us know that you are not a robot by entering the text from the image below.'
	HeaderText string `pulumi:"headerText"`
	// The amount of time before the CAPTCHA expires, in seconds. If unspecified, defaults to `300`.
	SessionExpirationInSeconds int `pulumi:"sessionExpirationInSeconds"`
	// The text to show on the label of the CAPTCHA challenge submit button. If unspecified, defaults to `Yes, I am human`.
	SubmitLabel string `pulumi:"submitLabel"`
	// The title used when displaying a CAPTCHA challenge. If unspecified, defaults to `Are you human?`
	Title string `pulumi:"title"`
	// The unique URL path at which to show the CAPTCHA challenge.
	Url string `pulumi:"url"`
}

type GetWaasPoliciesWaasPolicyWafConfigCaptchaArgs

type GetWaasPoliciesWaasPolicyWafConfigCaptchaArgs struct {
	// The text to show when incorrect CAPTCHA text is entered. If unspecified, defaults to `The CAPTCHA was incorrect. Try again.`
	FailureMessage pulumi.StringInput `pulumi:"failureMessage"`
	// The text to show in the footer when showing a CAPTCHA challenge. If unspecified, defaults to 'Enter the letters and numbers as they are shown in the image above.'
	FooterText pulumi.StringInput `pulumi:"footerText"`
	// The text to show in the header when showing a CAPTCHA challenge. If unspecified, defaults to 'We have detected an increased number of attempts to access this website. To help us keep this site secure, please let us know that you are not a robot by entering the text from the image below.'
	HeaderText pulumi.StringInput `pulumi:"headerText"`
	// The amount of time before the CAPTCHA expires, in seconds. If unspecified, defaults to `300`.
	SessionExpirationInSeconds pulumi.IntInput `pulumi:"sessionExpirationInSeconds"`
	// The text to show on the label of the CAPTCHA challenge submit button. If unspecified, defaults to `Yes, I am human`.
	SubmitLabel pulumi.StringInput `pulumi:"submitLabel"`
	// The title used when displaying a CAPTCHA challenge. If unspecified, defaults to `Are you human?`
	Title pulumi.StringInput `pulumi:"title"`
	// The unique URL path at which to show the CAPTCHA challenge.
	Url pulumi.StringInput `pulumi:"url"`
}

func (GetWaasPoliciesWaasPolicyWafConfigCaptchaArgs) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigCaptchaArgs) ToGetWaasPoliciesWaasPolicyWafConfigCaptchaOutput

func (i GetWaasPoliciesWaasPolicyWafConfigCaptchaArgs) ToGetWaasPoliciesWaasPolicyWafConfigCaptchaOutput() GetWaasPoliciesWaasPolicyWafConfigCaptchaOutput

func (GetWaasPoliciesWaasPolicyWafConfigCaptchaArgs) ToGetWaasPoliciesWaasPolicyWafConfigCaptchaOutputWithContext

func (i GetWaasPoliciesWaasPolicyWafConfigCaptchaArgs) ToGetWaasPoliciesWaasPolicyWafConfigCaptchaOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigCaptchaOutput

type GetWaasPoliciesWaasPolicyWafConfigCaptchaArray

type GetWaasPoliciesWaasPolicyWafConfigCaptchaArray []GetWaasPoliciesWaasPolicyWafConfigCaptchaInput

func (GetWaasPoliciesWaasPolicyWafConfigCaptchaArray) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigCaptchaArray) ToGetWaasPoliciesWaasPolicyWafConfigCaptchaArrayOutput

func (i GetWaasPoliciesWaasPolicyWafConfigCaptchaArray) ToGetWaasPoliciesWaasPolicyWafConfigCaptchaArrayOutput() GetWaasPoliciesWaasPolicyWafConfigCaptchaArrayOutput

func (GetWaasPoliciesWaasPolicyWafConfigCaptchaArray) ToGetWaasPoliciesWaasPolicyWafConfigCaptchaArrayOutputWithContext

func (i GetWaasPoliciesWaasPolicyWafConfigCaptchaArray) ToGetWaasPoliciesWaasPolicyWafConfigCaptchaArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigCaptchaArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigCaptchaArrayInput

type GetWaasPoliciesWaasPolicyWafConfigCaptchaArrayInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyWafConfigCaptchaArrayOutput() GetWaasPoliciesWaasPolicyWafConfigCaptchaArrayOutput
	ToGetWaasPoliciesWaasPolicyWafConfigCaptchaArrayOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyWafConfigCaptchaArrayOutput
}

GetWaasPoliciesWaasPolicyWafConfigCaptchaArrayInput is an input type that accepts GetWaasPoliciesWaasPolicyWafConfigCaptchaArray and GetWaasPoliciesWaasPolicyWafConfigCaptchaArrayOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyWafConfigCaptchaArrayInput` via:

GetWaasPoliciesWaasPolicyWafConfigCaptchaArray{ GetWaasPoliciesWaasPolicyWafConfigCaptchaArgs{...} }

type GetWaasPoliciesWaasPolicyWafConfigCaptchaArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigCaptchaArrayOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyWafConfigCaptchaArrayOutput) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigCaptchaArrayOutput) Index

func (GetWaasPoliciesWaasPolicyWafConfigCaptchaArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigCaptchaArrayOutput

func (GetWaasPoliciesWaasPolicyWafConfigCaptchaArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigCaptchaArrayOutputWithContext

func (o GetWaasPoliciesWaasPolicyWafConfigCaptchaArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigCaptchaArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigCaptchaArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigCaptchaInput

type GetWaasPoliciesWaasPolicyWafConfigCaptchaInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyWafConfigCaptchaOutput() GetWaasPoliciesWaasPolicyWafConfigCaptchaOutput
	ToGetWaasPoliciesWaasPolicyWafConfigCaptchaOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyWafConfigCaptchaOutput
}

GetWaasPoliciesWaasPolicyWafConfigCaptchaInput is an input type that accepts GetWaasPoliciesWaasPolicyWafConfigCaptchaArgs and GetWaasPoliciesWaasPolicyWafConfigCaptchaOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyWafConfigCaptchaInput` via:

GetWaasPoliciesWaasPolicyWafConfigCaptchaArgs{...}

type GetWaasPoliciesWaasPolicyWafConfigCaptchaOutput

type GetWaasPoliciesWaasPolicyWafConfigCaptchaOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyWafConfigCaptchaOutput) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigCaptchaOutput) FailureMessage

The text to show when incorrect CAPTCHA text is entered. If unspecified, defaults to `The CAPTCHA was incorrect. Try again.`

func (GetWaasPoliciesWaasPolicyWafConfigCaptchaOutput) FooterText

The text to show in the footer when showing a CAPTCHA challenge. If unspecified, defaults to 'Enter the letters and numbers as they are shown in the image above.'

func (GetWaasPoliciesWaasPolicyWafConfigCaptchaOutput) HeaderText

The text to show in the header when showing a CAPTCHA challenge. If unspecified, defaults to 'We have detected an increased number of attempts to access this website. To help us keep this site secure, please let us know that you are not a robot by entering the text from the image below.'

func (GetWaasPoliciesWaasPolicyWafConfigCaptchaOutput) SessionExpirationInSeconds

func (o GetWaasPoliciesWaasPolicyWafConfigCaptchaOutput) SessionExpirationInSeconds() pulumi.IntOutput

The amount of time before the CAPTCHA expires, in seconds. If unspecified, defaults to `300`.

func (GetWaasPoliciesWaasPolicyWafConfigCaptchaOutput) SubmitLabel

The text to show on the label of the CAPTCHA challenge submit button. If unspecified, defaults to `Yes, I am human`.

func (GetWaasPoliciesWaasPolicyWafConfigCaptchaOutput) Title

The title used when displaying a CAPTCHA challenge. If unspecified, defaults to `Are you human?`

func (GetWaasPoliciesWaasPolicyWafConfigCaptchaOutput) ToGetWaasPoliciesWaasPolicyWafConfigCaptchaOutput

func (o GetWaasPoliciesWaasPolicyWafConfigCaptchaOutput) ToGetWaasPoliciesWaasPolicyWafConfigCaptchaOutput() GetWaasPoliciesWaasPolicyWafConfigCaptchaOutput

func (GetWaasPoliciesWaasPolicyWafConfigCaptchaOutput) ToGetWaasPoliciesWaasPolicyWafConfigCaptchaOutputWithContext

func (o GetWaasPoliciesWaasPolicyWafConfigCaptchaOutput) ToGetWaasPoliciesWaasPolicyWafConfigCaptchaOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigCaptchaOutput

func (GetWaasPoliciesWaasPolicyWafConfigCaptchaOutput) Url

The unique URL path at which to show the CAPTCHA challenge.

type GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRule

type GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRule struct {
	// The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.
	Action string `pulumi:"action"`
	// An array of The target property of a request that would allow it to bypass the protection rule. For example, when `target` is `REQUEST_COOKIE_NAMES`, the list may include names of cookies to exclude from the protection rule. When the target is `ARGS`, the list may include strings of URL query parameters and values from form-urlencoded XML, JSON, AMP, or POST payloads to exclude from the protection rule. `Exclusions` properties must not contain whitespace, comma or |. **Note:** If protection rules have been enabled that utilize the `maxArgumentCount` or `maxTotalNameLengthOfArguments` properties, and the `target` property has been set to `ARGS`, it is important that the `exclusions` properties be defined to honor those protection rule settings in a consistent manner.
	Exclusions []GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusion `pulumi:"exclusions"`
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the custom protection rule.
	Id string `pulumi:"id"`
}

type GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleArgs

type GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleArgs struct {
	// The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.
	Action pulumi.StringInput `pulumi:"action"`
	// An array of The target property of a request that would allow it to bypass the protection rule. For example, when `target` is `REQUEST_COOKIE_NAMES`, the list may include names of cookies to exclude from the protection rule. When the target is `ARGS`, the list may include strings of URL query parameters and values from form-urlencoded XML, JSON, AMP, or POST payloads to exclude from the protection rule. `Exclusions` properties must not contain whitespace, comma or |. **Note:** If protection rules have been enabled that utilize the `maxArgumentCount` or `maxTotalNameLengthOfArguments` properties, and the `target` property has been set to `ARGS`, it is important that the `exclusions` properties be defined to honor those protection rule settings in a consistent manner.
	Exclusions GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionArrayInput `pulumi:"exclusions"`
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the custom protection rule.
	Id pulumi.StringInput `pulumi:"id"`
}

func (GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleArgs) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleArgs) ToGetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleOutput

func (GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleArgs) ToGetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleOutputWithContext

func (i GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleArgs) ToGetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleOutput

type GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleArray

type GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleArray []GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleInput

func (GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleArray) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleArray) ToGetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleArrayOutput

func (GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleArray) ToGetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleArrayOutputWithContext

func (i GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleArray) ToGetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleArrayInput

type GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleArrayInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleArrayOutput() GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleArrayOutput
	ToGetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleArrayOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleArrayOutput
}

GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleArrayInput is an input type that accepts GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleArray and GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleArrayOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleArrayInput` via:

GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleArray{ GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleArgs{...} }

type GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleArrayOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleArrayOutput) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleArrayOutput) Index

func (GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleArrayOutput

func (GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleArrayOutputWithContext

func (o GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusion

type GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusion struct {
	// An array of The target property of a request that would allow it to bypass the protection rule. For example, when `target` is `REQUEST_COOKIE_NAMES`, the list may include names of cookies to exclude from the protection rule. When the target is `ARGS`, the list may include strings of URL query parameters and values from form-urlencoded XML, JSON, AMP, or POST payloads to exclude from the protection rule. `Exclusions` properties must not contain whitespace, comma or |. **Note:** If protection rules have been enabled that utilize the `maxArgumentCount` or `maxTotalNameLengthOfArguments` properties, and the `target` property has been set to `ARGS`, it is important that the `exclusions` properties be defined to honor those protection rule settings in a consistent manner.
	Exclusions []string `pulumi:"exclusions"`
	// The target of the exclusion.
	Target string `pulumi:"target"`
}

type GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionArgs

type GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionArgs struct {
	// An array of The target property of a request that would allow it to bypass the protection rule. For example, when `target` is `REQUEST_COOKIE_NAMES`, the list may include names of cookies to exclude from the protection rule. When the target is `ARGS`, the list may include strings of URL query parameters and values from form-urlencoded XML, JSON, AMP, or POST payloads to exclude from the protection rule. `Exclusions` properties must not contain whitespace, comma or |. **Note:** If protection rules have been enabled that utilize the `maxArgumentCount` or `maxTotalNameLengthOfArguments` properties, and the `target` property has been set to `ARGS`, it is important that the `exclusions` properties be defined to honor those protection rule settings in a consistent manner.
	Exclusions pulumi.StringArrayInput `pulumi:"exclusions"`
	// The target of the exclusion.
	Target pulumi.StringInput `pulumi:"target"`
}

func (GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionArgs) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionArgs) ToGetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionOutput

func (GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionArgs) ToGetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionOutputWithContext

func (i GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionArgs) ToGetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionOutput

type GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionArray

type GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionArray []GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionInput

func (GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionArray) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionArray) ToGetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionArrayOutput

func (GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionArray) ToGetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionArrayOutputWithContext

func (i GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionArray) ToGetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionArrayInput

type GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionArrayInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionArrayOutput() GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionArrayOutput
	ToGetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionArrayOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionArrayOutput
}

GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionArrayInput is an input type that accepts GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionArray and GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionArrayOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionArrayInput` via:

GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionArray{ GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionArgs{...} }

type GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionArrayOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionArrayOutput) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionArrayOutput

func (GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionArrayOutputWithContext

type GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionInput

type GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionOutput() GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionOutput
	ToGetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionOutput
}

GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionInput is an input type that accepts GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionArgs and GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionInput` via:

GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionArgs{...}

type GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionOutput

type GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionOutput) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionOutput) Exclusions

An array of The target property of a request that would allow it to bypass the protection rule. For example, when `target` is `REQUEST_COOKIE_NAMES`, the list may include names of cookies to exclude from the protection rule. When the target is `ARGS`, the list may include strings of URL query parameters and values from form-urlencoded XML, JSON, AMP, or POST payloads to exclude from the protection rule. `Exclusions` properties must not contain whitespace, comma or |. **Note:** If protection rules have been enabled that utilize the `maxArgumentCount` or `maxTotalNameLengthOfArguments` properties, and the `target` property has been set to `ARGS`, it is important that the `exclusions` properties be defined to honor those protection rule settings in a consistent manner.

func (GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionOutput) Target

The target of the exclusion.

func (GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionOutput) ToGetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionOutput

func (GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionOutput) ToGetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionOutputWithContext

func (o GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionOutput) ToGetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleExclusionOutput

type GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleInput

type GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleOutput() GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleOutput
	ToGetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleOutput
}

GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleInput is an input type that accepts GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleArgs and GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleInput` via:

GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleArgs{...}

type GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleOutput

type GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleOutput) Action

The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.

func (GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleOutput) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleOutput) Exclusions

An array of The target property of a request that would allow it to bypass the protection rule. For example, when `target` is `REQUEST_COOKIE_NAMES`, the list may include names of cookies to exclude from the protection rule. When the target is `ARGS`, the list may include strings of URL query parameters and values from form-urlencoded XML, JSON, AMP, or POST payloads to exclude from the protection rule. `Exclusions` properties must not contain whitespace, comma or |. **Note:** If protection rules have been enabled that utilize the `maxArgumentCount` or `maxTotalNameLengthOfArguments` properties, and the `target` property has been set to `ARGS`, it is important that the `exclusions` properties be defined to honor those protection rule settings in a consistent manner.

func (GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleOutput) Id

The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the custom protection rule.

func (GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleOutput) ToGetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleOutput

func (GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleOutput) ToGetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleOutputWithContext

func (o GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleOutput) ToGetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigCustomProtectionRuleOutput

type GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallenge

type GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallenge struct {
	// The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.
	Action string `pulumi:"action"`
	// The number of seconds between challenges from the same IP address. If unspecified, defaults to `60`.
	ActionExpirationInSeconds int `pulumi:"actionExpirationInSeconds"`
	// The challenge settings if `action` is set to `BLOCK`.
	ChallengeSettings []GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSetting `pulumi:"challengeSettings"`
	// The number of failed requests before taking action. If unspecified, defaults to `10`.
	FailureThreshold int `pulumi:"failureThreshold"`
	// The number of seconds before the failure threshold resets. If unspecified, defaults to  `60`.
	FailureThresholdExpirationInSeconds int `pulumi:"failureThresholdExpirationInSeconds"`
	// Enables or disables the JavaScript challenge Web Application Firewall feature.
	IsEnabled bool `pulumi:"isEnabled"`
	// The maximum number of IP addresses permitted with the same device fingerprint. If unspecified, defaults to `20`.
	MaxAddressCount int `pulumi:"maxAddressCount"`
	// The number of seconds before the maximum addresses count resets. If unspecified, defaults to `60`.
	MaxAddressCountExpirationInSeconds int `pulumi:"maxAddressCountExpirationInSeconds"`
}

type GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeArgs

type GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeArgs struct {
	// The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.
	Action pulumi.StringInput `pulumi:"action"`
	// The number of seconds between challenges from the same IP address. If unspecified, defaults to `60`.
	ActionExpirationInSeconds pulumi.IntInput `pulumi:"actionExpirationInSeconds"`
	// The challenge settings if `action` is set to `BLOCK`.
	ChallengeSettings GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingArrayInput `pulumi:"challengeSettings"`
	// The number of failed requests before taking action. If unspecified, defaults to `10`.
	FailureThreshold pulumi.IntInput `pulumi:"failureThreshold"`
	// The number of seconds before the failure threshold resets. If unspecified, defaults to  `60`.
	FailureThresholdExpirationInSeconds pulumi.IntInput `pulumi:"failureThresholdExpirationInSeconds"`
	// Enables or disables the JavaScript challenge Web Application Firewall feature.
	IsEnabled pulumi.BoolInput `pulumi:"isEnabled"`
	// The maximum number of IP addresses permitted with the same device fingerprint. If unspecified, defaults to `20`.
	MaxAddressCount pulumi.IntInput `pulumi:"maxAddressCount"`
	// The number of seconds before the maximum addresses count resets. If unspecified, defaults to `60`.
	MaxAddressCountExpirationInSeconds pulumi.IntInput `pulumi:"maxAddressCountExpirationInSeconds"`
}

func (GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeArgs) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeArgs) ToGetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeOutput

func (GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeArgs) ToGetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeOutputWithContext

func (i GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeArgs) ToGetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeOutput

type GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeArray

type GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeArray []GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeInput

func (GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeArray) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeArray) ToGetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeArrayOutput

func (GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeArray) ToGetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeArrayOutputWithContext

func (i GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeArray) ToGetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeArrayInput

type GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeArrayInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeArrayOutput() GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeArrayOutput
	ToGetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeArrayOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeArrayOutput
}

GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeArrayInput is an input type that accepts GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeArray and GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeArrayOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeArrayInput` via:

GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeArray{ GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeArgs{...} }

type GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeArrayOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeArrayOutput) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeArrayOutput

func (GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeArrayOutputWithContext

func (o GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSetting

type GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSetting struct {
	// If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.
	BlockAction string `pulumi:"blockAction"`
	// The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.
	BlockErrorPageCode string `pulumi:"blockErrorPageCode"`
	// The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`
	BlockErrorPageDescription string `pulumi:"blockErrorPageDescription"`
	// The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'
	BlockErrorPageMessage string `pulumi:"blockErrorPageMessage"`
	// The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.
	BlockResponseCode int `pulumi:"blockResponseCode"`
	// The text to show in the footer when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, default to `Enter the letters and numbers as they are shown in image above`.
	CaptchaFooter string `pulumi:"captchaFooter"`
	// The text to show in the header when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `We have detected an increased number of attempts to access this webapp. To help us keep this webapp secure, please let us know that you are not a robot by entering the text from captcha below.`
	CaptchaHeader string `pulumi:"captchaHeader"`
	// The text to show on the label of the CAPTCHA challenge submit button when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Yes, I am human`.
	CaptchaSubmitLabel string `pulumi:"captchaSubmitLabel"`
	// The title used when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Are you human?`
	CaptchaTitle string `pulumi:"captchaTitle"`
}

type GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingArgs

type GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingArgs struct {
	// If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.
	BlockAction pulumi.StringInput `pulumi:"blockAction"`
	// The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.
	BlockErrorPageCode pulumi.StringInput `pulumi:"blockErrorPageCode"`
	// The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`
	BlockErrorPageDescription pulumi.StringInput `pulumi:"blockErrorPageDescription"`
	// The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'
	BlockErrorPageMessage pulumi.StringInput `pulumi:"blockErrorPageMessage"`
	// The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.
	BlockResponseCode pulumi.IntInput `pulumi:"blockResponseCode"`
	// The text to show in the footer when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, default to `Enter the letters and numbers as they are shown in image above`.
	CaptchaFooter pulumi.StringInput `pulumi:"captchaFooter"`
	// The text to show in the header when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `We have detected an increased number of attempts to access this webapp. To help us keep this webapp secure, please let us know that you are not a robot by entering the text from captcha below.`
	CaptchaHeader pulumi.StringInput `pulumi:"captchaHeader"`
	// The text to show on the label of the CAPTCHA challenge submit button when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Yes, I am human`.
	CaptchaSubmitLabel pulumi.StringInput `pulumi:"captchaSubmitLabel"`
	// The title used when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Are you human?`
	CaptchaTitle pulumi.StringInput `pulumi:"captchaTitle"`
}

func (GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingArgs) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingArgs) ToGetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingOutput

func (GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingArgs) ToGetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingOutputWithContext

type GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingArray

type GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingArray []GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingInput

func (GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingArray) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingArray) ToGetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingArrayOutput

func (GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingArray) ToGetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingArrayOutputWithContext

type GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingArrayInput

type GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingArrayInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingArrayOutput() GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingArrayOutput
	ToGetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingArrayOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingArrayOutput
}

GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingArrayInput is an input type that accepts GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingArray and GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingArrayOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingArrayInput` via:

GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingArray{ GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingArgs{...} }

type GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingArrayOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingArrayOutput) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingArrayOutput

func (GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingArrayOutputWithContext

type GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingInput

type GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingOutput() GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingOutput
	ToGetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingOutput
}

GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingInput is an input type that accepts GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingArgs and GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingInput` via:

GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingArgs{...}

type GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingOutput

type GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingOutput) BlockAction

If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.

func (GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingOutput) BlockErrorPageCode

The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.

func (GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingOutput) BlockErrorPageDescription

The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`

func (GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingOutput) BlockErrorPageMessage

The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'

func (GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingOutput) BlockResponseCode

The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.

func (GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingOutput) CaptchaFooter

The text to show in the footer when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, default to `Enter the letters and numbers as they are shown in image above`.

func (GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingOutput) CaptchaHeader

The text to show in the header when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `We have detected an increased number of attempts to access this webapp. To help us keep this webapp secure, please let us know that you are not a robot by entering the text from captcha below.`

func (GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingOutput) CaptchaSubmitLabel

The text to show on the label of the CAPTCHA challenge submit button when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Yes, I am human`.

func (GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingOutput) CaptchaTitle

The title used when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Are you human?`

func (GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingOutput) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingOutput) ToGetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingOutput

func (GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingOutput) ToGetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingOutputWithContext

type GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeInput

type GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeOutput() GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeOutput
	ToGetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeOutput
}

GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeInput is an input type that accepts GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeArgs and GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeInput` via:

GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeArgs{...}

type GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeOutput

type GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeOutput) Action

The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.

func (GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeOutput) ActionExpirationInSeconds

The number of seconds between challenges from the same IP address. If unspecified, defaults to `60`.

func (GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeOutput) ChallengeSettings

The challenge settings if `action` is set to `BLOCK`.

func (GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeOutput) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeOutput) FailureThreshold

The number of failed requests before taking action. If unspecified, defaults to `10`.

func (GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeOutput) FailureThresholdExpirationInSeconds

The number of seconds before the failure threshold resets. If unspecified, defaults to `60`.

func (GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeOutput) IsEnabled

Enables or disables the JavaScript challenge Web Application Firewall feature.

func (GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeOutput) MaxAddressCount

The maximum number of IP addresses permitted with the same device fingerprint. If unspecified, defaults to `20`.

func (GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeOutput) MaxAddressCountExpirationInSeconds

The number of seconds before the maximum addresses count resets. If unspecified, defaults to `60`.

func (GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeOutput) ToGetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeOutput

func (GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeOutput) ToGetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeOutputWithContext

func (o GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeOutput) ToGetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigDeviceFingerprintChallengeOutput

type GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallenge

type GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallenge struct {
	// The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.
	Action string `pulumi:"action"`
	// The number of seconds between challenges from the same IP address. If unspecified, defaults to `60`.
	ActionExpirationInSeconds int `pulumi:"actionExpirationInSeconds"`
	// The challenge settings if `action` is set to `BLOCK`.
	ChallengeSettings []GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSetting `pulumi:"challengeSettings"`
	// The number of failed requests before taking action. If unspecified, defaults to `10`.
	FailureThreshold int `pulumi:"failureThreshold"`
	// The number of seconds before the failure threshold resets. If unspecified, defaults to  `60`.
	FailureThresholdExpirationInSeconds int `pulumi:"failureThresholdExpirationInSeconds"`
	// The number of interactions required to pass the challenge. If unspecified, defaults to `3`.
	InteractionThreshold int `pulumi:"interactionThreshold"`
	// Enables or disables the JavaScript challenge Web Application Firewall feature.
	IsEnabled bool `pulumi:"isEnabled"`
	// When enabled, the user is identified not only by the IP address but also by an unique additional hash, which prevents blocking visitors with shared IP addresses.
	IsNatEnabled bool `pulumi:"isNatEnabled"`
	// The number of seconds to record the interactions from the user. If unspecified, defaults to `15`.
	RecordingPeriodInSeconds int `pulumi:"recordingPeriodInSeconds"`
	// Adds an additional HTTP header to requests that fail the challenge before being passed to the origin. Only applicable when the `action` is set to `DETECT`.
	SetHttpHeaders []GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeader `pulumi:"setHttpHeaders"`
}

type GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeArgs

type GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeArgs struct {
	// The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.
	Action pulumi.StringInput `pulumi:"action"`
	// The number of seconds between challenges from the same IP address. If unspecified, defaults to `60`.
	ActionExpirationInSeconds pulumi.IntInput `pulumi:"actionExpirationInSeconds"`
	// The challenge settings if `action` is set to `BLOCK`.
	ChallengeSettings GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingArrayInput `pulumi:"challengeSettings"`
	// The number of failed requests before taking action. If unspecified, defaults to `10`.
	FailureThreshold pulumi.IntInput `pulumi:"failureThreshold"`
	// The number of seconds before the failure threshold resets. If unspecified, defaults to  `60`.
	FailureThresholdExpirationInSeconds pulumi.IntInput `pulumi:"failureThresholdExpirationInSeconds"`
	// The number of interactions required to pass the challenge. If unspecified, defaults to `3`.
	InteractionThreshold pulumi.IntInput `pulumi:"interactionThreshold"`
	// Enables or disables the JavaScript challenge Web Application Firewall feature.
	IsEnabled pulumi.BoolInput `pulumi:"isEnabled"`
	// When enabled, the user is identified not only by the IP address but also by an unique additional hash, which prevents blocking visitors with shared IP addresses.
	IsNatEnabled pulumi.BoolInput `pulumi:"isNatEnabled"`
	// The number of seconds to record the interactions from the user. If unspecified, defaults to `15`.
	RecordingPeriodInSeconds pulumi.IntInput `pulumi:"recordingPeriodInSeconds"`
	// Adds an additional HTTP header to requests that fail the challenge before being passed to the origin. Only applicable when the `action` is set to `DETECT`.
	SetHttpHeaders GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderArrayInput `pulumi:"setHttpHeaders"`
}

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeArgs) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeArgs) ToGetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeOutput

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeArgs) ToGetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeOutputWithContext

func (i GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeArgs) ToGetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeOutput

type GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeArray

type GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeArray []GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeInput

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeArray) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeArray) ToGetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeArrayOutput

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeArray) ToGetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeArrayOutputWithContext

func (i GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeArray) ToGetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeArrayInput

type GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeArrayInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeArrayOutput() GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeArrayOutput
	ToGetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeArrayOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeArrayOutput
}

GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeArrayInput is an input type that accepts GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeArray and GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeArrayOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeArrayInput` via:

GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeArray{ GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeArgs{...} }

type GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeArrayOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeArrayOutput) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeArrayOutput

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeArrayOutputWithContext

func (o GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSetting

type GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSetting struct {
	// If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.
	BlockAction string `pulumi:"blockAction"`
	// The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.
	BlockErrorPageCode string `pulumi:"blockErrorPageCode"`
	// The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`
	BlockErrorPageDescription string `pulumi:"blockErrorPageDescription"`
	// The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'
	BlockErrorPageMessage string `pulumi:"blockErrorPageMessage"`
	// The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.
	BlockResponseCode int `pulumi:"blockResponseCode"`
	// The text to show in the footer when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, default to `Enter the letters and numbers as they are shown in image above`.
	CaptchaFooter string `pulumi:"captchaFooter"`
	// The text to show in the header when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `We have detected an increased number of attempts to access this webapp. To help us keep this webapp secure, please let us know that you are not a robot by entering the text from captcha below.`
	CaptchaHeader string `pulumi:"captchaHeader"`
	// The text to show on the label of the CAPTCHA challenge submit button when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Yes, I am human`.
	CaptchaSubmitLabel string `pulumi:"captchaSubmitLabel"`
	// The title used when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Are you human?`
	CaptchaTitle string `pulumi:"captchaTitle"`
}

type GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingArgs

type GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingArgs struct {
	// If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.
	BlockAction pulumi.StringInput `pulumi:"blockAction"`
	// The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.
	BlockErrorPageCode pulumi.StringInput `pulumi:"blockErrorPageCode"`
	// The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`
	BlockErrorPageDescription pulumi.StringInput `pulumi:"blockErrorPageDescription"`
	// The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'
	BlockErrorPageMessage pulumi.StringInput `pulumi:"blockErrorPageMessage"`
	// The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.
	BlockResponseCode pulumi.IntInput `pulumi:"blockResponseCode"`
	// The text to show in the footer when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, default to `Enter the letters and numbers as they are shown in image above`.
	CaptchaFooter pulumi.StringInput `pulumi:"captchaFooter"`
	// The text to show in the header when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `We have detected an increased number of attempts to access this webapp. To help us keep this webapp secure, please let us know that you are not a robot by entering the text from captcha below.`
	CaptchaHeader pulumi.StringInput `pulumi:"captchaHeader"`
	// The text to show on the label of the CAPTCHA challenge submit button when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Yes, I am human`.
	CaptchaSubmitLabel pulumi.StringInput `pulumi:"captchaSubmitLabel"`
	// The title used when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Are you human?`
	CaptchaTitle pulumi.StringInput `pulumi:"captchaTitle"`
}

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingArgs) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingArgs) ToGetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingOutput

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingArgs) ToGetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingOutputWithContext

type GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingArray

type GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingArray []GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingInput

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingArray) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingArray) ToGetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingArrayOutput

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingArray) ToGetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingArrayOutputWithContext

type GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingArrayInput

type GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingArrayInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingArrayOutput() GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingArrayOutput
	ToGetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingArrayOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingArrayOutput
}

GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingArrayInput is an input type that accepts GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingArray and GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingArrayOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingArrayInput` via:

GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingArray{ GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingArgs{...} }

type GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingArrayOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingArrayOutput) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingArrayOutput

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingArrayOutputWithContext

type GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingInput

type GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingOutput() GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingOutput
	ToGetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingOutput
}

GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingInput is an input type that accepts GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingArgs and GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingInput` via:

GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingArgs{...}

type GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingOutput

type GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingOutput) BlockAction

If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingOutput) BlockErrorPageCode

The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingOutput) BlockErrorPageDescription

The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingOutput) BlockErrorPageMessage

The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingOutput) BlockResponseCode

The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingOutput) CaptchaFooter

The text to show in the footer when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, default to `Enter the letters and numbers as they are shown in image above`.

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingOutput) CaptchaHeader

The text to show in the header when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `We have detected an increased number of attempts to access this webapp. To help us keep this webapp secure, please let us know that you are not a robot by entering the text from captcha below.`

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingOutput) CaptchaSubmitLabel

The text to show on the label of the CAPTCHA challenge submit button when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Yes, I am human`.

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingOutput) CaptchaTitle

The title used when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Are you human?`

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingOutput) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingOutput) ToGetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingOutput

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingOutput) ToGetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingOutputWithContext

type GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeInput

type GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeOutput() GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeOutput
	ToGetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeOutput
}

GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeInput is an input type that accepts GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeArgs and GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeInput` via:

GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeArgs{...}

type GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeOutput

type GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeOutput) Action

The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeOutput) ActionExpirationInSeconds

The number of seconds between challenges from the same IP address. If unspecified, defaults to `60`.

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeOutput) ChallengeSettings

The challenge settings if `action` is set to `BLOCK`.

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeOutput) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeOutput) FailureThreshold

The number of failed requests before taking action. If unspecified, defaults to `10`.

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeOutput) FailureThresholdExpirationInSeconds

The number of seconds before the failure threshold resets. If unspecified, defaults to `60`.

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeOutput) InteractionThreshold

The number of interactions required to pass the challenge. If unspecified, defaults to `3`.

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeOutput) IsEnabled

Enables or disables the JavaScript challenge Web Application Firewall feature.

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeOutput) IsNatEnabled

When enabled, the user is identified not only by the IP address but also by an unique additional hash, which prevents blocking visitors with shared IP addresses.

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeOutput) RecordingPeriodInSeconds

The number of seconds to record the interactions from the user. If unspecified, defaults to `15`.

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeOutput) SetHttpHeaders

Adds an additional HTTP header to requests that fail the challenge before being passed to the origin. Only applicable when the `action` is set to `DETECT`.

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeOutput) ToGetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeOutput

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeOutput) ToGetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeOutputWithContext

func (o GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeOutput) ToGetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeOutput

type GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeader

type GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeader struct {
	// The unique name of the whitelist.
	Name string `pulumi:"name"`
	// The value of the header.
	Value string `pulumi:"value"`
}

type GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderArgs

type GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderArgs struct {
	// The unique name of the whitelist.
	Name pulumi.StringInput `pulumi:"name"`
	// The value of the header.
	Value pulumi.StringInput `pulumi:"value"`
}

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderArgs) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderArgs) ToGetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderArgs) ToGetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutputWithContext

type GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderArray

type GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderArray []GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderInput

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderArray) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderArray) ToGetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderArrayOutput

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderArray) ToGetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderArrayOutputWithContext

func (i GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderArray) ToGetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderArrayInput

type GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderArrayInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderArrayOutput() GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderArrayOutput
	ToGetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderArrayOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderArrayOutput
}

GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderArrayInput is an input type that accepts GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderArray and GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderArrayOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderArrayInput` via:

GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderArray{ GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderArgs{...} }

type GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderArrayOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderArrayOutput) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderArrayOutput

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderArrayOutputWithContext

type GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderInput

type GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput() GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput
	ToGetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput
}

GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderInput is an input type that accepts GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderArgs and GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderInput` via:

GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderArgs{...}

type GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput

type GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput) Name

The unique name of the whitelist.

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput) ToGetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput) ToGetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutputWithContext

func (GetWaasPoliciesWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput) Value

The value of the header.

type GetWaasPoliciesWaasPolicyWafConfigInput

type GetWaasPoliciesWaasPolicyWafConfigInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyWafConfigOutput() GetWaasPoliciesWaasPolicyWafConfigOutput
	ToGetWaasPoliciesWaasPolicyWafConfigOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyWafConfigOutput
}

GetWaasPoliciesWaasPolicyWafConfigInput is an input type that accepts GetWaasPoliciesWaasPolicyWafConfigArgs and GetWaasPoliciesWaasPolicyWafConfigOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyWafConfigInput` via:

GetWaasPoliciesWaasPolicyWafConfigArgs{...}

type GetWaasPoliciesWaasPolicyWafConfigJsChallenge

type GetWaasPoliciesWaasPolicyWafConfigJsChallenge struct {
	// The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.
	Action string `pulumi:"action"`
	// The number of seconds between challenges from the same IP address. If unspecified, defaults to `60`.
	ActionExpirationInSeconds int `pulumi:"actionExpirationInSeconds"`
	// When enabled, redirect responses from the origin will also be challenged. This will change HTTP 301/302 responses from origin to HTTP 200 with an HTML body containing JavaScript page redirection.
	AreRedirectsChallenged bool `pulumi:"areRedirectsChallenged"`
	// The challenge settings if `action` is set to `BLOCK`.
	ChallengeSettings []GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSetting `pulumi:"challengeSettings"`
	// When defined, the JavaScript Challenge would be applied only for the requests that matched all the listed conditions.
	Criterias []GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteria `pulumi:"criterias"`
	// The number of failed requests before taking action. If unspecified, defaults to `10`.
	FailureThreshold int `pulumi:"failureThreshold"`
	// Enables or disables the JavaScript challenge Web Application Firewall feature.
	IsEnabled bool `pulumi:"isEnabled"`
	// When enabled, the user is identified not only by the IP address but also by an unique additional hash, which prevents blocking visitors with shared IP addresses.
	IsNatEnabled bool `pulumi:"isNatEnabled"`
	// Adds an additional HTTP header to requests that fail the challenge before being passed to the origin. Only applicable when the `action` is set to `DETECT`.
	SetHttpHeaders []GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeader `pulumi:"setHttpHeaders"`
}

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeArgs

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeArgs struct {
	// The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.
	Action pulumi.StringInput `pulumi:"action"`
	// The number of seconds between challenges from the same IP address. If unspecified, defaults to `60`.
	ActionExpirationInSeconds pulumi.IntInput `pulumi:"actionExpirationInSeconds"`
	// When enabled, redirect responses from the origin will also be challenged. This will change HTTP 301/302 responses from origin to HTTP 200 with an HTML body containing JavaScript page redirection.
	AreRedirectsChallenged pulumi.BoolInput `pulumi:"areRedirectsChallenged"`
	// The challenge settings if `action` is set to `BLOCK`.
	ChallengeSettings GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingArrayInput `pulumi:"challengeSettings"`
	// When defined, the JavaScript Challenge would be applied only for the requests that matched all the listed conditions.
	Criterias GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaArrayInput `pulumi:"criterias"`
	// The number of failed requests before taking action. If unspecified, defaults to `10`.
	FailureThreshold pulumi.IntInput `pulumi:"failureThreshold"`
	// Enables or disables the JavaScript challenge Web Application Firewall feature.
	IsEnabled pulumi.BoolInput `pulumi:"isEnabled"`
	// When enabled, the user is identified not only by the IP address but also by an unique additional hash, which prevents blocking visitors with shared IP addresses.
	IsNatEnabled pulumi.BoolInput `pulumi:"isNatEnabled"`
	// Adds an additional HTTP header to requests that fail the challenge before being passed to the origin. Only applicable when the `action` is set to `DETECT`.
	SetHttpHeaders GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderArrayInput `pulumi:"setHttpHeaders"`
}

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeArgs) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeArgs) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeOutput

func (i GetWaasPoliciesWaasPolicyWafConfigJsChallengeArgs) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeOutput() GetWaasPoliciesWaasPolicyWafConfigJsChallengeOutput

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeArgs) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeOutputWithContext

func (i GetWaasPoliciesWaasPolicyWafConfigJsChallengeArgs) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigJsChallengeOutput

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeArray

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeArray []GetWaasPoliciesWaasPolicyWafConfigJsChallengeInput

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeArray) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeArray) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeArrayOutput

func (i GetWaasPoliciesWaasPolicyWafConfigJsChallengeArray) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeArrayOutput() GetWaasPoliciesWaasPolicyWafConfigJsChallengeArrayOutput

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeArray) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeArrayOutputWithContext

func (i GetWaasPoliciesWaasPolicyWafConfigJsChallengeArray) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigJsChallengeArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeArrayInput

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeArrayInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeArrayOutput() GetWaasPoliciesWaasPolicyWafConfigJsChallengeArrayOutput
	ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeArrayOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyWafConfigJsChallengeArrayOutput
}

GetWaasPoliciesWaasPolicyWafConfigJsChallengeArrayInput is an input type that accepts GetWaasPoliciesWaasPolicyWafConfigJsChallengeArray and GetWaasPoliciesWaasPolicyWafConfigJsChallengeArrayOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyWafConfigJsChallengeArrayInput` via:

GetWaasPoliciesWaasPolicyWafConfigJsChallengeArray{ GetWaasPoliciesWaasPolicyWafConfigJsChallengeArgs{...} }

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeArrayOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeArrayOutput) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeArrayOutput) Index

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeArrayOutput

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeArrayOutputWithContext

func (o GetWaasPoliciesWaasPolicyWafConfigJsChallengeArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigJsChallengeArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSetting

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSetting struct {
	// If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.
	BlockAction string `pulumi:"blockAction"`
	// The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.
	BlockErrorPageCode string `pulumi:"blockErrorPageCode"`
	// The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`
	BlockErrorPageDescription string `pulumi:"blockErrorPageDescription"`
	// The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'
	BlockErrorPageMessage string `pulumi:"blockErrorPageMessage"`
	// The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.
	BlockResponseCode int `pulumi:"blockResponseCode"`
	// The text to show in the footer when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, default to `Enter the letters and numbers as they are shown in image above`.
	CaptchaFooter string `pulumi:"captchaFooter"`
	// The text to show in the header when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `We have detected an increased number of attempts to access this webapp. To help us keep this webapp secure, please let us know that you are not a robot by entering the text from captcha below.`
	CaptchaHeader string `pulumi:"captchaHeader"`
	// The text to show on the label of the CAPTCHA challenge submit button when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Yes, I am human`.
	CaptchaSubmitLabel string `pulumi:"captchaSubmitLabel"`
	// The title used when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Are you human?`
	CaptchaTitle string `pulumi:"captchaTitle"`
}

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingArgs

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingArgs struct {
	// If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.
	BlockAction pulumi.StringInput `pulumi:"blockAction"`
	// The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.
	BlockErrorPageCode pulumi.StringInput `pulumi:"blockErrorPageCode"`
	// The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`
	BlockErrorPageDescription pulumi.StringInput `pulumi:"blockErrorPageDescription"`
	// The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'
	BlockErrorPageMessage pulumi.StringInput `pulumi:"blockErrorPageMessage"`
	// The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.
	BlockResponseCode pulumi.IntInput `pulumi:"blockResponseCode"`
	// The text to show in the footer when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, default to `Enter the letters and numbers as they are shown in image above`.
	CaptchaFooter pulumi.StringInput `pulumi:"captchaFooter"`
	// The text to show in the header when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `We have detected an increased number of attempts to access this webapp. To help us keep this webapp secure, please let us know that you are not a robot by entering the text from captcha below.`
	CaptchaHeader pulumi.StringInput `pulumi:"captchaHeader"`
	// The text to show on the label of the CAPTCHA challenge submit button when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Yes, I am human`.
	CaptchaSubmitLabel pulumi.StringInput `pulumi:"captchaSubmitLabel"`
	// The title used when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Are you human?`
	CaptchaTitle pulumi.StringInput `pulumi:"captchaTitle"`
}

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingArgs) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingArgs) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingOutput

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingArgs) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingOutputWithContext

func (i GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingArgs) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingOutput

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingArray

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingArray []GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingInput

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingArray) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingArray) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingArrayOutput

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingArray) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingArrayOutputWithContext

func (i GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingArray) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingArrayInput

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingArrayInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingArrayOutput() GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingArrayOutput
	ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingArrayOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingArrayOutput
}

GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingArrayInput is an input type that accepts GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingArray and GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingArrayOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingArrayInput` via:

GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingArray{ GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingArgs{...} }

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingArrayOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingArrayOutput) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingArrayOutput

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingArrayOutputWithContext

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingInput

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingOutput() GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingOutput
	ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingOutput
}

GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingInput is an input type that accepts GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingArgs and GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingInput` via:

GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingArgs{...}

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingOutput

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingOutput) BlockAction

If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingOutput) BlockErrorPageCode

The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingOutput) BlockErrorPageDescription

The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingOutput) BlockErrorPageMessage

The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingOutput) BlockResponseCode

The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingOutput) CaptchaFooter

The text to show in the footer when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, default to `Enter the letters and numbers as they are shown in image above`.

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingOutput) CaptchaHeader

The text to show in the header when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `We have detected an increased number of attempts to access this webapp. To help us keep this webapp secure, please let us know that you are not a robot by entering the text from captcha below.`

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingOutput) CaptchaSubmitLabel

The text to show on the label of the CAPTCHA challenge submit button when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Yes, I am human`.

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingOutput) CaptchaTitle

The title used when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Are you human?`

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingOutput) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingOutput) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingOutput

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingOutput) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingOutputWithContext

func (o GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingOutput) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigJsChallengeChallengeSettingOutput

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteria

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteria struct {
	// The criteria the access rule and JavaScript Challenge uses to determine if action should be taken on a request.
	// * **URL_IS:** Matches if the concatenation of request URL path and query is identical to the contents of the `value` field. URL must start with a `/`.
	// * **URL_IS_NOT:** Matches if the concatenation of request URL path and query is not identical to the contents of the `value` field. URL must start with a `/`.
	// * **URL_STARTS_WITH:** Matches if the concatenation of request URL path and query starts with the contents of the `value` field. URL must start with a `/`.
	// * **URL_PART_ENDS_WITH:** Matches if the concatenation of request URL path and query ends with the contents of the `value` field.
	// * **URL_PART_CONTAINS:** Matches if the concatenation of request URL path and query contains the contents of the `value` field.
	// * **URL_REGEX:** Matches if the concatenation of request URL path and query is described by the regular expression in the value field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org).
	// * **URL_DOES_NOT_MATCH_REGEX:** Matches if the concatenation of request URL path and query is not described by the regular expression in the `value` field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org).
	// * **URL_DOES_NOT_START_WITH:** Matches if the concatenation of request URL path and query does not start with the contents of the `value` field.
	// * **URL_PART_DOES_NOT_CONTAIN:** Matches if the concatenation of request URL path and query does not contain the contents of the `value` field.
	// * **URL_PART_DOES_NOT_END_WITH:** Matches if the concatenation of request URL path and query does not end with the contents of the `value` field.
	// * **IP_IS:** Matches if the request originates from one of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30"
	// * **IP_IS_NOT:** Matches if the request does not originate from any of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30"
	// * **IP_IN_LIST:** Matches if the request originates from one of the IP addresses contained in the referenced address list. The `value` in this case is OCID of the address list.
	// * **IP_NOT_IN_LIST:** Matches if the request does not originate from any IP address contained in the referenced address list. The `value` field in this case is OCID of the address list.
	// * **HTTP_HEADER_CONTAINS:** The HTTP_HEADER_CONTAINS criteria is defined using a compound value separated by a colon: a header field name and a header field value. `host:test.example.com` is an example of a criteria value where `host` is the header field name and `test.example.com` is the header field value. A request matches when the header field name is a case insensitive match and the header field value is a case insensitive, substring match. *Example:* With a criteria value of `host:test.example.com`, where `host` is the name of the field and `test.example.com` is the value of the host field, a request with the header values, `Host: www.test.example.com` will match, where as a request with header values of `host: www.example.com` or `host: test.sub.example.com` will not match.
	// * **HTTP_METHOD_IS:** Matches if the request method is identical to one of the values listed in field. The `value` in this case is string with one or multiple HTTP methods separated by new line symbol \n The list of available methods: `GET`, `HEAD`, `POST`, `PUT`, `DELETE`, `CONNECT`, `OPTIONS`, `TRACE`, `PATCH`
	Condition string `pulumi:"condition"`
	// When enabled, the condition will be matched with case-sensitive rules.
	IsCaseSensitive bool `pulumi:"isCaseSensitive"`
	// The value of the header.
	Value string `pulumi:"value"`
}

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaArgs

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaArgs struct {
	// The criteria the access rule and JavaScript Challenge uses to determine if action should be taken on a request.
	// * **URL_IS:** Matches if the concatenation of request URL path and query is identical to the contents of the `value` field. URL must start with a `/`.
	// * **URL_IS_NOT:** Matches if the concatenation of request URL path and query is not identical to the contents of the `value` field. URL must start with a `/`.
	// * **URL_STARTS_WITH:** Matches if the concatenation of request URL path and query starts with the contents of the `value` field. URL must start with a `/`.
	// * **URL_PART_ENDS_WITH:** Matches if the concatenation of request URL path and query ends with the contents of the `value` field.
	// * **URL_PART_CONTAINS:** Matches if the concatenation of request URL path and query contains the contents of the `value` field.
	// * **URL_REGEX:** Matches if the concatenation of request URL path and query is described by the regular expression in the value field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org).
	// * **URL_DOES_NOT_MATCH_REGEX:** Matches if the concatenation of request URL path and query is not described by the regular expression in the `value` field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org).
	// * **URL_DOES_NOT_START_WITH:** Matches if the concatenation of request URL path and query does not start with the contents of the `value` field.
	// * **URL_PART_DOES_NOT_CONTAIN:** Matches if the concatenation of request URL path and query does not contain the contents of the `value` field.
	// * **URL_PART_DOES_NOT_END_WITH:** Matches if the concatenation of request URL path and query does not end with the contents of the `value` field.
	// * **IP_IS:** Matches if the request originates from one of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30"
	// * **IP_IS_NOT:** Matches if the request does not originate from any of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30"
	// * **IP_IN_LIST:** Matches if the request originates from one of the IP addresses contained in the referenced address list. The `value` in this case is OCID of the address list.
	// * **IP_NOT_IN_LIST:** Matches if the request does not originate from any IP address contained in the referenced address list. The `value` field in this case is OCID of the address list.
	// * **HTTP_HEADER_CONTAINS:** The HTTP_HEADER_CONTAINS criteria is defined using a compound value separated by a colon: a header field name and a header field value. `host:test.example.com` is an example of a criteria value where `host` is the header field name and `test.example.com` is the header field value. A request matches when the header field name is a case insensitive match and the header field value is a case insensitive, substring match. *Example:* With a criteria value of `host:test.example.com`, where `host` is the name of the field and `test.example.com` is the value of the host field, a request with the header values, `Host: www.test.example.com` will match, where as a request with header values of `host: www.example.com` or `host: test.sub.example.com` will not match.
	// * **HTTP_METHOD_IS:** Matches if the request method is identical to one of the values listed in field. The `value` in this case is string with one or multiple HTTP methods separated by new line symbol \n The list of available methods: `GET`, `HEAD`, `POST`, `PUT`, `DELETE`, `CONNECT`, `OPTIONS`, `TRACE`, `PATCH`
	Condition pulumi.StringInput `pulumi:"condition"`
	// When enabled, the condition will be matched with case-sensitive rules.
	IsCaseSensitive pulumi.BoolInput `pulumi:"isCaseSensitive"`
	// The value of the header.
	Value pulumi.StringInput `pulumi:"value"`
}

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaArgs) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaArgs) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaOutput

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaArgs) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaOutputWithContext

func (i GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaArgs) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaOutput

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaArray

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaArray []GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaInput

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaArray) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaArray) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaArrayOutput

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaArray) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaArrayOutputWithContext

func (i GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaArray) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaArrayInput

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaArrayInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaArrayOutput() GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaArrayOutput
	ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaArrayOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaArrayOutput
}

GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaArrayInput is an input type that accepts GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaArray and GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaArrayOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaArrayInput` via:

GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaArray{ GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaArgs{...} }

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaArrayOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaArrayOutput) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaArrayOutput) Index

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaArrayOutput

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaArrayOutputWithContext

func (o GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaInput

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaOutput() GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaOutput
	ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaOutput
}

GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaInput is an input type that accepts GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaArgs and GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaInput` via:

GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaArgs{...}

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaOutput

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaOutput) Condition

The criteria the access rule and JavaScript Challenge uses to determine if action should be taken on a request. * **URL_IS:** Matches if the concatenation of request URL path and query is identical to the contents of the `value` field. URL must start with a `/`. * **URL_IS_NOT:** Matches if the concatenation of request URL path and query is not identical to the contents of the `value` field. URL must start with a `/`. * **URL_STARTS_WITH:** Matches if the concatenation of request URL path and query starts with the contents of the `value` field. URL must start with a `/`. * **URL_PART_ENDS_WITH:** Matches if the concatenation of request URL path and query ends with the contents of the `value` field. * **URL_PART_CONTAINS:** Matches if the concatenation of request URL path and query contains the contents of the `value` field. * **URL_REGEX:** Matches if the concatenation of request URL path and query is described by the regular expression in the value field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org). * **URL_DOES_NOT_MATCH_REGEX:** Matches if the concatenation of request URL path and query is not described by the regular expression in the `value` field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org). * **URL_DOES_NOT_START_WITH:** Matches if the concatenation of request URL path and query does not start with the contents of the `value` field. * **URL_PART_DOES_NOT_CONTAIN:** Matches if the concatenation of request URL path and query does not contain the contents of the `value` field. * **URL_PART_DOES_NOT_END_WITH:** Matches if the concatenation of request URL path and query does not end with the contents of the `value` field. * **IP_IS:** Matches if the request originates from one of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30" * **IP_IS_NOT:** Matches if the request does not originate from any of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30" * **IP_IN_LIST:** Matches if the request originates from one of the IP addresses contained in the referenced address list. The `value` in this case is OCID of the address list. * **IP_NOT_IN_LIST:** Matches if the request does not originate from any IP address contained in the referenced address list. The `value` field in this case is OCID of the address list. * **HTTP_HEADER_CONTAINS:** The HTTP_HEADER_CONTAINS criteria is defined using a compound value separated by a colon: a header field name and a header field value. `host:test.example.com` is an example of a criteria value where `host` is the header field name and `test.example.com` is the header field value. A request matches when the header field name is a case insensitive match and the header field value is a case insensitive, substring match. *Example:* With a criteria value of `host:test.example.com`, where `host` is the name of the field and `test.example.com` is the value of the host field, a request with the header values, `Host: www.test.example.com` will match, where as a request with header values of `host: www.example.com` or `host: test.sub.example.com` will not match. * **HTTP_METHOD_IS:** Matches if the request method is identical to one of the values listed in field. The `value` in this case is string with one or multiple HTTP methods separated by new line symbol \n The list of available methods: `GET`, `HEAD`, `POST`, `PUT`, `DELETE`, `CONNECT`, `OPTIONS`, `TRACE`, `PATCH`

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaOutput) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaOutput) IsCaseSensitive

When enabled, the condition will be matched with case-sensitive rules.

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaOutput) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaOutput

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaOutput) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaOutputWithContext

func (o GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaOutput) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaOutput

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeCriteriaOutput) Value

The value of the header.

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeInput

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeOutput() GetWaasPoliciesWaasPolicyWafConfigJsChallengeOutput
	ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyWafConfigJsChallengeOutput
}

GetWaasPoliciesWaasPolicyWafConfigJsChallengeInput is an input type that accepts GetWaasPoliciesWaasPolicyWafConfigJsChallengeArgs and GetWaasPoliciesWaasPolicyWafConfigJsChallengeOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyWafConfigJsChallengeInput` via:

GetWaasPoliciesWaasPolicyWafConfigJsChallengeArgs{...}

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeOutput

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeOutput) Action

The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeOutput) ActionExpirationInSeconds

The number of seconds between challenges from the same IP address. If unspecified, defaults to `60`.

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeOutput) AreRedirectsChallenged

When enabled, redirect responses from the origin will also be challenged. This will change HTTP 301/302 responses from origin to HTTP 200 with an HTML body containing JavaScript page redirection.

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeOutput) ChallengeSettings

The challenge settings if `action` is set to `BLOCK`.

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeOutput) Criterias

When defined, the JavaScript Challenge would be applied only for the requests that matched all the listed conditions.

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeOutput) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeOutput) FailureThreshold

The number of failed requests before taking action. If unspecified, defaults to `10`.

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeOutput) IsEnabled

Enables or disables the JavaScript challenge Web Application Firewall feature.

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeOutput) IsNatEnabled

When enabled, the user is identified not only by the IP address but also by an unique additional hash, which prevents blocking visitors with shared IP addresses.

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeOutput) SetHttpHeaders

Adds an additional HTTP header to requests that fail the challenge before being passed to the origin. Only applicable when the `action` is set to `DETECT`.

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeOutput) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeOutput

func (o GetWaasPoliciesWaasPolicyWafConfigJsChallengeOutput) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeOutput() GetWaasPoliciesWaasPolicyWafConfigJsChallengeOutput

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeOutput) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeOutputWithContext

func (o GetWaasPoliciesWaasPolicyWafConfigJsChallengeOutput) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigJsChallengeOutput

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeader

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeader struct {
	// The unique name of the whitelist.
	Name string `pulumi:"name"`
	// The value of the header.
	Value string `pulumi:"value"`
}

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderArgs

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderArgs struct {
	// The unique name of the whitelist.
	Name pulumi.StringInput `pulumi:"name"`
	// The value of the header.
	Value pulumi.StringInput `pulumi:"value"`
}

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderArgs) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderArgs) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderOutput

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderArgs) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderOutputWithContext

func (i GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderArgs) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderOutput

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderArray

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderArray []GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderInput

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderArray) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderArray) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderArrayOutput

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderArray) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderArrayOutputWithContext

func (i GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderArray) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderArrayInput

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderArrayInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderArrayOutput() GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderArrayOutput
	ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderArrayOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderArrayOutput
}

GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderArrayInput is an input type that accepts GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderArray and GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderArrayOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderArrayInput` via:

GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderArray{ GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderArgs{...} }

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderArrayOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderArrayOutput) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderArrayOutput

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderArrayOutputWithContext

func (o GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderInput

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderOutput() GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderOutput
	ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderOutput
}

GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderInput is an input type that accepts GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderArgs and GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderInput` via:

GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderArgs{...}

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderOutput

type GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderOutput) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderOutput) Name

The unique name of the whitelist.

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderOutput) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderOutput

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderOutput) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderOutputWithContext

func (o GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderOutput) ToGetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderOutput

func (GetWaasPoliciesWaasPolicyWafConfigJsChallengeSetHttpHeaderOutput) Value

The value of the header.

type GetWaasPoliciesWaasPolicyWafConfigOutput

type GetWaasPoliciesWaasPolicyWafConfigOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyWafConfigOutput) AccessRules

The access rules applied to the Web Application Firewall. Used for defining custom access policies with the combination of `ALLOW`, `DETECT`, and `BLOCK` rules, based on different criteria.

func (GetWaasPoliciesWaasPolicyWafConfigOutput) AddressRateLimitings

The IP address rate limiting settings used to limit the number of requests from an address.

func (GetWaasPoliciesWaasPolicyWafConfigOutput) CachingRules

A list of caching rules applied to the web application.

func (GetWaasPoliciesWaasPolicyWafConfigOutput) Captchas

A list of CAPTCHA challenge settings. These are used to challenge requests with a CAPTCHA to block bots.

func (GetWaasPoliciesWaasPolicyWafConfigOutput) CustomProtectionRules

A list of the custom protection rule OCIDs and their actions.

func (GetWaasPoliciesWaasPolicyWafConfigOutput) DeviceFingerprintChallenges

The device fingerprint challenge settings. Used to detect unique devices based on the device fingerprint information collected in order to block bots.

func (GetWaasPoliciesWaasPolicyWafConfigOutput) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigOutput) HumanInteractionChallenges

The human interaction challenge settings. Used to look for natural human interactions such as mouse movements, time on site, and page scrolling to identify bots.

func (GetWaasPoliciesWaasPolicyWafConfigOutput) JsChallenges

The JavaScript challenge settings. Used to challenge requests with a JavaScript challenge and take the action if a browser has no JavaScript support in order to block bots.

func (GetWaasPoliciesWaasPolicyWafConfigOutput) Origin

The key in the map of origins referencing the origin used for the Web Application Firewall. The origin must already be included in `Origins`. Required when creating the `WafConfig` resource, but not on update.

func (GetWaasPoliciesWaasPolicyWafConfigOutput) OriginGroups

The map of origin groups and their keys used to associate origins to the `wafConfig`. Origin groups allow you to apply weights to groups of origins for load balancing purposes. Origins with higher weights will receive larger proportions of client requests. To add additional origins to your WAAS policy, update the `origins` field of a `UpdateWaasPolicy` request.

func (GetWaasPoliciesWaasPolicyWafConfigOutput) ProtectionSettings

The settings to apply to protection rules.

func (GetWaasPoliciesWaasPolicyWafConfigOutput) ToGetWaasPoliciesWaasPolicyWafConfigOutput

func (o GetWaasPoliciesWaasPolicyWafConfigOutput) ToGetWaasPoliciesWaasPolicyWafConfigOutput() GetWaasPoliciesWaasPolicyWafConfigOutput

func (GetWaasPoliciesWaasPolicyWafConfigOutput) ToGetWaasPoliciesWaasPolicyWafConfigOutputWithContext

func (o GetWaasPoliciesWaasPolicyWafConfigOutput) ToGetWaasPoliciesWaasPolicyWafConfigOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigOutput

func (GetWaasPoliciesWaasPolicyWafConfigOutput) Whitelists

A list of IP addresses that bypass the Web Application Firewall.

type GetWaasPoliciesWaasPolicyWafConfigProtectionSetting

type GetWaasPoliciesWaasPolicyWafConfigProtectionSetting struct {
	// The list of allowed HTTP methods. If unspecified, default to `[OPTIONS, GET, HEAD, POST]`. This setting only applies if a corresponding protection rule is enabled, such as the "Restrict HTTP Request Methods" rule (key: 911100).
	AllowedHttpMethods []string `pulumi:"allowedHttpMethods"`
	// If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.
	BlockAction string `pulumi:"blockAction"`
	// The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.
	BlockErrorPageCode string `pulumi:"blockErrorPageCode"`
	// The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`
	BlockErrorPageDescription string `pulumi:"blockErrorPageDescription"`
	// The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'
	BlockErrorPageMessage string `pulumi:"blockErrorPageMessage"`
	// The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.
	BlockResponseCode int `pulumi:"blockResponseCode"`
	// Inspects the response body of origin responses. Can be used to detect leakage of sensitive data. If unspecified, defaults to `false`.
	IsResponseInspected bool `pulumi:"isResponseInspected"`
	// The maximum number of arguments allowed to be passed to your application before an action is taken. Arguements are query parameters or body parameters in a PUT or POST request. If unspecified, defaults to `255`. This setting only applies if a corresponding protection rule is enabled, such as the "Number of Arguments Limits" rule (key: 960335).  Example: If `maxArgumentCount` to `2` for the Max Number of Arguments protection rule (key: 960335), the following requests would be blocked: `GET /myapp/path?query=one&query=two&query=three` `POST /myapp/path` with Body `{"argument1":"one","argument2":"two","argument3":"three"}`
	MaxArgumentCount int `pulumi:"maxArgumentCount"`
	// The maximum length allowed for each argument name, in characters. Arguements are query parameters or body parameters in a PUT or POST request. If unspecified, defaults to `400`. This setting only applies if a corresponding protection rule is enabled, such as the "Values Limits" rule (key: 960208).
	MaxNameLengthPerArgument int `pulumi:"maxNameLengthPerArgument"`
	// The maximum response size to be fully inspected, in binary kilobytes (KiB). Anything over this limit will be partially inspected. If unspecified, defaults to `1024`.
	MaxResponseSizeInKiB int `pulumi:"maxResponseSizeInKiB"`
	// The maximum length allowed for the sum of the argument name and value, in characters. Arguements are query parameters or body parameters in a PUT or POST request. If unspecified, defaults to `64000`. This setting only applies if a corresponding protection rule is enabled, such as the "Total Arguments Limits" rule (key: 960341).
	MaxTotalNameLengthOfArguments int `pulumi:"maxTotalNameLengthOfArguments"`
	// The list of media types to allow for inspection, if `isResponseInspected` is enabled. Only responses with MIME types in this list will be inspected. If unspecified, defaults to `["text/html", "text/plain", "text/xml"]`.
	MediaTypes []string `pulumi:"mediaTypes"`
	// The length of time to analyze traffic traffic, in days. After the analysis period, `WafRecommendations` will be populated. If unspecified, defaults to `10`.
	RecommendationsPeriodInDays int `pulumi:"recommendationsPeriodInDays"`
}

type GetWaasPoliciesWaasPolicyWafConfigProtectionSettingArgs

type GetWaasPoliciesWaasPolicyWafConfigProtectionSettingArgs struct {
	// The list of allowed HTTP methods. If unspecified, default to `[OPTIONS, GET, HEAD, POST]`. This setting only applies if a corresponding protection rule is enabled, such as the "Restrict HTTP Request Methods" rule (key: 911100).
	AllowedHttpMethods pulumi.StringArrayInput `pulumi:"allowedHttpMethods"`
	// If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.
	BlockAction pulumi.StringInput `pulumi:"blockAction"`
	// The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.
	BlockErrorPageCode pulumi.StringInput `pulumi:"blockErrorPageCode"`
	// The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`
	BlockErrorPageDescription pulumi.StringInput `pulumi:"blockErrorPageDescription"`
	// The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'
	BlockErrorPageMessage pulumi.StringInput `pulumi:"blockErrorPageMessage"`
	// The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.
	BlockResponseCode pulumi.IntInput `pulumi:"blockResponseCode"`
	// Inspects the response body of origin responses. Can be used to detect leakage of sensitive data. If unspecified, defaults to `false`.
	IsResponseInspected pulumi.BoolInput `pulumi:"isResponseInspected"`
	// The maximum number of arguments allowed to be passed to your application before an action is taken. Arguements are query parameters or body parameters in a PUT or POST request. If unspecified, defaults to `255`. This setting only applies if a corresponding protection rule is enabled, such as the "Number of Arguments Limits" rule (key: 960335).  Example: If `maxArgumentCount` to `2` for the Max Number of Arguments protection rule (key: 960335), the following requests would be blocked: `GET /myapp/path?query=one&query=two&query=three` `POST /myapp/path` with Body `{"argument1":"one","argument2":"two","argument3":"three"}`
	MaxArgumentCount pulumi.IntInput `pulumi:"maxArgumentCount"`
	// The maximum length allowed for each argument name, in characters. Arguements are query parameters or body parameters in a PUT or POST request. If unspecified, defaults to `400`. This setting only applies if a corresponding protection rule is enabled, such as the "Values Limits" rule (key: 960208).
	MaxNameLengthPerArgument pulumi.IntInput `pulumi:"maxNameLengthPerArgument"`
	// The maximum response size to be fully inspected, in binary kilobytes (KiB). Anything over this limit will be partially inspected. If unspecified, defaults to `1024`.
	MaxResponseSizeInKiB pulumi.IntInput `pulumi:"maxResponseSizeInKiB"`
	// The maximum length allowed for the sum of the argument name and value, in characters. Arguements are query parameters or body parameters in a PUT or POST request. If unspecified, defaults to `64000`. This setting only applies if a corresponding protection rule is enabled, such as the "Total Arguments Limits" rule (key: 960341).
	MaxTotalNameLengthOfArguments pulumi.IntInput `pulumi:"maxTotalNameLengthOfArguments"`
	// The list of media types to allow for inspection, if `isResponseInspected` is enabled. Only responses with MIME types in this list will be inspected. If unspecified, defaults to `["text/html", "text/plain", "text/xml"]`.
	MediaTypes pulumi.StringArrayInput `pulumi:"mediaTypes"`
	// The length of time to analyze traffic traffic, in days. After the analysis period, `WafRecommendations` will be populated. If unspecified, defaults to `10`.
	RecommendationsPeriodInDays pulumi.IntInput `pulumi:"recommendationsPeriodInDays"`
}

func (GetWaasPoliciesWaasPolicyWafConfigProtectionSettingArgs) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigProtectionSettingArgs) ToGetWaasPoliciesWaasPolicyWafConfigProtectionSettingOutput

func (GetWaasPoliciesWaasPolicyWafConfigProtectionSettingArgs) ToGetWaasPoliciesWaasPolicyWafConfigProtectionSettingOutputWithContext

func (i GetWaasPoliciesWaasPolicyWafConfigProtectionSettingArgs) ToGetWaasPoliciesWaasPolicyWafConfigProtectionSettingOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigProtectionSettingOutput

type GetWaasPoliciesWaasPolicyWafConfigProtectionSettingArray

type GetWaasPoliciesWaasPolicyWafConfigProtectionSettingArray []GetWaasPoliciesWaasPolicyWafConfigProtectionSettingInput

func (GetWaasPoliciesWaasPolicyWafConfigProtectionSettingArray) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigProtectionSettingArray) ToGetWaasPoliciesWaasPolicyWafConfigProtectionSettingArrayOutput

func (i GetWaasPoliciesWaasPolicyWafConfigProtectionSettingArray) ToGetWaasPoliciesWaasPolicyWafConfigProtectionSettingArrayOutput() GetWaasPoliciesWaasPolicyWafConfigProtectionSettingArrayOutput

func (GetWaasPoliciesWaasPolicyWafConfigProtectionSettingArray) ToGetWaasPoliciesWaasPolicyWafConfigProtectionSettingArrayOutputWithContext

func (i GetWaasPoliciesWaasPolicyWafConfigProtectionSettingArray) ToGetWaasPoliciesWaasPolicyWafConfigProtectionSettingArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigProtectionSettingArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigProtectionSettingArrayInput

type GetWaasPoliciesWaasPolicyWafConfigProtectionSettingArrayInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyWafConfigProtectionSettingArrayOutput() GetWaasPoliciesWaasPolicyWafConfigProtectionSettingArrayOutput
	ToGetWaasPoliciesWaasPolicyWafConfigProtectionSettingArrayOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyWafConfigProtectionSettingArrayOutput
}

GetWaasPoliciesWaasPolicyWafConfigProtectionSettingArrayInput is an input type that accepts GetWaasPoliciesWaasPolicyWafConfigProtectionSettingArray and GetWaasPoliciesWaasPolicyWafConfigProtectionSettingArrayOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyWafConfigProtectionSettingArrayInput` via:

GetWaasPoliciesWaasPolicyWafConfigProtectionSettingArray{ GetWaasPoliciesWaasPolicyWafConfigProtectionSettingArgs{...} }

type GetWaasPoliciesWaasPolicyWafConfigProtectionSettingArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigProtectionSettingArrayOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyWafConfigProtectionSettingArrayOutput) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigProtectionSettingArrayOutput) Index

func (GetWaasPoliciesWaasPolicyWafConfigProtectionSettingArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigProtectionSettingArrayOutput

func (GetWaasPoliciesWaasPolicyWafConfigProtectionSettingArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigProtectionSettingArrayOutputWithContext

func (o GetWaasPoliciesWaasPolicyWafConfigProtectionSettingArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigProtectionSettingArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigProtectionSettingArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigProtectionSettingInput

type GetWaasPoliciesWaasPolicyWafConfigProtectionSettingInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyWafConfigProtectionSettingOutput() GetWaasPoliciesWaasPolicyWafConfigProtectionSettingOutput
	ToGetWaasPoliciesWaasPolicyWafConfigProtectionSettingOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyWafConfigProtectionSettingOutput
}

GetWaasPoliciesWaasPolicyWafConfigProtectionSettingInput is an input type that accepts GetWaasPoliciesWaasPolicyWafConfigProtectionSettingArgs and GetWaasPoliciesWaasPolicyWafConfigProtectionSettingOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyWafConfigProtectionSettingInput` via:

GetWaasPoliciesWaasPolicyWafConfigProtectionSettingArgs{...}

type GetWaasPoliciesWaasPolicyWafConfigProtectionSettingOutput

type GetWaasPoliciesWaasPolicyWafConfigProtectionSettingOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyWafConfigProtectionSettingOutput) AllowedHttpMethods

The list of allowed HTTP methods. If unspecified, default to `[OPTIONS, GET, HEAD, POST]`. This setting only applies if a corresponding protection rule is enabled, such as the "Restrict HTTP Request Methods" rule (key: 911100).

func (GetWaasPoliciesWaasPolicyWafConfigProtectionSettingOutput) BlockAction

If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.

func (GetWaasPoliciesWaasPolicyWafConfigProtectionSettingOutput) BlockErrorPageCode

The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.

func (GetWaasPoliciesWaasPolicyWafConfigProtectionSettingOutput) BlockErrorPageDescription

The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`

func (GetWaasPoliciesWaasPolicyWafConfigProtectionSettingOutput) BlockErrorPageMessage

The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'

func (GetWaasPoliciesWaasPolicyWafConfigProtectionSettingOutput) BlockResponseCode

The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.

func (GetWaasPoliciesWaasPolicyWafConfigProtectionSettingOutput) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigProtectionSettingOutput) IsResponseInspected

Inspects the response body of origin responses. Can be used to detect leakage of sensitive data. If unspecified, defaults to `false`.

func (GetWaasPoliciesWaasPolicyWafConfigProtectionSettingOutput) MaxArgumentCount

The maximum number of arguments allowed to be passed to your application before an action is taken. Arguements are query parameters or body parameters in a PUT or POST request. If unspecified, defaults to `255`. This setting only applies if a corresponding protection rule is enabled, such as the "Number of Arguments Limits" rule (key: 960335). Example: If `maxArgumentCount` to `2` for the Max Number of Arguments protection rule (key: 960335), the following requests would be blocked: `GET /myapp/path?query=one&query=two&query=three` `POST /myapp/path` with Body `{"argument1":"one","argument2":"two","argument3":"three"}`

func (GetWaasPoliciesWaasPolicyWafConfigProtectionSettingOutput) MaxNameLengthPerArgument

The maximum length allowed for each argument name, in characters. Arguements are query parameters or body parameters in a PUT or POST request. If unspecified, defaults to `400`. This setting only applies if a corresponding protection rule is enabled, such as the "Values Limits" rule (key: 960208).

func (GetWaasPoliciesWaasPolicyWafConfigProtectionSettingOutput) MaxResponseSizeInKiB

The maximum response size to be fully inspected, in binary kilobytes (KiB). Anything over this limit will be partially inspected. If unspecified, defaults to `1024`.

func (GetWaasPoliciesWaasPolicyWafConfigProtectionSettingOutput) MaxTotalNameLengthOfArguments

The maximum length allowed for the sum of the argument name and value, in characters. Arguements are query parameters or body parameters in a PUT or POST request. If unspecified, defaults to `64000`. This setting only applies if a corresponding protection rule is enabled, such as the "Total Arguments Limits" rule (key: 960341).

func (GetWaasPoliciesWaasPolicyWafConfigProtectionSettingOutput) MediaTypes

The list of media types to allow for inspection, if `isResponseInspected` is enabled. Only responses with MIME types in this list will be inspected. If unspecified, defaults to `["text/html", "text/plain", "text/xml"]`.

func (GetWaasPoliciesWaasPolicyWafConfigProtectionSettingOutput) RecommendationsPeriodInDays

The length of time to analyze traffic traffic, in days. After the analysis period, `WafRecommendations` will be populated. If unspecified, defaults to `10`.

func (GetWaasPoliciesWaasPolicyWafConfigProtectionSettingOutput) ToGetWaasPoliciesWaasPolicyWafConfigProtectionSettingOutput

func (GetWaasPoliciesWaasPolicyWafConfigProtectionSettingOutput) ToGetWaasPoliciesWaasPolicyWafConfigProtectionSettingOutputWithContext

func (o GetWaasPoliciesWaasPolicyWafConfigProtectionSettingOutput) ToGetWaasPoliciesWaasPolicyWafConfigProtectionSettingOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigProtectionSettingOutput

type GetWaasPoliciesWaasPolicyWafConfigWhitelist

type GetWaasPoliciesWaasPolicyWafConfigWhitelist struct {
	// A list of [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of IP address lists to include in the whitelist.
	AddressLists []string `pulumi:"addressLists"`
	// A set of IP addresses or CIDR notations to include in the whitelist.
	Addresses []string `pulumi:"addresses"`
	// The unique name of the whitelist.
	Name string `pulumi:"name"`
}

type GetWaasPoliciesWaasPolicyWafConfigWhitelistArgs

type GetWaasPoliciesWaasPolicyWafConfigWhitelistArgs struct {
	// A list of [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of IP address lists to include in the whitelist.
	AddressLists pulumi.StringArrayInput `pulumi:"addressLists"`
	// A set of IP addresses or CIDR notations to include in the whitelist.
	Addresses pulumi.StringArrayInput `pulumi:"addresses"`
	// The unique name of the whitelist.
	Name pulumi.StringInput `pulumi:"name"`
}

func (GetWaasPoliciesWaasPolicyWafConfigWhitelistArgs) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigWhitelistArgs) ToGetWaasPoliciesWaasPolicyWafConfigWhitelistOutput

func (i GetWaasPoliciesWaasPolicyWafConfigWhitelistArgs) ToGetWaasPoliciesWaasPolicyWafConfigWhitelistOutput() GetWaasPoliciesWaasPolicyWafConfigWhitelistOutput

func (GetWaasPoliciesWaasPolicyWafConfigWhitelistArgs) ToGetWaasPoliciesWaasPolicyWafConfigWhitelistOutputWithContext

func (i GetWaasPoliciesWaasPolicyWafConfigWhitelistArgs) ToGetWaasPoliciesWaasPolicyWafConfigWhitelistOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigWhitelistOutput

type GetWaasPoliciesWaasPolicyWafConfigWhitelistArray

type GetWaasPoliciesWaasPolicyWafConfigWhitelistArray []GetWaasPoliciesWaasPolicyWafConfigWhitelistInput

func (GetWaasPoliciesWaasPolicyWafConfigWhitelistArray) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigWhitelistArray) ToGetWaasPoliciesWaasPolicyWafConfigWhitelistArrayOutput

func (i GetWaasPoliciesWaasPolicyWafConfigWhitelistArray) ToGetWaasPoliciesWaasPolicyWafConfigWhitelistArrayOutput() GetWaasPoliciesWaasPolicyWafConfigWhitelistArrayOutput

func (GetWaasPoliciesWaasPolicyWafConfigWhitelistArray) ToGetWaasPoliciesWaasPolicyWafConfigWhitelistArrayOutputWithContext

func (i GetWaasPoliciesWaasPolicyWafConfigWhitelistArray) ToGetWaasPoliciesWaasPolicyWafConfigWhitelistArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigWhitelistArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigWhitelistArrayInput

type GetWaasPoliciesWaasPolicyWafConfigWhitelistArrayInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyWafConfigWhitelistArrayOutput() GetWaasPoliciesWaasPolicyWafConfigWhitelistArrayOutput
	ToGetWaasPoliciesWaasPolicyWafConfigWhitelistArrayOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyWafConfigWhitelistArrayOutput
}

GetWaasPoliciesWaasPolicyWafConfigWhitelistArrayInput is an input type that accepts GetWaasPoliciesWaasPolicyWafConfigWhitelistArray and GetWaasPoliciesWaasPolicyWafConfigWhitelistArrayOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyWafConfigWhitelistArrayInput` via:

GetWaasPoliciesWaasPolicyWafConfigWhitelistArray{ GetWaasPoliciesWaasPolicyWafConfigWhitelistArgs{...} }

type GetWaasPoliciesWaasPolicyWafConfigWhitelistArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigWhitelistArrayOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyWafConfigWhitelistArrayOutput) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigWhitelistArrayOutput) Index

func (GetWaasPoliciesWaasPolicyWafConfigWhitelistArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigWhitelistArrayOutput

func (GetWaasPoliciesWaasPolicyWafConfigWhitelistArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigWhitelistArrayOutputWithContext

func (o GetWaasPoliciesWaasPolicyWafConfigWhitelistArrayOutput) ToGetWaasPoliciesWaasPolicyWafConfigWhitelistArrayOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigWhitelistArrayOutput

type GetWaasPoliciesWaasPolicyWafConfigWhitelistInput

type GetWaasPoliciesWaasPolicyWafConfigWhitelistInput interface {
	pulumi.Input

	ToGetWaasPoliciesWaasPolicyWafConfigWhitelistOutput() GetWaasPoliciesWaasPolicyWafConfigWhitelistOutput
	ToGetWaasPoliciesWaasPolicyWafConfigWhitelistOutputWithContext(context.Context) GetWaasPoliciesWaasPolicyWafConfigWhitelistOutput
}

GetWaasPoliciesWaasPolicyWafConfigWhitelistInput is an input type that accepts GetWaasPoliciesWaasPolicyWafConfigWhitelistArgs and GetWaasPoliciesWaasPolicyWafConfigWhitelistOutput values. You can construct a concrete instance of `GetWaasPoliciesWaasPolicyWafConfigWhitelistInput` via:

GetWaasPoliciesWaasPolicyWafConfigWhitelistArgs{...}

type GetWaasPoliciesWaasPolicyWafConfigWhitelistOutput

type GetWaasPoliciesWaasPolicyWafConfigWhitelistOutput struct{ *pulumi.OutputState }

func (GetWaasPoliciesWaasPolicyWafConfigWhitelistOutput) AddressLists

A list of [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of IP address lists to include in the whitelist.

func (GetWaasPoliciesWaasPolicyWafConfigWhitelistOutput) Addresses

A set of IP addresses or CIDR notations to include in the whitelist.

func (GetWaasPoliciesWaasPolicyWafConfigWhitelistOutput) ElementType

func (GetWaasPoliciesWaasPolicyWafConfigWhitelistOutput) Name

The unique name of the whitelist.

func (GetWaasPoliciesWaasPolicyWafConfigWhitelistOutput) ToGetWaasPoliciesWaasPolicyWafConfigWhitelistOutput

func (o GetWaasPoliciesWaasPolicyWafConfigWhitelistOutput) ToGetWaasPoliciesWaasPolicyWafConfigWhitelistOutput() GetWaasPoliciesWaasPolicyWafConfigWhitelistOutput

func (GetWaasPoliciesWaasPolicyWafConfigWhitelistOutput) ToGetWaasPoliciesWaasPolicyWafConfigWhitelistOutputWithContext

func (o GetWaasPoliciesWaasPolicyWafConfigWhitelistOutput) ToGetWaasPoliciesWaasPolicyWafConfigWhitelistOutputWithContext(ctx context.Context) GetWaasPoliciesWaasPolicyWafConfigWhitelistOutput

type GetWaasPolicyArgs

type GetWaasPolicyArgs struct {
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the WAAS policy.
	WaasPolicyId string `pulumi:"waasPolicyId"`
}

A collection of arguments for invoking getWaasPolicy.

type GetWaasPolicyOrigin

type GetWaasPolicyOrigin struct {
	// A list of HTTP headers to forward to your origin.
	CustomHeaders []GetWaasPolicyOriginCustomHeader `pulumi:"customHeaders"`
	// The HTTP port on the origin that the web application listens on. If unspecified, defaults to `80`. If `0` is specified - the origin is not used for HTTP traffic.
	HttpPort *int `pulumi:"httpPort"`
	// The HTTPS port on the origin that the web application listens on. If unspecified, defaults to `443`. If `0` is specified - the origin is not used for HTTPS traffic.
	HttpsPort *int   `pulumi:"httpsPort"`
	Label     string `pulumi:"label"`
	// The URI of the origin. Does not support paths. Port numbers should be specified in the `httpPort` and `httpsPort` fields.
	Uri string `pulumi:"uri"`
}

type GetWaasPolicyOriginArgs

type GetWaasPolicyOriginArgs struct {
	// A list of HTTP headers to forward to your origin.
	CustomHeaders GetWaasPolicyOriginCustomHeaderArrayInput `pulumi:"customHeaders"`
	// The HTTP port on the origin that the web application listens on. If unspecified, defaults to `80`. If `0` is specified - the origin is not used for HTTP traffic.
	HttpPort pulumi.IntPtrInput `pulumi:"httpPort"`
	// The HTTPS port on the origin that the web application listens on. If unspecified, defaults to `443`. If `0` is specified - the origin is not used for HTTPS traffic.
	HttpsPort pulumi.IntPtrInput `pulumi:"httpsPort"`
	Label     pulumi.StringInput `pulumi:"label"`
	// The URI of the origin. Does not support paths. Port numbers should be specified in the `httpPort` and `httpsPort` fields.
	Uri pulumi.StringInput `pulumi:"uri"`
}

func (GetWaasPolicyOriginArgs) ElementType

func (GetWaasPolicyOriginArgs) ElementType() reflect.Type

func (GetWaasPolicyOriginArgs) ToGetWaasPolicyOriginOutput

func (i GetWaasPolicyOriginArgs) ToGetWaasPolicyOriginOutput() GetWaasPolicyOriginOutput

func (GetWaasPolicyOriginArgs) ToGetWaasPolicyOriginOutputWithContext

func (i GetWaasPolicyOriginArgs) ToGetWaasPolicyOriginOutputWithContext(ctx context.Context) GetWaasPolicyOriginOutput

type GetWaasPolicyOriginArray

type GetWaasPolicyOriginArray []GetWaasPolicyOriginInput

func (GetWaasPolicyOriginArray) ElementType

func (GetWaasPolicyOriginArray) ElementType() reflect.Type

func (GetWaasPolicyOriginArray) ToGetWaasPolicyOriginArrayOutput

func (i GetWaasPolicyOriginArray) ToGetWaasPolicyOriginArrayOutput() GetWaasPolicyOriginArrayOutput

func (GetWaasPolicyOriginArray) ToGetWaasPolicyOriginArrayOutputWithContext

func (i GetWaasPolicyOriginArray) ToGetWaasPolicyOriginArrayOutputWithContext(ctx context.Context) GetWaasPolicyOriginArrayOutput

type GetWaasPolicyOriginArrayInput

type GetWaasPolicyOriginArrayInput interface {
	pulumi.Input

	ToGetWaasPolicyOriginArrayOutput() GetWaasPolicyOriginArrayOutput
	ToGetWaasPolicyOriginArrayOutputWithContext(context.Context) GetWaasPolicyOriginArrayOutput
}

GetWaasPolicyOriginArrayInput is an input type that accepts GetWaasPolicyOriginArray and GetWaasPolicyOriginArrayOutput values. You can construct a concrete instance of `GetWaasPolicyOriginArrayInput` via:

GetWaasPolicyOriginArray{ GetWaasPolicyOriginArgs{...} }

type GetWaasPolicyOriginArrayOutput

type GetWaasPolicyOriginArrayOutput struct{ *pulumi.OutputState }

func (GetWaasPolicyOriginArrayOutput) ElementType

func (GetWaasPolicyOriginArrayOutput) Index

func (GetWaasPolicyOriginArrayOutput) ToGetWaasPolicyOriginArrayOutput

func (o GetWaasPolicyOriginArrayOutput) ToGetWaasPolicyOriginArrayOutput() GetWaasPolicyOriginArrayOutput

func (GetWaasPolicyOriginArrayOutput) ToGetWaasPolicyOriginArrayOutputWithContext

func (o GetWaasPolicyOriginArrayOutput) ToGetWaasPolicyOriginArrayOutputWithContext(ctx context.Context) GetWaasPolicyOriginArrayOutput

type GetWaasPolicyOriginCustomHeader

type GetWaasPolicyOriginCustomHeader struct {
	// The unique name of the whitelist.
	Name string `pulumi:"name"`
	// The value of the header.
	Value string `pulumi:"value"`
}

type GetWaasPolicyOriginCustomHeaderArgs

type GetWaasPolicyOriginCustomHeaderArgs struct {
	// The unique name of the whitelist.
	Name pulumi.StringInput `pulumi:"name"`
	// The value of the header.
	Value pulumi.StringInput `pulumi:"value"`
}

func (GetWaasPolicyOriginCustomHeaderArgs) ElementType

func (GetWaasPolicyOriginCustomHeaderArgs) ToGetWaasPolicyOriginCustomHeaderOutput

func (i GetWaasPolicyOriginCustomHeaderArgs) ToGetWaasPolicyOriginCustomHeaderOutput() GetWaasPolicyOriginCustomHeaderOutput

func (GetWaasPolicyOriginCustomHeaderArgs) ToGetWaasPolicyOriginCustomHeaderOutputWithContext

func (i GetWaasPolicyOriginCustomHeaderArgs) ToGetWaasPolicyOriginCustomHeaderOutputWithContext(ctx context.Context) GetWaasPolicyOriginCustomHeaderOutput

type GetWaasPolicyOriginCustomHeaderArray

type GetWaasPolicyOriginCustomHeaderArray []GetWaasPolicyOriginCustomHeaderInput

func (GetWaasPolicyOriginCustomHeaderArray) ElementType

func (GetWaasPolicyOriginCustomHeaderArray) ToGetWaasPolicyOriginCustomHeaderArrayOutput

func (i GetWaasPolicyOriginCustomHeaderArray) ToGetWaasPolicyOriginCustomHeaderArrayOutput() GetWaasPolicyOriginCustomHeaderArrayOutput

func (GetWaasPolicyOriginCustomHeaderArray) ToGetWaasPolicyOriginCustomHeaderArrayOutputWithContext

func (i GetWaasPolicyOriginCustomHeaderArray) ToGetWaasPolicyOriginCustomHeaderArrayOutputWithContext(ctx context.Context) GetWaasPolicyOriginCustomHeaderArrayOutput

type GetWaasPolicyOriginCustomHeaderArrayInput

type GetWaasPolicyOriginCustomHeaderArrayInput interface {
	pulumi.Input

	ToGetWaasPolicyOriginCustomHeaderArrayOutput() GetWaasPolicyOriginCustomHeaderArrayOutput
	ToGetWaasPolicyOriginCustomHeaderArrayOutputWithContext(context.Context) GetWaasPolicyOriginCustomHeaderArrayOutput
}

GetWaasPolicyOriginCustomHeaderArrayInput is an input type that accepts GetWaasPolicyOriginCustomHeaderArray and GetWaasPolicyOriginCustomHeaderArrayOutput values. You can construct a concrete instance of `GetWaasPolicyOriginCustomHeaderArrayInput` via:

GetWaasPolicyOriginCustomHeaderArray{ GetWaasPolicyOriginCustomHeaderArgs{...} }

type GetWaasPolicyOriginCustomHeaderArrayOutput

type GetWaasPolicyOriginCustomHeaderArrayOutput struct{ *pulumi.OutputState }

func (GetWaasPolicyOriginCustomHeaderArrayOutput) ElementType

func (GetWaasPolicyOriginCustomHeaderArrayOutput) Index

func (GetWaasPolicyOriginCustomHeaderArrayOutput) ToGetWaasPolicyOriginCustomHeaderArrayOutput

func (o GetWaasPolicyOriginCustomHeaderArrayOutput) ToGetWaasPolicyOriginCustomHeaderArrayOutput() GetWaasPolicyOriginCustomHeaderArrayOutput

func (GetWaasPolicyOriginCustomHeaderArrayOutput) ToGetWaasPolicyOriginCustomHeaderArrayOutputWithContext

func (o GetWaasPolicyOriginCustomHeaderArrayOutput) ToGetWaasPolicyOriginCustomHeaderArrayOutputWithContext(ctx context.Context) GetWaasPolicyOriginCustomHeaderArrayOutput

type GetWaasPolicyOriginCustomHeaderInput

type GetWaasPolicyOriginCustomHeaderInput interface {
	pulumi.Input

	ToGetWaasPolicyOriginCustomHeaderOutput() GetWaasPolicyOriginCustomHeaderOutput
	ToGetWaasPolicyOriginCustomHeaderOutputWithContext(context.Context) GetWaasPolicyOriginCustomHeaderOutput
}

GetWaasPolicyOriginCustomHeaderInput is an input type that accepts GetWaasPolicyOriginCustomHeaderArgs and GetWaasPolicyOriginCustomHeaderOutput values. You can construct a concrete instance of `GetWaasPolicyOriginCustomHeaderInput` via:

GetWaasPolicyOriginCustomHeaderArgs{...}

type GetWaasPolicyOriginCustomHeaderOutput

type GetWaasPolicyOriginCustomHeaderOutput struct{ *pulumi.OutputState }

func (GetWaasPolicyOriginCustomHeaderOutput) ElementType

func (GetWaasPolicyOriginCustomHeaderOutput) Name

The unique name of the whitelist.

func (GetWaasPolicyOriginCustomHeaderOutput) ToGetWaasPolicyOriginCustomHeaderOutput

func (o GetWaasPolicyOriginCustomHeaderOutput) ToGetWaasPolicyOriginCustomHeaderOutput() GetWaasPolicyOriginCustomHeaderOutput

func (GetWaasPolicyOriginCustomHeaderOutput) ToGetWaasPolicyOriginCustomHeaderOutputWithContext

func (o GetWaasPolicyOriginCustomHeaderOutput) ToGetWaasPolicyOriginCustomHeaderOutputWithContext(ctx context.Context) GetWaasPolicyOriginCustomHeaderOutput

func (GetWaasPolicyOriginCustomHeaderOutput) Value

The value of the header.

type GetWaasPolicyOriginGroup

type GetWaasPolicyOriginGroup struct {
	Label        string                                `pulumi:"label"`
	OriginGroups []GetWaasPolicyOriginGroupOriginGroup `pulumi:"originGroups"`
}

type GetWaasPolicyOriginGroupArgs

type GetWaasPolicyOriginGroupArgs struct {
	Label        pulumi.StringInput                            `pulumi:"label"`
	OriginGroups GetWaasPolicyOriginGroupOriginGroupArrayInput `pulumi:"originGroups"`
}

func (GetWaasPolicyOriginGroupArgs) ElementType

func (GetWaasPolicyOriginGroupArgs) ToGetWaasPolicyOriginGroupOutput

func (i GetWaasPolicyOriginGroupArgs) ToGetWaasPolicyOriginGroupOutput() GetWaasPolicyOriginGroupOutput

func (GetWaasPolicyOriginGroupArgs) ToGetWaasPolicyOriginGroupOutputWithContext

func (i GetWaasPolicyOriginGroupArgs) ToGetWaasPolicyOriginGroupOutputWithContext(ctx context.Context) GetWaasPolicyOriginGroupOutput

type GetWaasPolicyOriginGroupArray

type GetWaasPolicyOriginGroupArray []GetWaasPolicyOriginGroupInput

func (GetWaasPolicyOriginGroupArray) ElementType

func (GetWaasPolicyOriginGroupArray) ToGetWaasPolicyOriginGroupArrayOutput

func (i GetWaasPolicyOriginGroupArray) ToGetWaasPolicyOriginGroupArrayOutput() GetWaasPolicyOriginGroupArrayOutput

func (GetWaasPolicyOriginGroupArray) ToGetWaasPolicyOriginGroupArrayOutputWithContext

func (i GetWaasPolicyOriginGroupArray) ToGetWaasPolicyOriginGroupArrayOutputWithContext(ctx context.Context) GetWaasPolicyOriginGroupArrayOutput

type GetWaasPolicyOriginGroupArrayInput

type GetWaasPolicyOriginGroupArrayInput interface {
	pulumi.Input

	ToGetWaasPolicyOriginGroupArrayOutput() GetWaasPolicyOriginGroupArrayOutput
	ToGetWaasPolicyOriginGroupArrayOutputWithContext(context.Context) GetWaasPolicyOriginGroupArrayOutput
}

GetWaasPolicyOriginGroupArrayInput is an input type that accepts GetWaasPolicyOriginGroupArray and GetWaasPolicyOriginGroupArrayOutput values. You can construct a concrete instance of `GetWaasPolicyOriginGroupArrayInput` via:

GetWaasPolicyOriginGroupArray{ GetWaasPolicyOriginGroupArgs{...} }

type GetWaasPolicyOriginGroupArrayOutput

type GetWaasPolicyOriginGroupArrayOutput struct{ *pulumi.OutputState }

func (GetWaasPolicyOriginGroupArrayOutput) ElementType

func (GetWaasPolicyOriginGroupArrayOutput) Index

func (GetWaasPolicyOriginGroupArrayOutput) ToGetWaasPolicyOriginGroupArrayOutput

func (o GetWaasPolicyOriginGroupArrayOutput) ToGetWaasPolicyOriginGroupArrayOutput() GetWaasPolicyOriginGroupArrayOutput

func (GetWaasPolicyOriginGroupArrayOutput) ToGetWaasPolicyOriginGroupArrayOutputWithContext

func (o GetWaasPolicyOriginGroupArrayOutput) ToGetWaasPolicyOriginGroupArrayOutputWithContext(ctx context.Context) GetWaasPolicyOriginGroupArrayOutput

type GetWaasPolicyOriginGroupInput

type GetWaasPolicyOriginGroupInput interface {
	pulumi.Input

	ToGetWaasPolicyOriginGroupOutput() GetWaasPolicyOriginGroupOutput
	ToGetWaasPolicyOriginGroupOutputWithContext(context.Context) GetWaasPolicyOriginGroupOutput
}

GetWaasPolicyOriginGroupInput is an input type that accepts GetWaasPolicyOriginGroupArgs and GetWaasPolicyOriginGroupOutput values. You can construct a concrete instance of `GetWaasPolicyOriginGroupInput` via:

GetWaasPolicyOriginGroupArgs{...}

type GetWaasPolicyOriginGroupOriginGroup

type GetWaasPolicyOriginGroupOriginGroup struct {
	// The key in the map of origins referencing the origin used for the Web Application Firewall. The origin must already be included in `Origins`. Required when creating the `WafConfig` resource, but not on update.
	Origin string `pulumi:"origin"`
	Weight int    `pulumi:"weight"`
}

type GetWaasPolicyOriginGroupOriginGroupArgs

type GetWaasPolicyOriginGroupOriginGroupArgs struct {
	// The key in the map of origins referencing the origin used for the Web Application Firewall. The origin must already be included in `Origins`. Required when creating the `WafConfig` resource, but not on update.
	Origin pulumi.StringInput `pulumi:"origin"`
	Weight pulumi.IntInput    `pulumi:"weight"`
}

func (GetWaasPolicyOriginGroupOriginGroupArgs) ElementType

func (GetWaasPolicyOriginGroupOriginGroupArgs) ToGetWaasPolicyOriginGroupOriginGroupOutput

func (i GetWaasPolicyOriginGroupOriginGroupArgs) ToGetWaasPolicyOriginGroupOriginGroupOutput() GetWaasPolicyOriginGroupOriginGroupOutput

func (GetWaasPolicyOriginGroupOriginGroupArgs) ToGetWaasPolicyOriginGroupOriginGroupOutputWithContext

func (i GetWaasPolicyOriginGroupOriginGroupArgs) ToGetWaasPolicyOriginGroupOriginGroupOutputWithContext(ctx context.Context) GetWaasPolicyOriginGroupOriginGroupOutput

type GetWaasPolicyOriginGroupOriginGroupArray

type GetWaasPolicyOriginGroupOriginGroupArray []GetWaasPolicyOriginGroupOriginGroupInput

func (GetWaasPolicyOriginGroupOriginGroupArray) ElementType

func (GetWaasPolicyOriginGroupOriginGroupArray) ToGetWaasPolicyOriginGroupOriginGroupArrayOutput

func (i GetWaasPolicyOriginGroupOriginGroupArray) ToGetWaasPolicyOriginGroupOriginGroupArrayOutput() GetWaasPolicyOriginGroupOriginGroupArrayOutput

func (GetWaasPolicyOriginGroupOriginGroupArray) ToGetWaasPolicyOriginGroupOriginGroupArrayOutputWithContext

func (i GetWaasPolicyOriginGroupOriginGroupArray) ToGetWaasPolicyOriginGroupOriginGroupArrayOutputWithContext(ctx context.Context) GetWaasPolicyOriginGroupOriginGroupArrayOutput

type GetWaasPolicyOriginGroupOriginGroupArrayInput

type GetWaasPolicyOriginGroupOriginGroupArrayInput interface {
	pulumi.Input

	ToGetWaasPolicyOriginGroupOriginGroupArrayOutput() GetWaasPolicyOriginGroupOriginGroupArrayOutput
	ToGetWaasPolicyOriginGroupOriginGroupArrayOutputWithContext(context.Context) GetWaasPolicyOriginGroupOriginGroupArrayOutput
}

GetWaasPolicyOriginGroupOriginGroupArrayInput is an input type that accepts GetWaasPolicyOriginGroupOriginGroupArray and GetWaasPolicyOriginGroupOriginGroupArrayOutput values. You can construct a concrete instance of `GetWaasPolicyOriginGroupOriginGroupArrayInput` via:

GetWaasPolicyOriginGroupOriginGroupArray{ GetWaasPolicyOriginGroupOriginGroupArgs{...} }

type GetWaasPolicyOriginGroupOriginGroupArrayOutput

type GetWaasPolicyOriginGroupOriginGroupArrayOutput struct{ *pulumi.OutputState }

func (GetWaasPolicyOriginGroupOriginGroupArrayOutput) ElementType

func (GetWaasPolicyOriginGroupOriginGroupArrayOutput) Index

func (GetWaasPolicyOriginGroupOriginGroupArrayOutput) ToGetWaasPolicyOriginGroupOriginGroupArrayOutput

func (o GetWaasPolicyOriginGroupOriginGroupArrayOutput) ToGetWaasPolicyOriginGroupOriginGroupArrayOutput() GetWaasPolicyOriginGroupOriginGroupArrayOutput

func (GetWaasPolicyOriginGroupOriginGroupArrayOutput) ToGetWaasPolicyOriginGroupOriginGroupArrayOutputWithContext

func (o GetWaasPolicyOriginGroupOriginGroupArrayOutput) ToGetWaasPolicyOriginGroupOriginGroupArrayOutputWithContext(ctx context.Context) GetWaasPolicyOriginGroupOriginGroupArrayOutput

type GetWaasPolicyOriginGroupOriginGroupInput

type GetWaasPolicyOriginGroupOriginGroupInput interface {
	pulumi.Input

	ToGetWaasPolicyOriginGroupOriginGroupOutput() GetWaasPolicyOriginGroupOriginGroupOutput
	ToGetWaasPolicyOriginGroupOriginGroupOutputWithContext(context.Context) GetWaasPolicyOriginGroupOriginGroupOutput
}

GetWaasPolicyOriginGroupOriginGroupInput is an input type that accepts GetWaasPolicyOriginGroupOriginGroupArgs and GetWaasPolicyOriginGroupOriginGroupOutput values. You can construct a concrete instance of `GetWaasPolicyOriginGroupOriginGroupInput` via:

GetWaasPolicyOriginGroupOriginGroupArgs{...}

type GetWaasPolicyOriginGroupOriginGroupOutput

type GetWaasPolicyOriginGroupOriginGroupOutput struct{ *pulumi.OutputState }

func (GetWaasPolicyOriginGroupOriginGroupOutput) ElementType

func (GetWaasPolicyOriginGroupOriginGroupOutput) Origin

The key in the map of origins referencing the origin used for the Web Application Firewall. The origin must already be included in `Origins`. Required when creating the `WafConfig` resource, but not on update.

func (GetWaasPolicyOriginGroupOriginGroupOutput) ToGetWaasPolicyOriginGroupOriginGroupOutput

func (o GetWaasPolicyOriginGroupOriginGroupOutput) ToGetWaasPolicyOriginGroupOriginGroupOutput() GetWaasPolicyOriginGroupOriginGroupOutput

func (GetWaasPolicyOriginGroupOriginGroupOutput) ToGetWaasPolicyOriginGroupOriginGroupOutputWithContext

func (o GetWaasPolicyOriginGroupOriginGroupOutput) ToGetWaasPolicyOriginGroupOriginGroupOutputWithContext(ctx context.Context) GetWaasPolicyOriginGroupOriginGroupOutput

func (GetWaasPolicyOriginGroupOriginGroupOutput) Weight

type GetWaasPolicyOriginGroupOutput

type GetWaasPolicyOriginGroupOutput struct{ *pulumi.OutputState }

func (GetWaasPolicyOriginGroupOutput) ElementType

func (GetWaasPolicyOriginGroupOutput) Label

func (GetWaasPolicyOriginGroupOutput) OriginGroups

func (GetWaasPolicyOriginGroupOutput) ToGetWaasPolicyOriginGroupOutput

func (o GetWaasPolicyOriginGroupOutput) ToGetWaasPolicyOriginGroupOutput() GetWaasPolicyOriginGroupOutput

func (GetWaasPolicyOriginGroupOutput) ToGetWaasPolicyOriginGroupOutputWithContext

func (o GetWaasPolicyOriginGroupOutput) ToGetWaasPolicyOriginGroupOutputWithContext(ctx context.Context) GetWaasPolicyOriginGroupOutput

type GetWaasPolicyOriginInput

type GetWaasPolicyOriginInput interface {
	pulumi.Input

	ToGetWaasPolicyOriginOutput() GetWaasPolicyOriginOutput
	ToGetWaasPolicyOriginOutputWithContext(context.Context) GetWaasPolicyOriginOutput
}

GetWaasPolicyOriginInput is an input type that accepts GetWaasPolicyOriginArgs and GetWaasPolicyOriginOutput values. You can construct a concrete instance of `GetWaasPolicyOriginInput` via:

GetWaasPolicyOriginArgs{...}

type GetWaasPolicyOriginOutput

type GetWaasPolicyOriginOutput struct{ *pulumi.OutputState }

func (GetWaasPolicyOriginOutput) CustomHeaders

A list of HTTP headers to forward to your origin.

func (GetWaasPolicyOriginOutput) ElementType

func (GetWaasPolicyOriginOutput) ElementType() reflect.Type

func (GetWaasPolicyOriginOutput) HttpPort

The HTTP port on the origin that the web application listens on. If unspecified, defaults to `80`. If `0` is specified - the origin is not used for HTTP traffic.

func (GetWaasPolicyOriginOutput) HttpsPort

The HTTPS port on the origin that the web application listens on. If unspecified, defaults to `443`. If `0` is specified - the origin is not used for HTTPS traffic.

func (GetWaasPolicyOriginOutput) Label

func (GetWaasPolicyOriginOutput) ToGetWaasPolicyOriginOutput

func (o GetWaasPolicyOriginOutput) ToGetWaasPolicyOriginOutput() GetWaasPolicyOriginOutput

func (GetWaasPolicyOriginOutput) ToGetWaasPolicyOriginOutputWithContext

func (o GetWaasPolicyOriginOutput) ToGetWaasPolicyOriginOutputWithContext(ctx context.Context) GetWaasPolicyOriginOutput

func (GetWaasPolicyOriginOutput) Uri

The URI of the origin. Does not support paths. Port numbers should be specified in the `httpPort` and `httpsPort` fields.

type GetWaasPolicyOutputArgs

type GetWaasPolicyOutputArgs struct {
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the WAAS policy.
	WaasPolicyId pulumi.StringInput `pulumi:"waasPolicyId"`
}

A collection of arguments for invoking getWaasPolicy.

func (GetWaasPolicyOutputArgs) ElementType

func (GetWaasPolicyOutputArgs) ElementType() reflect.Type

type GetWaasPolicyPolicyConfig

type GetWaasPolicyPolicyConfig struct {
	// The OCID of the SSL certificate to use if HTTPS is supported.
	CertificateId string `pulumi:"certificateId"`
	// The set cipher group for the configured TLS protocol. This sets the configuration for the TLS connections between clients and edge nodes only.
	// * **DEFAULT:** Cipher group supports TLS 1.0, TLS 1.1, TLS 1.2, TLS 1.3 protocols. It has the following ciphers enabled: `ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:!DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA`
	CipherGroup string `pulumi:"cipherGroup"`
	// Specifies an HTTP header name which is treated as the connecting client's IP address. Applicable only if `isBehindCdn` is enabled.
	ClientAddressHeader string `pulumi:"clientAddressHeader"`
	// Health checks monitor the status of your origin servers and only route traffic to the origins that pass the health check. If the health check fails, origin is automatically removed from the load balancing. There is roughly one health check per EDGE POP per period. Any checks that pass will be reported as "healthy".
	HealthChecks GetWaasPolicyPolicyConfigHealthChecks `pulumi:"healthChecks"`
	// Enabling `isBehindCdn` allows for the collection of IP addresses from client requests if the WAF is connected to a CDN.
	IsBehindCdn bool `pulumi:"isBehindCdn"`
	// Enable or disable automatic content caching based on the response `cache-control` header. This feature enables the origin to act as a proxy cache. Caching is usually defined using `cache-control` header. For example `cache-control: max-age=120` means that the returned resource is valid for 120 seconds. Caching rules will overwrite this setting.
	IsCacheControlRespected bool `pulumi:"isCacheControlRespected"`
	// Enable or disable HTTPS support. If true, a `certificateId` is required. If unspecified, defaults to `false`.
	IsHttpsEnabled bool `pulumi:"isHttpsEnabled"`
	// Force HTTP to HTTPS redirection. If unspecified, defaults to `false`.
	IsHttpsForced bool `pulumi:"isHttpsForced"`
	// Enable or disable GZIP compression of origin responses. If enabled, the header `Accept-Encoding: gzip` is sent to origin, otherwise, the empty `Accept-Encoding:` header is used.
	IsOriginCompressionEnabled bool `pulumi:"isOriginCompressionEnabled"`
	// Enable or disable buffering of responses from the origin. Buffering improves overall stability in case of network issues, but slightly increases Time To First Byte.
	IsResponseBufferingEnabled bool `pulumi:"isResponseBufferingEnabled"`
	// SNI stands for Server Name Indication and is an extension of the TLS protocol. It indicates which hostname is being contacted by the browser at the beginning of the 'handshake'-process. This allows a server to connect multiple SSL Certificates to one IP address and port.
	IsSniEnabled bool `pulumi:"isSniEnabled"`
	// An object that represents a load balancing method and its properties.
	LoadBalancingMethod GetWaasPolicyPolicyConfigLoadBalancingMethod `pulumi:"loadBalancingMethod"`
	// A list of allowed TLS protocols. Only applicable when HTTPS support is enabled. The TLS protocol is negotiated while the request is connecting and the most recent protocol supported by both the edge node and client browser will be selected. If no such version exists, the connection will be aborted.
	// * **TLS_V1:** corresponds to TLS 1.0 specification.
	// * **TLS_V1_1:** corresponds to TLS 1.1 specification.
	// * **TLS_V1_2:** corresponds to TLS 1.2 specification.
	// * **TLS_V1_3:** corresponds to TLS 1.3 specification.
	TlsProtocols []string `pulumi:"tlsProtocols"`
	// ModSecurity is not capable to inspect WebSockets. Therefore paths specified here have WAF disabled if Connection request header from the client has the value Upgrade (case insensitive matching) and Upgrade request header has the value websocket (case insensitive matching). Paths matches if the concatenation of request URL path and query starts with the contents of the one of `websocketPathPrefixes` array value. In All other cases challenges, like JSC, HIC and etc., remain active.
	WebsocketPathPrefixes []string `pulumi:"websocketPathPrefixes"`
}

type GetWaasPolicyPolicyConfigArgs

type GetWaasPolicyPolicyConfigArgs struct {
	// The OCID of the SSL certificate to use if HTTPS is supported.
	CertificateId pulumi.StringInput `pulumi:"certificateId"`
	// The set cipher group for the configured TLS protocol. This sets the configuration for the TLS connections between clients and edge nodes only.
	// * **DEFAULT:** Cipher group supports TLS 1.0, TLS 1.1, TLS 1.2, TLS 1.3 protocols. It has the following ciphers enabled: `ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:!DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA`
	CipherGroup pulumi.StringInput `pulumi:"cipherGroup"`
	// Specifies an HTTP header name which is treated as the connecting client's IP address. Applicable only if `isBehindCdn` is enabled.
	ClientAddressHeader pulumi.StringInput `pulumi:"clientAddressHeader"`
	// Health checks monitor the status of your origin servers and only route traffic to the origins that pass the health check. If the health check fails, origin is automatically removed from the load balancing. There is roughly one health check per EDGE POP per period. Any checks that pass will be reported as "healthy".
	HealthChecks GetWaasPolicyPolicyConfigHealthChecksInput `pulumi:"healthChecks"`
	// Enabling `isBehindCdn` allows for the collection of IP addresses from client requests if the WAF is connected to a CDN.
	IsBehindCdn pulumi.BoolInput `pulumi:"isBehindCdn"`
	// Enable or disable automatic content caching based on the response `cache-control` header. This feature enables the origin to act as a proxy cache. Caching is usually defined using `cache-control` header. For example `cache-control: max-age=120` means that the returned resource is valid for 120 seconds. Caching rules will overwrite this setting.
	IsCacheControlRespected pulumi.BoolInput `pulumi:"isCacheControlRespected"`
	// Enable or disable HTTPS support. If true, a `certificateId` is required. If unspecified, defaults to `false`.
	IsHttpsEnabled pulumi.BoolInput `pulumi:"isHttpsEnabled"`
	// Force HTTP to HTTPS redirection. If unspecified, defaults to `false`.
	IsHttpsForced pulumi.BoolInput `pulumi:"isHttpsForced"`
	// Enable or disable GZIP compression of origin responses. If enabled, the header `Accept-Encoding: gzip` is sent to origin, otherwise, the empty `Accept-Encoding:` header is used.
	IsOriginCompressionEnabled pulumi.BoolInput `pulumi:"isOriginCompressionEnabled"`
	// Enable or disable buffering of responses from the origin. Buffering improves overall stability in case of network issues, but slightly increases Time To First Byte.
	IsResponseBufferingEnabled pulumi.BoolInput `pulumi:"isResponseBufferingEnabled"`
	// SNI stands for Server Name Indication and is an extension of the TLS protocol. It indicates which hostname is being contacted by the browser at the beginning of the 'handshake'-process. This allows a server to connect multiple SSL Certificates to one IP address and port.
	IsSniEnabled pulumi.BoolInput `pulumi:"isSniEnabled"`
	// An object that represents a load balancing method and its properties.
	LoadBalancingMethod GetWaasPolicyPolicyConfigLoadBalancingMethodInput `pulumi:"loadBalancingMethod"`
	// A list of allowed TLS protocols. Only applicable when HTTPS support is enabled. The TLS protocol is negotiated while the request is connecting and the most recent protocol supported by both the edge node and client browser will be selected. If no such version exists, the connection will be aborted.
	// * **TLS_V1:** corresponds to TLS 1.0 specification.
	// * **TLS_V1_1:** corresponds to TLS 1.1 specification.
	// * **TLS_V1_2:** corresponds to TLS 1.2 specification.
	// * **TLS_V1_3:** corresponds to TLS 1.3 specification.
	TlsProtocols pulumi.StringArrayInput `pulumi:"tlsProtocols"`
	// ModSecurity is not capable to inspect WebSockets. Therefore paths specified here have WAF disabled if Connection request header from the client has the value Upgrade (case insensitive matching) and Upgrade request header has the value websocket (case insensitive matching). Paths matches if the concatenation of request URL path and query starts with the contents of the one of `websocketPathPrefixes` array value. In All other cases challenges, like JSC, HIC and etc., remain active.
	WebsocketPathPrefixes pulumi.StringArrayInput `pulumi:"websocketPathPrefixes"`
}

func (GetWaasPolicyPolicyConfigArgs) ElementType

func (GetWaasPolicyPolicyConfigArgs) ToGetWaasPolicyPolicyConfigOutput

func (i GetWaasPolicyPolicyConfigArgs) ToGetWaasPolicyPolicyConfigOutput() GetWaasPolicyPolicyConfigOutput

func (GetWaasPolicyPolicyConfigArgs) ToGetWaasPolicyPolicyConfigOutputWithContext

func (i GetWaasPolicyPolicyConfigArgs) ToGetWaasPolicyPolicyConfigOutputWithContext(ctx context.Context) GetWaasPolicyPolicyConfigOutput

type GetWaasPolicyPolicyConfigArray

type GetWaasPolicyPolicyConfigArray []GetWaasPolicyPolicyConfigInput

func (GetWaasPolicyPolicyConfigArray) ElementType

func (GetWaasPolicyPolicyConfigArray) ToGetWaasPolicyPolicyConfigArrayOutput

func (i GetWaasPolicyPolicyConfigArray) ToGetWaasPolicyPolicyConfigArrayOutput() GetWaasPolicyPolicyConfigArrayOutput

func (GetWaasPolicyPolicyConfigArray) ToGetWaasPolicyPolicyConfigArrayOutputWithContext

func (i GetWaasPolicyPolicyConfigArray) ToGetWaasPolicyPolicyConfigArrayOutputWithContext(ctx context.Context) GetWaasPolicyPolicyConfigArrayOutput

type GetWaasPolicyPolicyConfigArrayInput

type GetWaasPolicyPolicyConfigArrayInput interface {
	pulumi.Input

	ToGetWaasPolicyPolicyConfigArrayOutput() GetWaasPolicyPolicyConfigArrayOutput
	ToGetWaasPolicyPolicyConfigArrayOutputWithContext(context.Context) GetWaasPolicyPolicyConfigArrayOutput
}

GetWaasPolicyPolicyConfigArrayInput is an input type that accepts GetWaasPolicyPolicyConfigArray and GetWaasPolicyPolicyConfigArrayOutput values. You can construct a concrete instance of `GetWaasPolicyPolicyConfigArrayInput` via:

GetWaasPolicyPolicyConfigArray{ GetWaasPolicyPolicyConfigArgs{...} }

type GetWaasPolicyPolicyConfigArrayOutput

type GetWaasPolicyPolicyConfigArrayOutput struct{ *pulumi.OutputState }

func (GetWaasPolicyPolicyConfigArrayOutput) ElementType

func (GetWaasPolicyPolicyConfigArrayOutput) Index

func (GetWaasPolicyPolicyConfigArrayOutput) ToGetWaasPolicyPolicyConfigArrayOutput

func (o GetWaasPolicyPolicyConfigArrayOutput) ToGetWaasPolicyPolicyConfigArrayOutput() GetWaasPolicyPolicyConfigArrayOutput

func (GetWaasPolicyPolicyConfigArrayOutput) ToGetWaasPolicyPolicyConfigArrayOutputWithContext

func (o GetWaasPolicyPolicyConfigArrayOutput) ToGetWaasPolicyPolicyConfigArrayOutputWithContext(ctx context.Context) GetWaasPolicyPolicyConfigArrayOutput

type GetWaasPolicyPolicyConfigHealthChecks

type GetWaasPolicyPolicyConfigHealthChecks struct {
	// The HTTP response codes that signify a healthy state.
	// * **2XX:** Success response code group.
	// * **3XX:** Redirection response code group.
	// * **4XX:** Client errors response code group.
	// * **5XX:** Server errors response code group.
	ExpectedResponseCodeGroups []string `pulumi:"expectedResponseCodeGroups"`
	// Health check will search for the given text in a case-sensitive manner within the response body and will fail if the text is not found.
	ExpectedResponseText string `pulumi:"expectedResponseText"`
	// HTTP header fields to include in health check requests, expressed as `"name": "value"` properties. Because HTTP header field names are case-insensitive, any use of names that are case-insensitive equal to other names will be rejected. If Host is not specified, requests will include a Host header field with value matching the policy's protected domain. If User-Agent is not specified, requests will include a User-Agent header field with value "waf health checks".
	Headers map[string]interface{} `pulumi:"headers"`
	// Number of successful health checks after which the server is marked up.
	HealthyThreshold int `pulumi:"healthyThreshold"`
	// Time between health checks of an individual origin server, in seconds.
	IntervalInSeconds int `pulumi:"intervalInSeconds"`
	// Enables or disables the JavaScript challenge Web Application Firewall feature.
	IsEnabled bool `pulumi:"isEnabled"`
	// Enables or disables additional check for predefined text in addition to response code.
	IsResponseTextCheckEnabled bool `pulumi:"isResponseTextCheckEnabled"`
	// Load balancing methods are algorithms used to efficiently distribute traffic among origin servers.
	// * **[IP_HASH](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/IPHashLoadBalancingMethod):** All the incoming requests from the same client IP address should go to the same content origination server. IP_HASH load balancing method uses origin weights when choosing which origin should the hash be assigned to initially.
	// * **[ROUND_ROBIN](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/RoundRobinLoadBalancingMethod):** Forwards requests sequentially to the available origin servers. The first request - to the first origin server, the second request - to the next origin server, and so on. After it sends a request to the last origin server, it starts again with the first origin server. When using weights on origins, Weighted Round Robin assigns more requests to origins with a greater weight. Over a period of time, origins will receive a number of requests in proportion to their weight.
	// * **[STICKY_COOKIE](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/StickyCookieLoadBalancingMethod):** Adds a session cookie to the first response from the origin server and identifies the server that sent the response. The client's next request contains the cookie value, and nginx routes the request to the origin server that responded to the first request. STICKY_COOKIE load balancing method falls back to Round Robin for the first request.
	Method string `pulumi:"method"`
	// Path to visit on your origins when performing the health check.
	Path string `pulumi:"path"`
	// Response timeout represents wait time until request is considered failed, in seconds.
	TimeoutInSeconds int `pulumi:"timeoutInSeconds"`
	// Number of failed health checks after which the server is marked down.
	UnhealthyThreshold int `pulumi:"unhealthyThreshold"`
}

type GetWaasPolicyPolicyConfigHealthChecksArgs

type GetWaasPolicyPolicyConfigHealthChecksArgs struct {
	// The HTTP response codes that signify a healthy state.
	// * **2XX:** Success response code group.
	// * **3XX:** Redirection response code group.
	// * **4XX:** Client errors response code group.
	// * **5XX:** Server errors response code group.
	ExpectedResponseCodeGroups pulumi.StringArrayInput `pulumi:"expectedResponseCodeGroups"`
	// Health check will search for the given text in a case-sensitive manner within the response body and will fail if the text is not found.
	ExpectedResponseText pulumi.StringInput `pulumi:"expectedResponseText"`
	// HTTP header fields to include in health check requests, expressed as `"name": "value"` properties. Because HTTP header field names are case-insensitive, any use of names that are case-insensitive equal to other names will be rejected. If Host is not specified, requests will include a Host header field with value matching the policy's protected domain. If User-Agent is not specified, requests will include a User-Agent header field with value "waf health checks".
	Headers pulumi.MapInput `pulumi:"headers"`
	// Number of successful health checks after which the server is marked up.
	HealthyThreshold pulumi.IntInput `pulumi:"healthyThreshold"`
	// Time between health checks of an individual origin server, in seconds.
	IntervalInSeconds pulumi.IntInput `pulumi:"intervalInSeconds"`
	// Enables or disables the JavaScript challenge Web Application Firewall feature.
	IsEnabled pulumi.BoolInput `pulumi:"isEnabled"`
	// Enables or disables additional check for predefined text in addition to response code.
	IsResponseTextCheckEnabled pulumi.BoolInput `pulumi:"isResponseTextCheckEnabled"`
	// Load balancing methods are algorithms used to efficiently distribute traffic among origin servers.
	// * **[IP_HASH](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/IPHashLoadBalancingMethod):** All the incoming requests from the same client IP address should go to the same content origination server. IP_HASH load balancing method uses origin weights when choosing which origin should the hash be assigned to initially.
	// * **[ROUND_ROBIN](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/RoundRobinLoadBalancingMethod):** Forwards requests sequentially to the available origin servers. The first request - to the first origin server, the second request - to the next origin server, and so on. After it sends a request to the last origin server, it starts again with the first origin server. When using weights on origins, Weighted Round Robin assigns more requests to origins with a greater weight. Over a period of time, origins will receive a number of requests in proportion to their weight.
	// * **[STICKY_COOKIE](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/StickyCookieLoadBalancingMethod):** Adds a session cookie to the first response from the origin server and identifies the server that sent the response. The client's next request contains the cookie value, and nginx routes the request to the origin server that responded to the first request. STICKY_COOKIE load balancing method falls back to Round Robin for the first request.
	Method pulumi.StringInput `pulumi:"method"`
	// Path to visit on your origins when performing the health check.
	Path pulumi.StringInput `pulumi:"path"`
	// Response timeout represents wait time until request is considered failed, in seconds.
	TimeoutInSeconds pulumi.IntInput `pulumi:"timeoutInSeconds"`
	// Number of failed health checks after which the server is marked down.
	UnhealthyThreshold pulumi.IntInput `pulumi:"unhealthyThreshold"`
}

func (GetWaasPolicyPolicyConfigHealthChecksArgs) ElementType

func (GetWaasPolicyPolicyConfigHealthChecksArgs) ToGetWaasPolicyPolicyConfigHealthChecksOutput

func (i GetWaasPolicyPolicyConfigHealthChecksArgs) ToGetWaasPolicyPolicyConfigHealthChecksOutput() GetWaasPolicyPolicyConfigHealthChecksOutput

func (GetWaasPolicyPolicyConfigHealthChecksArgs) ToGetWaasPolicyPolicyConfigHealthChecksOutputWithContext

func (i GetWaasPolicyPolicyConfigHealthChecksArgs) ToGetWaasPolicyPolicyConfigHealthChecksOutputWithContext(ctx context.Context) GetWaasPolicyPolicyConfigHealthChecksOutput

type GetWaasPolicyPolicyConfigHealthChecksInput

type GetWaasPolicyPolicyConfigHealthChecksInput interface {
	pulumi.Input

	ToGetWaasPolicyPolicyConfigHealthChecksOutput() GetWaasPolicyPolicyConfigHealthChecksOutput
	ToGetWaasPolicyPolicyConfigHealthChecksOutputWithContext(context.Context) GetWaasPolicyPolicyConfigHealthChecksOutput
}

GetWaasPolicyPolicyConfigHealthChecksInput is an input type that accepts GetWaasPolicyPolicyConfigHealthChecksArgs and GetWaasPolicyPolicyConfigHealthChecksOutput values. You can construct a concrete instance of `GetWaasPolicyPolicyConfigHealthChecksInput` via:

GetWaasPolicyPolicyConfigHealthChecksArgs{...}

type GetWaasPolicyPolicyConfigHealthChecksOutput

type GetWaasPolicyPolicyConfigHealthChecksOutput struct{ *pulumi.OutputState }

func (GetWaasPolicyPolicyConfigHealthChecksOutput) ElementType

func (GetWaasPolicyPolicyConfigHealthChecksOutput) ExpectedResponseCodeGroups

The HTTP response codes that signify a healthy state. * **2XX:** Success response code group. * **3XX:** Redirection response code group. * **4XX:** Client errors response code group. * **5XX:** Server errors response code group.

func (GetWaasPolicyPolicyConfigHealthChecksOutput) ExpectedResponseText

Health check will search for the given text in a case-sensitive manner within the response body and will fail if the text is not found.

func (GetWaasPolicyPolicyConfigHealthChecksOutput) Headers

HTTP header fields to include in health check requests, expressed as `"name": "value"` properties. Because HTTP header field names are case-insensitive, any use of names that are case-insensitive equal to other names will be rejected. If Host is not specified, requests will include a Host header field with value matching the policy's protected domain. If User-Agent is not specified, requests will include a User-Agent header field with value "waf health checks".

func (GetWaasPolicyPolicyConfigHealthChecksOutput) HealthyThreshold

Number of successful health checks after which the server is marked up.

func (GetWaasPolicyPolicyConfigHealthChecksOutput) IntervalInSeconds

Time between health checks of an individual origin server, in seconds.

func (GetWaasPolicyPolicyConfigHealthChecksOutput) IsEnabled

Enables or disables the JavaScript challenge Web Application Firewall feature.

func (GetWaasPolicyPolicyConfigHealthChecksOutput) IsResponseTextCheckEnabled

func (o GetWaasPolicyPolicyConfigHealthChecksOutput) IsResponseTextCheckEnabled() pulumi.BoolOutput

Enables or disables additional check for predefined text in addition to response code.

func (GetWaasPolicyPolicyConfigHealthChecksOutput) Method

Load balancing methods are algorithms used to efficiently distribute traffic among origin servers. * **[IP_HASH](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/IPHashLoadBalancingMethod):** All the incoming requests from the same client IP address should go to the same content origination server. IP_HASH load balancing method uses origin weights when choosing which origin should the hash be assigned to initially. * **[ROUND_ROBIN](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/RoundRobinLoadBalancingMethod):** Forwards requests sequentially to the available origin servers. The first request - to the first origin server, the second request - to the next origin server, and so on. After it sends a request to the last origin server, it starts again with the first origin server. When using weights on origins, Weighted Round Robin assigns more requests to origins with a greater weight. Over a period of time, origins will receive a number of requests in proportion to their weight. * **[STICKY_COOKIE](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/StickyCookieLoadBalancingMethod):** Adds a session cookie to the first response from the origin server and identifies the server that sent the response. The client's next request contains the cookie value, and nginx routes the request to the origin server that responded to the first request. STICKY_COOKIE load balancing method falls back to Round Robin for the first request.

func (GetWaasPolicyPolicyConfigHealthChecksOutput) Path

Path to visit on your origins when performing the health check.

func (GetWaasPolicyPolicyConfigHealthChecksOutput) TimeoutInSeconds

Response timeout represents wait time until request is considered failed, in seconds.

func (GetWaasPolicyPolicyConfigHealthChecksOutput) ToGetWaasPolicyPolicyConfigHealthChecksOutput

func (o GetWaasPolicyPolicyConfigHealthChecksOutput) ToGetWaasPolicyPolicyConfigHealthChecksOutput() GetWaasPolicyPolicyConfigHealthChecksOutput

func (GetWaasPolicyPolicyConfigHealthChecksOutput) ToGetWaasPolicyPolicyConfigHealthChecksOutputWithContext

func (o GetWaasPolicyPolicyConfigHealthChecksOutput) ToGetWaasPolicyPolicyConfigHealthChecksOutputWithContext(ctx context.Context) GetWaasPolicyPolicyConfigHealthChecksOutput

func (GetWaasPolicyPolicyConfigHealthChecksOutput) UnhealthyThreshold

Number of failed health checks after which the server is marked down.

type GetWaasPolicyPolicyConfigInput

type GetWaasPolicyPolicyConfigInput interface {
	pulumi.Input

	ToGetWaasPolicyPolicyConfigOutput() GetWaasPolicyPolicyConfigOutput
	ToGetWaasPolicyPolicyConfigOutputWithContext(context.Context) GetWaasPolicyPolicyConfigOutput
}

GetWaasPolicyPolicyConfigInput is an input type that accepts GetWaasPolicyPolicyConfigArgs and GetWaasPolicyPolicyConfigOutput values. You can construct a concrete instance of `GetWaasPolicyPolicyConfigInput` via:

GetWaasPolicyPolicyConfigArgs{...}

type GetWaasPolicyPolicyConfigLoadBalancingMethod

type GetWaasPolicyPolicyConfigLoadBalancingMethod struct {
	// The domain for which the cookie is set, defaults to WAAS policy domain.
	Domain string `pulumi:"domain"`
	// The time for which a browser should keep the cookie in seconds. Empty value will cause the cookie to expire at the end of a browser session.
	ExpirationTimeInSeconds int `pulumi:"expirationTimeInSeconds"`
	// Load balancing methods are algorithms used to efficiently distribute traffic among origin servers.
	// * **[IP_HASH](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/IPHashLoadBalancingMethod):** All the incoming requests from the same client IP address should go to the same content origination server. IP_HASH load balancing method uses origin weights when choosing which origin should the hash be assigned to initially.
	// * **[ROUND_ROBIN](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/RoundRobinLoadBalancingMethod):** Forwards requests sequentially to the available origin servers. The first request - to the first origin server, the second request - to the next origin server, and so on. After it sends a request to the last origin server, it starts again with the first origin server. When using weights on origins, Weighted Round Robin assigns more requests to origins with a greater weight. Over a period of time, origins will receive a number of requests in proportion to their weight.
	// * **[STICKY_COOKIE](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/StickyCookieLoadBalancingMethod):** Adds a session cookie to the first response from the origin server and identifies the server that sent the response. The client's next request contains the cookie value, and nginx routes the request to the origin server that responded to the first request. STICKY_COOKIE load balancing method falls back to Round Robin for the first request.
	Method string `pulumi:"method"`
	// The unique name of the whitelist.
	Name string `pulumi:"name"`
}

type GetWaasPolicyPolicyConfigLoadBalancingMethodArgs

type GetWaasPolicyPolicyConfigLoadBalancingMethodArgs struct {
	// The domain for which the cookie is set, defaults to WAAS policy domain.
	Domain pulumi.StringInput `pulumi:"domain"`
	// The time for which a browser should keep the cookie in seconds. Empty value will cause the cookie to expire at the end of a browser session.
	ExpirationTimeInSeconds pulumi.IntInput `pulumi:"expirationTimeInSeconds"`
	// Load balancing methods are algorithms used to efficiently distribute traffic among origin servers.
	// * **[IP_HASH](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/IPHashLoadBalancingMethod):** All the incoming requests from the same client IP address should go to the same content origination server. IP_HASH load balancing method uses origin weights when choosing which origin should the hash be assigned to initially.
	// * **[ROUND_ROBIN](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/RoundRobinLoadBalancingMethod):** Forwards requests sequentially to the available origin servers. The first request - to the first origin server, the second request - to the next origin server, and so on. After it sends a request to the last origin server, it starts again with the first origin server. When using weights on origins, Weighted Round Robin assigns more requests to origins with a greater weight. Over a period of time, origins will receive a number of requests in proportion to their weight.
	// * **[STICKY_COOKIE](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/StickyCookieLoadBalancingMethod):** Adds a session cookie to the first response from the origin server and identifies the server that sent the response. The client's next request contains the cookie value, and nginx routes the request to the origin server that responded to the first request. STICKY_COOKIE load balancing method falls back to Round Robin for the first request.
	Method pulumi.StringInput `pulumi:"method"`
	// The unique name of the whitelist.
	Name pulumi.StringInput `pulumi:"name"`
}

func (GetWaasPolicyPolicyConfigLoadBalancingMethodArgs) ElementType

func (GetWaasPolicyPolicyConfigLoadBalancingMethodArgs) ToGetWaasPolicyPolicyConfigLoadBalancingMethodOutput

func (i GetWaasPolicyPolicyConfigLoadBalancingMethodArgs) ToGetWaasPolicyPolicyConfigLoadBalancingMethodOutput() GetWaasPolicyPolicyConfigLoadBalancingMethodOutput

func (GetWaasPolicyPolicyConfigLoadBalancingMethodArgs) ToGetWaasPolicyPolicyConfigLoadBalancingMethodOutputWithContext

func (i GetWaasPolicyPolicyConfigLoadBalancingMethodArgs) ToGetWaasPolicyPolicyConfigLoadBalancingMethodOutputWithContext(ctx context.Context) GetWaasPolicyPolicyConfigLoadBalancingMethodOutput

type GetWaasPolicyPolicyConfigLoadBalancingMethodInput

type GetWaasPolicyPolicyConfigLoadBalancingMethodInput interface {
	pulumi.Input

	ToGetWaasPolicyPolicyConfigLoadBalancingMethodOutput() GetWaasPolicyPolicyConfigLoadBalancingMethodOutput
	ToGetWaasPolicyPolicyConfigLoadBalancingMethodOutputWithContext(context.Context) GetWaasPolicyPolicyConfigLoadBalancingMethodOutput
}

GetWaasPolicyPolicyConfigLoadBalancingMethodInput is an input type that accepts GetWaasPolicyPolicyConfigLoadBalancingMethodArgs and GetWaasPolicyPolicyConfigLoadBalancingMethodOutput values. You can construct a concrete instance of `GetWaasPolicyPolicyConfigLoadBalancingMethodInput` via:

GetWaasPolicyPolicyConfigLoadBalancingMethodArgs{...}

type GetWaasPolicyPolicyConfigLoadBalancingMethodOutput

type GetWaasPolicyPolicyConfigLoadBalancingMethodOutput struct{ *pulumi.OutputState }

func (GetWaasPolicyPolicyConfigLoadBalancingMethodOutput) Domain

The domain for which the cookie is set, defaults to WAAS policy domain.

func (GetWaasPolicyPolicyConfigLoadBalancingMethodOutput) ElementType

func (GetWaasPolicyPolicyConfigLoadBalancingMethodOutput) ExpirationTimeInSeconds

The time for which a browser should keep the cookie in seconds. Empty value will cause the cookie to expire at the end of a browser session.

func (GetWaasPolicyPolicyConfigLoadBalancingMethodOutput) Method

Load balancing methods are algorithms used to efficiently distribute traffic among origin servers. * **[IP_HASH](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/IPHashLoadBalancingMethod):** All the incoming requests from the same client IP address should go to the same content origination server. IP_HASH load balancing method uses origin weights when choosing which origin should the hash be assigned to initially. * **[ROUND_ROBIN](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/RoundRobinLoadBalancingMethod):** Forwards requests sequentially to the available origin servers. The first request - to the first origin server, the second request - to the next origin server, and so on. After it sends a request to the last origin server, it starts again with the first origin server. When using weights on origins, Weighted Round Robin assigns more requests to origins with a greater weight. Over a period of time, origins will receive a number of requests in proportion to their weight. * **[STICKY_COOKIE](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/StickyCookieLoadBalancingMethod):** Adds a session cookie to the first response from the origin server and identifies the server that sent the response. The client's next request contains the cookie value, and nginx routes the request to the origin server that responded to the first request. STICKY_COOKIE load balancing method falls back to Round Robin for the first request.

func (GetWaasPolicyPolicyConfigLoadBalancingMethodOutput) Name

The unique name of the whitelist.

func (GetWaasPolicyPolicyConfigLoadBalancingMethodOutput) ToGetWaasPolicyPolicyConfigLoadBalancingMethodOutput

func (o GetWaasPolicyPolicyConfigLoadBalancingMethodOutput) ToGetWaasPolicyPolicyConfigLoadBalancingMethodOutput() GetWaasPolicyPolicyConfigLoadBalancingMethodOutput

func (GetWaasPolicyPolicyConfigLoadBalancingMethodOutput) ToGetWaasPolicyPolicyConfigLoadBalancingMethodOutputWithContext

func (o GetWaasPolicyPolicyConfigLoadBalancingMethodOutput) ToGetWaasPolicyPolicyConfigLoadBalancingMethodOutputWithContext(ctx context.Context) GetWaasPolicyPolicyConfigLoadBalancingMethodOutput

type GetWaasPolicyPolicyConfigOutput

type GetWaasPolicyPolicyConfigOutput struct{ *pulumi.OutputState }

func (GetWaasPolicyPolicyConfigOutput) CertificateId

The OCID of the SSL certificate to use if HTTPS is supported.

func (GetWaasPolicyPolicyConfigOutput) CipherGroup

The set cipher group for the configured TLS protocol. This sets the configuration for the TLS connections between clients and edge nodes only. * **DEFAULT:** Cipher group supports TLS 1.0, TLS 1.1, TLS 1.2, TLS 1.3 protocols. It has the following ciphers enabled: `ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:!DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA`

func (GetWaasPolicyPolicyConfigOutput) ClientAddressHeader

func (o GetWaasPolicyPolicyConfigOutput) ClientAddressHeader() pulumi.StringOutput

Specifies an HTTP header name which is treated as the connecting client's IP address. Applicable only if `isBehindCdn` is enabled.

func (GetWaasPolicyPolicyConfigOutput) ElementType

func (GetWaasPolicyPolicyConfigOutput) HealthChecks

Health checks monitor the status of your origin servers and only route traffic to the origins that pass the health check. If the health check fails, origin is automatically removed from the load balancing. There is roughly one health check per EDGE POP per period. Any checks that pass will be reported as "healthy".

func (GetWaasPolicyPolicyConfigOutput) IsBehindCdn

Enabling `isBehindCdn` allows for the collection of IP addresses from client requests if the WAF is connected to a CDN.

func (GetWaasPolicyPolicyConfigOutput) IsCacheControlRespected

func (o GetWaasPolicyPolicyConfigOutput) IsCacheControlRespected() pulumi.BoolOutput

Enable or disable automatic content caching based on the response `cache-control` header. This feature enables the origin to act as a proxy cache. Caching is usually defined using `cache-control` header. For example `cache-control: max-age=120` means that the returned resource is valid for 120 seconds. Caching rules will overwrite this setting.

func (GetWaasPolicyPolicyConfigOutput) IsHttpsEnabled

Enable or disable HTTPS support. If true, a `certificateId` is required. If unspecified, defaults to `false`.

func (GetWaasPolicyPolicyConfigOutput) IsHttpsForced

Force HTTP to HTTPS redirection. If unspecified, defaults to `false`.

func (GetWaasPolicyPolicyConfigOutput) IsOriginCompressionEnabled

func (o GetWaasPolicyPolicyConfigOutput) IsOriginCompressionEnabled() pulumi.BoolOutput

Enable or disable GZIP compression of origin responses. If enabled, the header `Accept-Encoding: gzip` is sent to origin, otherwise, the empty `Accept-Encoding:` header is used.

func (GetWaasPolicyPolicyConfigOutput) IsResponseBufferingEnabled

func (o GetWaasPolicyPolicyConfigOutput) IsResponseBufferingEnabled() pulumi.BoolOutput

Enable or disable buffering of responses from the origin. Buffering improves overall stability in case of network issues, but slightly increases Time To First Byte.

func (GetWaasPolicyPolicyConfigOutput) IsSniEnabled

SNI stands for Server Name Indication and is an extension of the TLS protocol. It indicates which hostname is being contacted by the browser at the beginning of the 'handshake'-process. This allows a server to connect multiple SSL Certificates to one IP address and port.

func (GetWaasPolicyPolicyConfigOutput) LoadBalancingMethod

An object that represents a load balancing method and its properties.

func (GetWaasPolicyPolicyConfigOutput) TlsProtocols

A list of allowed TLS protocols. Only applicable when HTTPS support is enabled. The TLS protocol is negotiated while the request is connecting and the most recent protocol supported by both the edge node and client browser will be selected. If no such version exists, the connection will be aborted. * **TLS_V1:** corresponds to TLS 1.0 specification. * **TLS_V1_1:** corresponds to TLS 1.1 specification. * **TLS_V1_2:** corresponds to TLS 1.2 specification. * **TLS_V1_3:** corresponds to TLS 1.3 specification.

func (GetWaasPolicyPolicyConfigOutput) ToGetWaasPolicyPolicyConfigOutput

func (o GetWaasPolicyPolicyConfigOutput) ToGetWaasPolicyPolicyConfigOutput() GetWaasPolicyPolicyConfigOutput

func (GetWaasPolicyPolicyConfigOutput) ToGetWaasPolicyPolicyConfigOutputWithContext

func (o GetWaasPolicyPolicyConfigOutput) ToGetWaasPolicyPolicyConfigOutputWithContext(ctx context.Context) GetWaasPolicyPolicyConfigOutput

func (GetWaasPolicyPolicyConfigOutput) WebsocketPathPrefixes

func (o GetWaasPolicyPolicyConfigOutput) WebsocketPathPrefixes() pulumi.StringArrayOutput

ModSecurity is not capable to inspect WebSockets. Therefore paths specified here have WAF disabled if Connection request header from the client has the value Upgrade (case insensitive matching) and Upgrade request header has the value websocket (case insensitive matching). Paths matches if the concatenation of request URL path and query starts with the contents of the one of `websocketPathPrefixes` array value. In All other cases challenges, like JSC, HIC and etc., remain active.

type GetWaasPolicyResult

type GetWaasPolicyResult struct {
	// An array of additional domains for this web application.
	AdditionalDomains []string `pulumi:"additionalDomains"`
	// The CNAME record to add to your DNS configuration to route traffic for the domain, and all additional domains, through the WAF.
	Cname string `pulumi:"cname"`
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the WAAS policy's compartment.
	CompartmentId string `pulumi:"compartmentId"`
	// Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Operations.CostCenter": "42"}`
	DefinedTags map[string]interface{} `pulumi:"definedTags"`
	// The user-friendly name of the WAAS policy. The name can be changed and does not need to be unique.
	DisplayName string `pulumi:"displayName"`
	// The domain for which the cookie is set, defaults to WAAS policy domain.
	Domain string `pulumi:"domain"`
	// Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Department": "Finance"}`
	FreeformTags map[string]interface{} `pulumi:"freeformTags"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// The map of origin groups and their keys used to associate origins to the `wafConfig`. Origin groups allow you to apply weights to groups of origins for load balancing purposes. Origins with higher weights will receive larger proportions of client requests. To add additional origins to your WAAS policy, update the `origins` field of a `UpdateWaasPolicy` request.
	OriginGroups []GetWaasPolicyOriginGroup `pulumi:"originGroups"`
	// A map of host servers (origins) and their keys for the web application. Origin keys are used to associate origins to specific protection rules. The key should be a user-friendly name for the host. **Examples:** `primary` or `secondary`.
	Origins []GetWaasPolicyOrigin `pulumi:"origins"`
	// The configuration details for the WAAS policy.
	PolicyConfigs []GetWaasPolicyPolicyConfig `pulumi:"policyConfigs"`
	// The current lifecycle state of the WAAS policy.
	State string `pulumi:"state"`
	// The date and time the policy was created, expressed in RFC 3339 timestamp format.
	TimeCreated  string `pulumi:"timeCreated"`
	WaasPolicyId string `pulumi:"waasPolicyId"`
	// The Web Application Firewall configuration for the WAAS policy.
	WafConfigs []GetWaasPolicyWafConfig `pulumi:"wafConfigs"`
}

A collection of values returned by getWaasPolicy.

func GetWaasPolicy

func GetWaasPolicy(ctx *pulumi.Context, args *GetWaasPolicyArgs, opts ...pulumi.InvokeOption) (*GetWaasPolicyResult, error)

This data source provides details about a specific Waas Policy resource in Oracle Cloud Infrastructure Web Application Acceleration and Security service.

Gets the details of a WAAS policy.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-oci/sdk/go/oci/Waas"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Waas.GetWaasPolicy(ctx, &waas.GetWaasPolicyArgs{
			WaasPolicyId: testWaasPolicyOciWaasWaasPolicy.Id,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetWaasPolicyResultOutput

type GetWaasPolicyResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getWaasPolicy.

func (GetWaasPolicyResultOutput) AdditionalDomains

func (o GetWaasPolicyResultOutput) AdditionalDomains() pulumi.StringArrayOutput

An array of additional domains for this web application.

func (GetWaasPolicyResultOutput) Cname

The CNAME record to add to your DNS configuration to route traffic for the domain, and all additional domains, through the WAF.

func (GetWaasPolicyResultOutput) CompartmentId

func (o GetWaasPolicyResultOutput) CompartmentId() pulumi.StringOutput

The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the WAAS policy's compartment.

func (GetWaasPolicyResultOutput) DefinedTags

func (o GetWaasPolicyResultOutput) DefinedTags() pulumi.MapOutput

Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Operations.CostCenter": "42"}`

func (GetWaasPolicyResultOutput) DisplayName

The user-friendly name of the WAAS policy. The name can be changed and does not need to be unique.

func (GetWaasPolicyResultOutput) Domain

The domain for which the cookie is set, defaults to WAAS policy domain.

func (GetWaasPolicyResultOutput) ElementType

func (GetWaasPolicyResultOutput) ElementType() reflect.Type

func (GetWaasPolicyResultOutput) FreeformTags

func (o GetWaasPolicyResultOutput) FreeformTags() pulumi.MapOutput

Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Department": "Finance"}`

func (GetWaasPolicyResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetWaasPolicyResultOutput) OriginGroups

The map of origin groups and their keys used to associate origins to the `wafConfig`. Origin groups allow you to apply weights to groups of origins for load balancing purposes. Origins with higher weights will receive larger proportions of client requests. To add additional origins to your WAAS policy, update the `origins` field of a `UpdateWaasPolicy` request.

func (GetWaasPolicyResultOutput) Origins

A map of host servers (origins) and their keys for the web application. Origin keys are used to associate origins to specific protection rules. The key should be a user-friendly name for the host. **Examples:** `primary` or `secondary`.

func (GetWaasPolicyResultOutput) PolicyConfigs

The configuration details for the WAAS policy.

func (GetWaasPolicyResultOutput) State

The current lifecycle state of the WAAS policy.

func (GetWaasPolicyResultOutput) TimeCreated

The date and time the policy was created, expressed in RFC 3339 timestamp format.

func (GetWaasPolicyResultOutput) ToGetWaasPolicyResultOutput

func (o GetWaasPolicyResultOutput) ToGetWaasPolicyResultOutput() GetWaasPolicyResultOutput

func (GetWaasPolicyResultOutput) ToGetWaasPolicyResultOutputWithContext

func (o GetWaasPolicyResultOutput) ToGetWaasPolicyResultOutputWithContext(ctx context.Context) GetWaasPolicyResultOutput

func (GetWaasPolicyResultOutput) WaasPolicyId

func (GetWaasPolicyResultOutput) WafConfigs

The Web Application Firewall configuration for the WAAS policy.

type GetWaasPolicyWafConfig

type GetWaasPolicyWafConfig struct {
	// The access rules applied to the Web Application Firewall. Used for defining custom access policies with the combination of `ALLOW`, `DETECT`, and `BLOCK` rules, based on different criteria.
	AccessRules []GetWaasPolicyWafConfigAccessRule `pulumi:"accessRules"`
	// The IP address rate limiting settings used to limit the number of requests from an address.
	AddressRateLimiting GetWaasPolicyWafConfigAddressRateLimiting `pulumi:"addressRateLimiting"`
	// A list of caching rules applied to the web application.
	CachingRules []GetWaasPolicyWafConfigCachingRule `pulumi:"cachingRules"`
	// A list of CAPTCHA challenge settings. These are used to challenge requests with a CAPTCHA to block bots.
	Captchas []GetWaasPolicyWafConfigCaptcha `pulumi:"captchas"`
	// A list of the custom protection rule OCIDs and their actions.
	CustomProtectionRules []GetWaasPolicyWafConfigCustomProtectionRule `pulumi:"customProtectionRules"`
	// The device fingerprint challenge settings. Used to detect unique devices based on the device fingerprint information collected in order to block bots.
	DeviceFingerprintChallenge GetWaasPolicyWafConfigDeviceFingerprintChallenge `pulumi:"deviceFingerprintChallenge"`
	// The human interaction challenge settings. Used to look for natural human interactions such as mouse movements, time on site, and page scrolling to identify bots.
	HumanInteractionChallenge GetWaasPolicyWafConfigHumanInteractionChallenge `pulumi:"humanInteractionChallenge"`
	// The JavaScript challenge settings. Used to challenge requests with a JavaScript challenge and take the action if a browser has no JavaScript support in order to block bots.
	JsChallenge GetWaasPolicyWafConfigJsChallenge `pulumi:"jsChallenge"`
	// The key in the map of origins referencing the origin used for the Web Application Firewall. The origin must already be included in `Origins`. Required when creating the `WafConfig` resource, but not on update.
	Origin string `pulumi:"origin"`
	// The map of origin groups and their keys used to associate origins to the `wafConfig`. Origin groups allow you to apply weights to groups of origins for load balancing purposes. Origins with higher weights will receive larger proportions of client requests. To add additional origins to your WAAS policy, update the `origins` field of a `UpdateWaasPolicy` request.
	OriginGroups []string `pulumi:"originGroups"`
	// The settings to apply to protection rules.
	ProtectionSettings GetWaasPolicyWafConfigProtectionSettings `pulumi:"protectionSettings"`
	// A list of IP addresses that bypass the Web Application Firewall.
	Whitelists []GetWaasPolicyWafConfigWhitelist `pulumi:"whitelists"`
}

type GetWaasPolicyWafConfigAccessRule

type GetWaasPolicyWafConfigAccessRule struct {
	// The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.
	Action string `pulumi:"action"`
	// If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.
	BlockAction string `pulumi:"blockAction"`
	// The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.
	BlockErrorPageCode string `pulumi:"blockErrorPageCode"`
	// The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`
	BlockErrorPageDescription string `pulumi:"blockErrorPageDescription"`
	// The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'
	BlockErrorPageMessage string `pulumi:"blockErrorPageMessage"`
	// The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.
	BlockResponseCode int `pulumi:"blockResponseCode"`
	// The list of challenges to bypass when `action` is set to `BYPASS`. If unspecified or empty, all challenges are bypassed.
	// * **JS_CHALLENGE:** Bypasses JavaScript Challenge.
	// * **DEVICE_FINGERPRINT_CHALLENGE:** Bypasses Device Fingerprint Challenge.
	// * **HUMAN_INTERACTION_CHALLENGE:** Bypasses Human Interaction Challenge.
	// * **CAPTCHA:** Bypasses CAPTCHA Challenge.
	BypassChallenges []string `pulumi:"bypassChallenges"`
	// The text to show in the footer when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, default to `Enter the letters and numbers as they are shown in image above`.
	CaptchaFooter string `pulumi:"captchaFooter"`
	// The text to show in the header when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `We have detected an increased number of attempts to access this webapp. To help us keep this webapp secure, please let us know that you are not a robot by entering the text from captcha below.`
	CaptchaHeader string `pulumi:"captchaHeader"`
	// The text to show on the label of the CAPTCHA challenge submit button when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Yes, I am human`.
	CaptchaSubmitLabel string `pulumi:"captchaSubmitLabel"`
	// The title used when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Are you human?`
	CaptchaTitle string `pulumi:"captchaTitle"`
	// When defined, the JavaScript Challenge would be applied only for the requests that matched all the listed conditions.
	Criterias []GetWaasPolicyWafConfigAccessRuleCriteria `pulumi:"criterias"`
	// The unique name of the whitelist.
	Name string `pulumi:"name"`
	// The response status code to return when `action` is set to `REDIRECT`.
	// * **MOVED_PERMANENTLY:** Used for designating the permanent movement of a page (numerical code - 301).
	// * **FOUND:** Used for designating the temporary movement of a page (numerical code - 302).
	RedirectResponseCode string `pulumi:"redirectResponseCode"`
	// The target to which the request should be redirected, represented as a URI reference. Required when `action` is `REDIRECT`.
	RedirectUrl string `pulumi:"redirectUrl"`
	// An object that represents an action to apply to an HTTP response headers if all rule criteria will be matched regardless of `action` value.
	ResponseHeaderManipulations []GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulation `pulumi:"responseHeaderManipulations"`
}

type GetWaasPolicyWafConfigAccessRuleArgs

type GetWaasPolicyWafConfigAccessRuleArgs struct {
	// The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.
	Action pulumi.StringInput `pulumi:"action"`
	// If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.
	BlockAction pulumi.StringInput `pulumi:"blockAction"`
	// The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.
	BlockErrorPageCode pulumi.StringInput `pulumi:"blockErrorPageCode"`
	// The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`
	BlockErrorPageDescription pulumi.StringInput `pulumi:"blockErrorPageDescription"`
	// The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'
	BlockErrorPageMessage pulumi.StringInput `pulumi:"blockErrorPageMessage"`
	// The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.
	BlockResponseCode pulumi.IntInput `pulumi:"blockResponseCode"`
	// The list of challenges to bypass when `action` is set to `BYPASS`. If unspecified or empty, all challenges are bypassed.
	// * **JS_CHALLENGE:** Bypasses JavaScript Challenge.
	// * **DEVICE_FINGERPRINT_CHALLENGE:** Bypasses Device Fingerprint Challenge.
	// * **HUMAN_INTERACTION_CHALLENGE:** Bypasses Human Interaction Challenge.
	// * **CAPTCHA:** Bypasses CAPTCHA Challenge.
	BypassChallenges pulumi.StringArrayInput `pulumi:"bypassChallenges"`
	// The text to show in the footer when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, default to `Enter the letters and numbers as they are shown in image above`.
	CaptchaFooter pulumi.StringInput `pulumi:"captchaFooter"`
	// The text to show in the header when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `We have detected an increased number of attempts to access this webapp. To help us keep this webapp secure, please let us know that you are not a robot by entering the text from captcha below.`
	CaptchaHeader pulumi.StringInput `pulumi:"captchaHeader"`
	// The text to show on the label of the CAPTCHA challenge submit button when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Yes, I am human`.
	CaptchaSubmitLabel pulumi.StringInput `pulumi:"captchaSubmitLabel"`
	// The title used when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Are you human?`
	CaptchaTitle pulumi.StringInput `pulumi:"captchaTitle"`
	// When defined, the JavaScript Challenge would be applied only for the requests that matched all the listed conditions.
	Criterias GetWaasPolicyWafConfigAccessRuleCriteriaArrayInput `pulumi:"criterias"`
	// The unique name of the whitelist.
	Name pulumi.StringInput `pulumi:"name"`
	// The response status code to return when `action` is set to `REDIRECT`.
	// * **MOVED_PERMANENTLY:** Used for designating the permanent movement of a page (numerical code - 301).
	// * **FOUND:** Used for designating the temporary movement of a page (numerical code - 302).
	RedirectResponseCode pulumi.StringInput `pulumi:"redirectResponseCode"`
	// The target to which the request should be redirected, represented as a URI reference. Required when `action` is `REDIRECT`.
	RedirectUrl pulumi.StringInput `pulumi:"redirectUrl"`
	// An object that represents an action to apply to an HTTP response headers if all rule criteria will be matched regardless of `action` value.
	ResponseHeaderManipulations GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArrayInput `pulumi:"responseHeaderManipulations"`
}

func (GetWaasPolicyWafConfigAccessRuleArgs) ElementType

func (GetWaasPolicyWafConfigAccessRuleArgs) ToGetWaasPolicyWafConfigAccessRuleOutput

func (i GetWaasPolicyWafConfigAccessRuleArgs) ToGetWaasPolicyWafConfigAccessRuleOutput() GetWaasPolicyWafConfigAccessRuleOutput

func (GetWaasPolicyWafConfigAccessRuleArgs) ToGetWaasPolicyWafConfigAccessRuleOutputWithContext

func (i GetWaasPolicyWafConfigAccessRuleArgs) ToGetWaasPolicyWafConfigAccessRuleOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigAccessRuleOutput

type GetWaasPolicyWafConfigAccessRuleArray

type GetWaasPolicyWafConfigAccessRuleArray []GetWaasPolicyWafConfigAccessRuleInput

func (GetWaasPolicyWafConfigAccessRuleArray) ElementType

func (GetWaasPolicyWafConfigAccessRuleArray) ToGetWaasPolicyWafConfigAccessRuleArrayOutput

func (i GetWaasPolicyWafConfigAccessRuleArray) ToGetWaasPolicyWafConfigAccessRuleArrayOutput() GetWaasPolicyWafConfigAccessRuleArrayOutput

func (GetWaasPolicyWafConfigAccessRuleArray) ToGetWaasPolicyWafConfigAccessRuleArrayOutputWithContext

func (i GetWaasPolicyWafConfigAccessRuleArray) ToGetWaasPolicyWafConfigAccessRuleArrayOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigAccessRuleArrayOutput

type GetWaasPolicyWafConfigAccessRuleArrayInput

type GetWaasPolicyWafConfigAccessRuleArrayInput interface {
	pulumi.Input

	ToGetWaasPolicyWafConfigAccessRuleArrayOutput() GetWaasPolicyWafConfigAccessRuleArrayOutput
	ToGetWaasPolicyWafConfigAccessRuleArrayOutputWithContext(context.Context) GetWaasPolicyWafConfigAccessRuleArrayOutput
}

GetWaasPolicyWafConfigAccessRuleArrayInput is an input type that accepts GetWaasPolicyWafConfigAccessRuleArray and GetWaasPolicyWafConfigAccessRuleArrayOutput values. You can construct a concrete instance of `GetWaasPolicyWafConfigAccessRuleArrayInput` via:

GetWaasPolicyWafConfigAccessRuleArray{ GetWaasPolicyWafConfigAccessRuleArgs{...} }

type GetWaasPolicyWafConfigAccessRuleArrayOutput

type GetWaasPolicyWafConfigAccessRuleArrayOutput struct{ *pulumi.OutputState }

func (GetWaasPolicyWafConfigAccessRuleArrayOutput) ElementType

func (GetWaasPolicyWafConfigAccessRuleArrayOutput) Index

func (GetWaasPolicyWafConfigAccessRuleArrayOutput) ToGetWaasPolicyWafConfigAccessRuleArrayOutput

func (o GetWaasPolicyWafConfigAccessRuleArrayOutput) ToGetWaasPolicyWafConfigAccessRuleArrayOutput() GetWaasPolicyWafConfigAccessRuleArrayOutput

func (GetWaasPolicyWafConfigAccessRuleArrayOutput) ToGetWaasPolicyWafConfigAccessRuleArrayOutputWithContext

func (o GetWaasPolicyWafConfigAccessRuleArrayOutput) ToGetWaasPolicyWafConfigAccessRuleArrayOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigAccessRuleArrayOutput

type GetWaasPolicyWafConfigAccessRuleCriteria

type GetWaasPolicyWafConfigAccessRuleCriteria struct {
	// The criteria the access rule and JavaScript Challenge uses to determine if action should be taken on a request.
	// * **URL_IS:** Matches if the concatenation of request URL path and query is identical to the contents of the `value` field. URL must start with a `/`.
	// * **URL_IS_NOT:** Matches if the concatenation of request URL path and query is not identical to the contents of the `value` field. URL must start with a `/`.
	// * **URL_STARTS_WITH:** Matches if the concatenation of request URL path and query starts with the contents of the `value` field. URL must start with a `/`.
	// * **URL_PART_ENDS_WITH:** Matches if the concatenation of request URL path and query ends with the contents of the `value` field.
	// * **URL_PART_CONTAINS:** Matches if the concatenation of request URL path and query contains the contents of the `value` field.
	// * **URL_REGEX:** Matches if the concatenation of request URL path and query is described by the regular expression in the value field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org).
	// * **URL_DOES_NOT_MATCH_REGEX:** Matches if the concatenation of request URL path and query is not described by the regular expression in the `value` field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org).
	// * **URL_DOES_NOT_START_WITH:** Matches if the concatenation of request URL path and query does not start with the contents of the `value` field.
	// * **URL_PART_DOES_NOT_CONTAIN:** Matches if the concatenation of request URL path and query does not contain the contents of the `value` field.
	// * **URL_PART_DOES_NOT_END_WITH:** Matches if the concatenation of request URL path and query does not end with the contents of the `value` field.
	// * **IP_IS:** Matches if the request originates from one of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30"
	// * **IP_IS_NOT:** Matches if the request does not originate from any of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30"
	// * **IP_IN_LIST:** Matches if the request originates from one of the IP addresses contained in the referenced address list. The `value` in this case is OCID of the address list.
	// * **IP_NOT_IN_LIST:** Matches if the request does not originate from any IP address contained in the referenced address list. The `value` field in this case is OCID of the address list.
	// * **HTTP_HEADER_CONTAINS:** The HTTP_HEADER_CONTAINS criteria is defined using a compound value separated by a colon: a header field name and a header field value. `host:test.example.com` is an example of a criteria value where `host` is the header field name and `test.example.com` is the header field value. A request matches when the header field name is a case insensitive match and the header field value is a case insensitive, substring match. *Example:* With a criteria value of `host:test.example.com`, where `host` is the name of the field and `test.example.com` is the value of the host field, a request with the header values, `Host: www.test.example.com` will match, where as a request with header values of `host: www.example.com` or `host: test.sub.example.com` will not match.
	// * **HTTP_METHOD_IS:** Matches if the request method is identical to one of the values listed in field. The `value` in this case is string with one or multiple HTTP methods separated by new line symbol \n The list of available methods: `GET`, `HEAD`, `POST`, `PUT`, `DELETE`, `CONNECT`, `OPTIONS`, `TRACE`, `PATCH`
	Condition string `pulumi:"condition"`
	// When enabled, the condition will be matched with case-sensitive rules.
	IsCaseSensitive bool `pulumi:"isCaseSensitive"`
	// The value of the header.
	Value string `pulumi:"value"`
}

type GetWaasPolicyWafConfigAccessRuleCriteriaArgs

type GetWaasPolicyWafConfigAccessRuleCriteriaArgs struct {
	// The criteria the access rule and JavaScript Challenge uses to determine if action should be taken on a request.
	// * **URL_IS:** Matches if the concatenation of request URL path and query is identical to the contents of the `value` field. URL must start with a `/`.
	// * **URL_IS_NOT:** Matches if the concatenation of request URL path and query is not identical to the contents of the `value` field. URL must start with a `/`.
	// * **URL_STARTS_WITH:** Matches if the concatenation of request URL path and query starts with the contents of the `value` field. URL must start with a `/`.
	// * **URL_PART_ENDS_WITH:** Matches if the concatenation of request URL path and query ends with the contents of the `value` field.
	// * **URL_PART_CONTAINS:** Matches if the concatenation of request URL path and query contains the contents of the `value` field.
	// * **URL_REGEX:** Matches if the concatenation of request URL path and query is described by the regular expression in the value field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org).
	// * **URL_DOES_NOT_MATCH_REGEX:** Matches if the concatenation of request URL path and query is not described by the regular expression in the `value` field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org).
	// * **URL_DOES_NOT_START_WITH:** Matches if the concatenation of request URL path and query does not start with the contents of the `value` field.
	// * **URL_PART_DOES_NOT_CONTAIN:** Matches if the concatenation of request URL path and query does not contain the contents of the `value` field.
	// * **URL_PART_DOES_NOT_END_WITH:** Matches if the concatenation of request URL path and query does not end with the contents of the `value` field.
	// * **IP_IS:** Matches if the request originates from one of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30"
	// * **IP_IS_NOT:** Matches if the request does not originate from any of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30"
	// * **IP_IN_LIST:** Matches if the request originates from one of the IP addresses contained in the referenced address list. The `value` in this case is OCID of the address list.
	// * **IP_NOT_IN_LIST:** Matches if the request does not originate from any IP address contained in the referenced address list. The `value` field in this case is OCID of the address list.
	// * **HTTP_HEADER_CONTAINS:** The HTTP_HEADER_CONTAINS criteria is defined using a compound value separated by a colon: a header field name and a header field value. `host:test.example.com` is an example of a criteria value where `host` is the header field name and `test.example.com` is the header field value. A request matches when the header field name is a case insensitive match and the header field value is a case insensitive, substring match. *Example:* With a criteria value of `host:test.example.com`, where `host` is the name of the field and `test.example.com` is the value of the host field, a request with the header values, `Host: www.test.example.com` will match, where as a request with header values of `host: www.example.com` or `host: test.sub.example.com` will not match.
	// * **HTTP_METHOD_IS:** Matches if the request method is identical to one of the values listed in field. The `value` in this case is string with one or multiple HTTP methods separated by new line symbol \n The list of available methods: `GET`, `HEAD`, `POST`, `PUT`, `DELETE`, `CONNECT`, `OPTIONS`, `TRACE`, `PATCH`
	Condition pulumi.StringInput `pulumi:"condition"`
	// When enabled, the condition will be matched with case-sensitive rules.
	IsCaseSensitive pulumi.BoolInput `pulumi:"isCaseSensitive"`
	// The value of the header.
	Value pulumi.StringInput `pulumi:"value"`
}

func (GetWaasPolicyWafConfigAccessRuleCriteriaArgs) ElementType

func (GetWaasPolicyWafConfigAccessRuleCriteriaArgs) ToGetWaasPolicyWafConfigAccessRuleCriteriaOutput

func (i GetWaasPolicyWafConfigAccessRuleCriteriaArgs) ToGetWaasPolicyWafConfigAccessRuleCriteriaOutput() GetWaasPolicyWafConfigAccessRuleCriteriaOutput

func (GetWaasPolicyWafConfigAccessRuleCriteriaArgs) ToGetWaasPolicyWafConfigAccessRuleCriteriaOutputWithContext

func (i GetWaasPolicyWafConfigAccessRuleCriteriaArgs) ToGetWaasPolicyWafConfigAccessRuleCriteriaOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigAccessRuleCriteriaOutput

type GetWaasPolicyWafConfigAccessRuleCriteriaArray

type GetWaasPolicyWafConfigAccessRuleCriteriaArray []GetWaasPolicyWafConfigAccessRuleCriteriaInput

func (GetWaasPolicyWafConfigAccessRuleCriteriaArray) ElementType

func (GetWaasPolicyWafConfigAccessRuleCriteriaArray) ToGetWaasPolicyWafConfigAccessRuleCriteriaArrayOutput

func (i GetWaasPolicyWafConfigAccessRuleCriteriaArray) ToGetWaasPolicyWafConfigAccessRuleCriteriaArrayOutput() GetWaasPolicyWafConfigAccessRuleCriteriaArrayOutput

func (GetWaasPolicyWafConfigAccessRuleCriteriaArray) ToGetWaasPolicyWafConfigAccessRuleCriteriaArrayOutputWithContext

func (i GetWaasPolicyWafConfigAccessRuleCriteriaArray) ToGetWaasPolicyWafConfigAccessRuleCriteriaArrayOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigAccessRuleCriteriaArrayOutput

type GetWaasPolicyWafConfigAccessRuleCriteriaArrayInput

type GetWaasPolicyWafConfigAccessRuleCriteriaArrayInput interface {
	pulumi.Input

	ToGetWaasPolicyWafConfigAccessRuleCriteriaArrayOutput() GetWaasPolicyWafConfigAccessRuleCriteriaArrayOutput
	ToGetWaasPolicyWafConfigAccessRuleCriteriaArrayOutputWithContext(context.Context) GetWaasPolicyWafConfigAccessRuleCriteriaArrayOutput
}

GetWaasPolicyWafConfigAccessRuleCriteriaArrayInput is an input type that accepts GetWaasPolicyWafConfigAccessRuleCriteriaArray and GetWaasPolicyWafConfigAccessRuleCriteriaArrayOutput values. You can construct a concrete instance of `GetWaasPolicyWafConfigAccessRuleCriteriaArrayInput` via:

GetWaasPolicyWafConfigAccessRuleCriteriaArray{ GetWaasPolicyWafConfigAccessRuleCriteriaArgs{...} }

type GetWaasPolicyWafConfigAccessRuleCriteriaArrayOutput

type GetWaasPolicyWafConfigAccessRuleCriteriaArrayOutput struct{ *pulumi.OutputState }

func (GetWaasPolicyWafConfigAccessRuleCriteriaArrayOutput) ElementType

func (GetWaasPolicyWafConfigAccessRuleCriteriaArrayOutput) Index

func (GetWaasPolicyWafConfigAccessRuleCriteriaArrayOutput) ToGetWaasPolicyWafConfigAccessRuleCriteriaArrayOutput

func (o GetWaasPolicyWafConfigAccessRuleCriteriaArrayOutput) ToGetWaasPolicyWafConfigAccessRuleCriteriaArrayOutput() GetWaasPolicyWafConfigAccessRuleCriteriaArrayOutput

func (GetWaasPolicyWafConfigAccessRuleCriteriaArrayOutput) ToGetWaasPolicyWafConfigAccessRuleCriteriaArrayOutputWithContext

func (o GetWaasPolicyWafConfigAccessRuleCriteriaArrayOutput) ToGetWaasPolicyWafConfigAccessRuleCriteriaArrayOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigAccessRuleCriteriaArrayOutput

type GetWaasPolicyWafConfigAccessRuleCriteriaInput

type GetWaasPolicyWafConfigAccessRuleCriteriaInput interface {
	pulumi.Input

	ToGetWaasPolicyWafConfigAccessRuleCriteriaOutput() GetWaasPolicyWafConfigAccessRuleCriteriaOutput
	ToGetWaasPolicyWafConfigAccessRuleCriteriaOutputWithContext(context.Context) GetWaasPolicyWafConfigAccessRuleCriteriaOutput
}

GetWaasPolicyWafConfigAccessRuleCriteriaInput is an input type that accepts GetWaasPolicyWafConfigAccessRuleCriteriaArgs and GetWaasPolicyWafConfigAccessRuleCriteriaOutput values. You can construct a concrete instance of `GetWaasPolicyWafConfigAccessRuleCriteriaInput` via:

GetWaasPolicyWafConfigAccessRuleCriteriaArgs{...}

type GetWaasPolicyWafConfigAccessRuleCriteriaOutput

type GetWaasPolicyWafConfigAccessRuleCriteriaOutput struct{ *pulumi.OutputState }

func (GetWaasPolicyWafConfigAccessRuleCriteriaOutput) Condition

The criteria the access rule and JavaScript Challenge uses to determine if action should be taken on a request. * **URL_IS:** Matches if the concatenation of request URL path and query is identical to the contents of the `value` field. URL must start with a `/`. * **URL_IS_NOT:** Matches if the concatenation of request URL path and query is not identical to the contents of the `value` field. URL must start with a `/`. * **URL_STARTS_WITH:** Matches if the concatenation of request URL path and query starts with the contents of the `value` field. URL must start with a `/`. * **URL_PART_ENDS_WITH:** Matches if the concatenation of request URL path and query ends with the contents of the `value` field. * **URL_PART_CONTAINS:** Matches if the concatenation of request URL path and query contains the contents of the `value` field. * **URL_REGEX:** Matches if the concatenation of request URL path and query is described by the regular expression in the value field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org). * **URL_DOES_NOT_MATCH_REGEX:** Matches if the concatenation of request URL path and query is not described by the regular expression in the `value` field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org). * **URL_DOES_NOT_START_WITH:** Matches if the concatenation of request URL path and query does not start with the contents of the `value` field. * **URL_PART_DOES_NOT_CONTAIN:** Matches if the concatenation of request URL path and query does not contain the contents of the `value` field. * **URL_PART_DOES_NOT_END_WITH:** Matches if the concatenation of request URL path and query does not end with the contents of the `value` field. * **IP_IS:** Matches if the request originates from one of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30" * **IP_IS_NOT:** Matches if the request does not originate from any of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30" * **IP_IN_LIST:** Matches if the request originates from one of the IP addresses contained in the referenced address list. The `value` in this case is OCID of the address list. * **IP_NOT_IN_LIST:** Matches if the request does not originate from any IP address contained in the referenced address list. The `value` field in this case is OCID of the address list. * **HTTP_HEADER_CONTAINS:** The HTTP_HEADER_CONTAINS criteria is defined using a compound value separated by a colon: a header field name and a header field value. `host:test.example.com` is an example of a criteria value where `host` is the header field name and `test.example.com` is the header field value. A request matches when the header field name is a case insensitive match and the header field value is a case insensitive, substring match. *Example:* With a criteria value of `host:test.example.com`, where `host` is the name of the field and `test.example.com` is the value of the host field, a request with the header values, `Host: www.test.example.com` will match, where as a request with header values of `host: www.example.com` or `host: test.sub.example.com` will not match. * **HTTP_METHOD_IS:** Matches if the request method is identical to one of the values listed in field. The `value` in this case is string with one or multiple HTTP methods separated by new line symbol \n The list of available methods: `GET`, `HEAD`, `POST`, `PUT`, `DELETE`, `CONNECT`, `OPTIONS`, `TRACE`, `PATCH`

func (GetWaasPolicyWafConfigAccessRuleCriteriaOutput) ElementType

func (GetWaasPolicyWafConfigAccessRuleCriteriaOutput) IsCaseSensitive

When enabled, the condition will be matched with case-sensitive rules.

func (GetWaasPolicyWafConfigAccessRuleCriteriaOutput) ToGetWaasPolicyWafConfigAccessRuleCriteriaOutput

func (o GetWaasPolicyWafConfigAccessRuleCriteriaOutput) ToGetWaasPolicyWafConfigAccessRuleCriteriaOutput() GetWaasPolicyWafConfigAccessRuleCriteriaOutput

func (GetWaasPolicyWafConfigAccessRuleCriteriaOutput) ToGetWaasPolicyWafConfigAccessRuleCriteriaOutputWithContext

func (o GetWaasPolicyWafConfigAccessRuleCriteriaOutput) ToGetWaasPolicyWafConfigAccessRuleCriteriaOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigAccessRuleCriteriaOutput

func (GetWaasPolicyWafConfigAccessRuleCriteriaOutput) Value

The value of the header.

type GetWaasPolicyWafConfigAccessRuleInput

type GetWaasPolicyWafConfigAccessRuleInput interface {
	pulumi.Input

	ToGetWaasPolicyWafConfigAccessRuleOutput() GetWaasPolicyWafConfigAccessRuleOutput
	ToGetWaasPolicyWafConfigAccessRuleOutputWithContext(context.Context) GetWaasPolicyWafConfigAccessRuleOutput
}

GetWaasPolicyWafConfigAccessRuleInput is an input type that accepts GetWaasPolicyWafConfigAccessRuleArgs and GetWaasPolicyWafConfigAccessRuleOutput values. You can construct a concrete instance of `GetWaasPolicyWafConfigAccessRuleInput` via:

GetWaasPolicyWafConfigAccessRuleArgs{...}

type GetWaasPolicyWafConfigAccessRuleOutput

type GetWaasPolicyWafConfigAccessRuleOutput struct{ *pulumi.OutputState }

func (GetWaasPolicyWafConfigAccessRuleOutput) Action

The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.

func (GetWaasPolicyWafConfigAccessRuleOutput) BlockAction

If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.

func (GetWaasPolicyWafConfigAccessRuleOutput) BlockErrorPageCode

The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.

func (GetWaasPolicyWafConfigAccessRuleOutput) BlockErrorPageDescription

func (o GetWaasPolicyWafConfigAccessRuleOutput) BlockErrorPageDescription() pulumi.StringOutput

The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`

func (GetWaasPolicyWafConfigAccessRuleOutput) BlockErrorPageMessage

The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'

func (GetWaasPolicyWafConfigAccessRuleOutput) BlockResponseCode

The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.

func (GetWaasPolicyWafConfigAccessRuleOutput) BypassChallenges

The list of challenges to bypass when `action` is set to `BYPASS`. If unspecified or empty, all challenges are bypassed. * **JS_CHALLENGE:** Bypasses JavaScript Challenge. * **DEVICE_FINGERPRINT_CHALLENGE:** Bypasses Device Fingerprint Challenge. * **HUMAN_INTERACTION_CHALLENGE:** Bypasses Human Interaction Challenge. * **CAPTCHA:** Bypasses CAPTCHA Challenge.

func (GetWaasPolicyWafConfigAccessRuleOutput) CaptchaFooter

The text to show in the footer when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, default to `Enter the letters and numbers as they are shown in image above`.

func (GetWaasPolicyWafConfigAccessRuleOutput) CaptchaHeader

The text to show in the header when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `We have detected an increased number of attempts to access this webapp. To help us keep this webapp secure, please let us know that you are not a robot by entering the text from captcha below.`

func (GetWaasPolicyWafConfigAccessRuleOutput) CaptchaSubmitLabel

The text to show on the label of the CAPTCHA challenge submit button when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Yes, I am human`.

func (GetWaasPolicyWafConfigAccessRuleOutput) CaptchaTitle

The title used when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Are you human?`

func (GetWaasPolicyWafConfigAccessRuleOutput) Criterias

When defined, the JavaScript Challenge would be applied only for the requests that matched all the listed conditions.

func (GetWaasPolicyWafConfigAccessRuleOutput) ElementType

func (GetWaasPolicyWafConfigAccessRuleOutput) Name

The unique name of the whitelist.

func (GetWaasPolicyWafConfigAccessRuleOutput) RedirectResponseCode

The response status code to return when `action` is set to `REDIRECT`. * **MOVED_PERMANENTLY:** Used for designating the permanent movement of a page (numerical code - 301). * **FOUND:** Used for designating the temporary movement of a page (numerical code - 302).

func (GetWaasPolicyWafConfigAccessRuleOutput) RedirectUrl

The target to which the request should be redirected, represented as a URI reference. Required when `action` is `REDIRECT`.

func (GetWaasPolicyWafConfigAccessRuleOutput) ResponseHeaderManipulations

An object that represents an action to apply to an HTTP response headers if all rule criteria will be matched regardless of `action` value.

func (GetWaasPolicyWafConfigAccessRuleOutput) ToGetWaasPolicyWafConfigAccessRuleOutput

func (o GetWaasPolicyWafConfigAccessRuleOutput) ToGetWaasPolicyWafConfigAccessRuleOutput() GetWaasPolicyWafConfigAccessRuleOutput

func (GetWaasPolicyWafConfigAccessRuleOutput) ToGetWaasPolicyWafConfigAccessRuleOutputWithContext

func (o GetWaasPolicyWafConfigAccessRuleOutput) ToGetWaasPolicyWafConfigAccessRuleOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigAccessRuleOutput

type GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulation

type GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulation struct {
	// The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.
	Action string `pulumi:"action"`
	// A header field name that conforms to RFC 7230.  Example: `exampleHeaderName`
	Header string `pulumi:"header"`
	// The value of the header.
	Value string `pulumi:"value"`
}

type GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArgs

type GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArgs struct {
	// The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.
	Action pulumi.StringInput `pulumi:"action"`
	// A header field name that conforms to RFC 7230.  Example: `exampleHeaderName`
	Header pulumi.StringInput `pulumi:"header"`
	// The value of the header.
	Value pulumi.StringInput `pulumi:"value"`
}

func (GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArgs) ElementType

func (GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArgs) ToGetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationOutput

func (GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArgs) ToGetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationOutputWithContext

func (i GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArgs) ToGetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationOutput

type GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArray

type GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArray []GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationInput

func (GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArray) ElementType

func (GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArray) ToGetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutput

func (GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArray) ToGetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutputWithContext

func (i GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArray) ToGetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutput

type GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArrayInput

type GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArrayInput interface {
	pulumi.Input

	ToGetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutput() GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutput
	ToGetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutputWithContext(context.Context) GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutput
}

GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArrayInput is an input type that accepts GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArray and GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutput values. You can construct a concrete instance of `GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArrayInput` via:

GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArray{ GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArgs{...} }

type GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutput

type GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutput struct{ *pulumi.OutputState }

func (GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutput) ElementType

func (GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutput) ToGetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutput

func (GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutput) ToGetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutputWithContext

func (o GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutput) ToGetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutput

type GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationInput

type GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationInput interface {
	pulumi.Input

	ToGetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationOutput() GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationOutput
	ToGetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationOutputWithContext(context.Context) GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationOutput
}

GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationInput is an input type that accepts GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArgs and GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationOutput values. You can construct a concrete instance of `GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationInput` via:

GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationArgs{...}

type GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationOutput

type GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationOutput struct{ *pulumi.OutputState }

func (GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationOutput) Action

The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.

func (GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationOutput) ElementType

func (GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationOutput) Header

A header field name that conforms to RFC 7230. Example: `exampleHeaderName`

func (GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationOutput) ToGetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationOutput

func (GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationOutput) ToGetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationOutputWithContext

func (o GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationOutput) ToGetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationOutput

func (GetWaasPolicyWafConfigAccessRuleResponseHeaderManipulationOutput) Value

The value of the header.

type GetWaasPolicyWafConfigAddressRateLimiting

type GetWaasPolicyWafConfigAddressRateLimiting struct {
	// The number of allowed requests per second from one IP address. If unspecified, defaults to `1`.
	AllowedRatePerAddress int `pulumi:"allowedRatePerAddress"`
	// The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.
	BlockResponseCode int `pulumi:"blockResponseCode"`
	// Enables or disables the JavaScript challenge Web Application Firewall feature.
	IsEnabled bool `pulumi:"isEnabled"`
	// The maximum number of requests allowed to be queued before subsequent requests are dropped. If unspecified, defaults to `10`.
	MaxDelayedCountPerAddress int `pulumi:"maxDelayedCountPerAddress"`
}

type GetWaasPolicyWafConfigAddressRateLimitingArgs

type GetWaasPolicyWafConfigAddressRateLimitingArgs struct {
	// The number of allowed requests per second from one IP address. If unspecified, defaults to `1`.
	AllowedRatePerAddress pulumi.IntInput `pulumi:"allowedRatePerAddress"`
	// The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.
	BlockResponseCode pulumi.IntInput `pulumi:"blockResponseCode"`
	// Enables or disables the JavaScript challenge Web Application Firewall feature.
	IsEnabled pulumi.BoolInput `pulumi:"isEnabled"`
	// The maximum number of requests allowed to be queued before subsequent requests are dropped. If unspecified, defaults to `10`.
	MaxDelayedCountPerAddress pulumi.IntInput `pulumi:"maxDelayedCountPerAddress"`
}

func (GetWaasPolicyWafConfigAddressRateLimitingArgs) ElementType

func (GetWaasPolicyWafConfigAddressRateLimitingArgs) ToGetWaasPolicyWafConfigAddressRateLimitingOutput

func (i GetWaasPolicyWafConfigAddressRateLimitingArgs) ToGetWaasPolicyWafConfigAddressRateLimitingOutput() GetWaasPolicyWafConfigAddressRateLimitingOutput

func (GetWaasPolicyWafConfigAddressRateLimitingArgs) ToGetWaasPolicyWafConfigAddressRateLimitingOutputWithContext

func (i GetWaasPolicyWafConfigAddressRateLimitingArgs) ToGetWaasPolicyWafConfigAddressRateLimitingOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigAddressRateLimitingOutput

type GetWaasPolicyWafConfigAddressRateLimitingInput

type GetWaasPolicyWafConfigAddressRateLimitingInput interface {
	pulumi.Input

	ToGetWaasPolicyWafConfigAddressRateLimitingOutput() GetWaasPolicyWafConfigAddressRateLimitingOutput
	ToGetWaasPolicyWafConfigAddressRateLimitingOutputWithContext(context.Context) GetWaasPolicyWafConfigAddressRateLimitingOutput
}

GetWaasPolicyWafConfigAddressRateLimitingInput is an input type that accepts GetWaasPolicyWafConfigAddressRateLimitingArgs and GetWaasPolicyWafConfigAddressRateLimitingOutput values. You can construct a concrete instance of `GetWaasPolicyWafConfigAddressRateLimitingInput` via:

GetWaasPolicyWafConfigAddressRateLimitingArgs{...}

type GetWaasPolicyWafConfigAddressRateLimitingOutput

type GetWaasPolicyWafConfigAddressRateLimitingOutput struct{ *pulumi.OutputState }

func (GetWaasPolicyWafConfigAddressRateLimitingOutput) AllowedRatePerAddress

The number of allowed requests per second from one IP address. If unspecified, defaults to `1`.

func (GetWaasPolicyWafConfigAddressRateLimitingOutput) BlockResponseCode

The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.

func (GetWaasPolicyWafConfigAddressRateLimitingOutput) ElementType

func (GetWaasPolicyWafConfigAddressRateLimitingOutput) IsEnabled

Enables or disables the JavaScript challenge Web Application Firewall feature.

func (GetWaasPolicyWafConfigAddressRateLimitingOutput) MaxDelayedCountPerAddress

The maximum number of requests allowed to be queued before subsequent requests are dropped. If unspecified, defaults to `10`.

func (GetWaasPolicyWafConfigAddressRateLimitingOutput) ToGetWaasPolicyWafConfigAddressRateLimitingOutput

func (o GetWaasPolicyWafConfigAddressRateLimitingOutput) ToGetWaasPolicyWafConfigAddressRateLimitingOutput() GetWaasPolicyWafConfigAddressRateLimitingOutput

func (GetWaasPolicyWafConfigAddressRateLimitingOutput) ToGetWaasPolicyWafConfigAddressRateLimitingOutputWithContext

func (o GetWaasPolicyWafConfigAddressRateLimitingOutput) ToGetWaasPolicyWafConfigAddressRateLimitingOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigAddressRateLimitingOutput

type GetWaasPolicyWafConfigArgs

type GetWaasPolicyWafConfigArgs struct {
	// The access rules applied to the Web Application Firewall. Used for defining custom access policies with the combination of `ALLOW`, `DETECT`, and `BLOCK` rules, based on different criteria.
	AccessRules GetWaasPolicyWafConfigAccessRuleArrayInput `pulumi:"accessRules"`
	// The IP address rate limiting settings used to limit the number of requests from an address.
	AddressRateLimiting GetWaasPolicyWafConfigAddressRateLimitingInput `pulumi:"addressRateLimiting"`
	// A list of caching rules applied to the web application.
	CachingRules GetWaasPolicyWafConfigCachingRuleArrayInput `pulumi:"cachingRules"`
	// A list of CAPTCHA challenge settings. These are used to challenge requests with a CAPTCHA to block bots.
	Captchas GetWaasPolicyWafConfigCaptchaArrayInput `pulumi:"captchas"`
	// A list of the custom protection rule OCIDs and their actions.
	CustomProtectionRules GetWaasPolicyWafConfigCustomProtectionRuleArrayInput `pulumi:"customProtectionRules"`
	// The device fingerprint challenge settings. Used to detect unique devices based on the device fingerprint information collected in order to block bots.
	DeviceFingerprintChallenge GetWaasPolicyWafConfigDeviceFingerprintChallengeInput `pulumi:"deviceFingerprintChallenge"`
	// The human interaction challenge settings. Used to look for natural human interactions such as mouse movements, time on site, and page scrolling to identify bots.
	HumanInteractionChallenge GetWaasPolicyWafConfigHumanInteractionChallengeInput `pulumi:"humanInteractionChallenge"`
	// The JavaScript challenge settings. Used to challenge requests with a JavaScript challenge and take the action if a browser has no JavaScript support in order to block bots.
	JsChallenge GetWaasPolicyWafConfigJsChallengeInput `pulumi:"jsChallenge"`
	// The key in the map of origins referencing the origin used for the Web Application Firewall. The origin must already be included in `Origins`. Required when creating the `WafConfig` resource, but not on update.
	Origin pulumi.StringInput `pulumi:"origin"`
	// The map of origin groups and their keys used to associate origins to the `wafConfig`. Origin groups allow you to apply weights to groups of origins for load balancing purposes. Origins with higher weights will receive larger proportions of client requests. To add additional origins to your WAAS policy, update the `origins` field of a `UpdateWaasPolicy` request.
	OriginGroups pulumi.StringArrayInput `pulumi:"originGroups"`
	// The settings to apply to protection rules.
	ProtectionSettings GetWaasPolicyWafConfigProtectionSettingsInput `pulumi:"protectionSettings"`
	// A list of IP addresses that bypass the Web Application Firewall.
	Whitelists GetWaasPolicyWafConfigWhitelistArrayInput `pulumi:"whitelists"`
}

func (GetWaasPolicyWafConfigArgs) ElementType

func (GetWaasPolicyWafConfigArgs) ElementType() reflect.Type

func (GetWaasPolicyWafConfigArgs) ToGetWaasPolicyWafConfigOutput

func (i GetWaasPolicyWafConfigArgs) ToGetWaasPolicyWafConfigOutput() GetWaasPolicyWafConfigOutput

func (GetWaasPolicyWafConfigArgs) ToGetWaasPolicyWafConfigOutputWithContext

func (i GetWaasPolicyWafConfigArgs) ToGetWaasPolicyWafConfigOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigOutput

type GetWaasPolicyWafConfigArray

type GetWaasPolicyWafConfigArray []GetWaasPolicyWafConfigInput

func (GetWaasPolicyWafConfigArray) ElementType

func (GetWaasPolicyWafConfigArray) ToGetWaasPolicyWafConfigArrayOutput

func (i GetWaasPolicyWafConfigArray) ToGetWaasPolicyWafConfigArrayOutput() GetWaasPolicyWafConfigArrayOutput

func (GetWaasPolicyWafConfigArray) ToGetWaasPolicyWafConfigArrayOutputWithContext

func (i GetWaasPolicyWafConfigArray) ToGetWaasPolicyWafConfigArrayOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigArrayOutput

type GetWaasPolicyWafConfigArrayInput

type GetWaasPolicyWafConfigArrayInput interface {
	pulumi.Input

	ToGetWaasPolicyWafConfigArrayOutput() GetWaasPolicyWafConfigArrayOutput
	ToGetWaasPolicyWafConfigArrayOutputWithContext(context.Context) GetWaasPolicyWafConfigArrayOutput
}

GetWaasPolicyWafConfigArrayInput is an input type that accepts GetWaasPolicyWafConfigArray and GetWaasPolicyWafConfigArrayOutput values. You can construct a concrete instance of `GetWaasPolicyWafConfigArrayInput` via:

GetWaasPolicyWafConfigArray{ GetWaasPolicyWafConfigArgs{...} }

type GetWaasPolicyWafConfigArrayOutput

type GetWaasPolicyWafConfigArrayOutput struct{ *pulumi.OutputState }

func (GetWaasPolicyWafConfigArrayOutput) ElementType

func (GetWaasPolicyWafConfigArrayOutput) Index

func (GetWaasPolicyWafConfigArrayOutput) ToGetWaasPolicyWafConfigArrayOutput

func (o GetWaasPolicyWafConfigArrayOutput) ToGetWaasPolicyWafConfigArrayOutput() GetWaasPolicyWafConfigArrayOutput

func (GetWaasPolicyWafConfigArrayOutput) ToGetWaasPolicyWafConfigArrayOutputWithContext

func (o GetWaasPolicyWafConfigArrayOutput) ToGetWaasPolicyWafConfigArrayOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigArrayOutput

type GetWaasPolicyWafConfigCachingRule

type GetWaasPolicyWafConfigCachingRule struct {
	// The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.
	Action string `pulumi:"action"`
	// The duration to cache content for the caching rule, specified in ISO 8601 extended format. Supported units: seconds, minutes, hours, days, weeks, months. The maximum value that can be set for any unit is `99`. Mixing of multiple units is not supported. Only applies when the `action` is set to `CACHE`. Example: `PT1H`
	CachingDuration string `pulumi:"cachingDuration"`
	// The duration to cache content in the user's browser, specified in ISO 8601 extended format. Supported units: seconds, minutes, hours, days, weeks, months. The maximum value that can be set for any unit is `99`. Mixing of multiple units is not supported. Only applies when the `action` is set to `CACHE`. Example: `PT1H`
	ClientCachingDuration string `pulumi:"clientCachingDuration"`
	// When defined, the JavaScript Challenge would be applied only for the requests that matched all the listed conditions.
	Criterias []GetWaasPolicyWafConfigCachingRuleCriteria `pulumi:"criterias"`
	// Enables or disables client caching. Browsers use the `Cache-Control` header value for caching content locally in the browser. This setting overrides the addition of a `Cache-Control` header in responses.
	IsClientCachingEnabled bool `pulumi:"isClientCachingEnabled"`
	// The unique key for the caching rule.
	Key string `pulumi:"key"`
	// The unique name of the whitelist.
	Name string `pulumi:"name"`
}

type GetWaasPolicyWafConfigCachingRuleArgs

type GetWaasPolicyWafConfigCachingRuleArgs struct {
	// The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.
	Action pulumi.StringInput `pulumi:"action"`
	// The duration to cache content for the caching rule, specified in ISO 8601 extended format. Supported units: seconds, minutes, hours, days, weeks, months. The maximum value that can be set for any unit is `99`. Mixing of multiple units is not supported. Only applies when the `action` is set to `CACHE`. Example: `PT1H`
	CachingDuration pulumi.StringInput `pulumi:"cachingDuration"`
	// The duration to cache content in the user's browser, specified in ISO 8601 extended format. Supported units: seconds, minutes, hours, days, weeks, months. The maximum value that can be set for any unit is `99`. Mixing of multiple units is not supported. Only applies when the `action` is set to `CACHE`. Example: `PT1H`
	ClientCachingDuration pulumi.StringInput `pulumi:"clientCachingDuration"`
	// When defined, the JavaScript Challenge would be applied only for the requests that matched all the listed conditions.
	Criterias GetWaasPolicyWafConfigCachingRuleCriteriaArrayInput `pulumi:"criterias"`
	// Enables or disables client caching. Browsers use the `Cache-Control` header value for caching content locally in the browser. This setting overrides the addition of a `Cache-Control` header in responses.
	IsClientCachingEnabled pulumi.BoolInput `pulumi:"isClientCachingEnabled"`
	// The unique key for the caching rule.
	Key pulumi.StringInput `pulumi:"key"`
	// The unique name of the whitelist.
	Name pulumi.StringInput `pulumi:"name"`
}

func (GetWaasPolicyWafConfigCachingRuleArgs) ElementType

func (GetWaasPolicyWafConfigCachingRuleArgs) ToGetWaasPolicyWafConfigCachingRuleOutput

func (i GetWaasPolicyWafConfigCachingRuleArgs) ToGetWaasPolicyWafConfigCachingRuleOutput() GetWaasPolicyWafConfigCachingRuleOutput

func (GetWaasPolicyWafConfigCachingRuleArgs) ToGetWaasPolicyWafConfigCachingRuleOutputWithContext

func (i GetWaasPolicyWafConfigCachingRuleArgs) ToGetWaasPolicyWafConfigCachingRuleOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigCachingRuleOutput

type GetWaasPolicyWafConfigCachingRuleArray

type GetWaasPolicyWafConfigCachingRuleArray []GetWaasPolicyWafConfigCachingRuleInput

func (GetWaasPolicyWafConfigCachingRuleArray) ElementType

func (GetWaasPolicyWafConfigCachingRuleArray) ToGetWaasPolicyWafConfigCachingRuleArrayOutput

func (i GetWaasPolicyWafConfigCachingRuleArray) ToGetWaasPolicyWafConfigCachingRuleArrayOutput() GetWaasPolicyWafConfigCachingRuleArrayOutput

func (GetWaasPolicyWafConfigCachingRuleArray) ToGetWaasPolicyWafConfigCachingRuleArrayOutputWithContext

func (i GetWaasPolicyWafConfigCachingRuleArray) ToGetWaasPolicyWafConfigCachingRuleArrayOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigCachingRuleArrayOutput

type GetWaasPolicyWafConfigCachingRuleArrayInput

type GetWaasPolicyWafConfigCachingRuleArrayInput interface {
	pulumi.Input

	ToGetWaasPolicyWafConfigCachingRuleArrayOutput() GetWaasPolicyWafConfigCachingRuleArrayOutput
	ToGetWaasPolicyWafConfigCachingRuleArrayOutputWithContext(context.Context) GetWaasPolicyWafConfigCachingRuleArrayOutput
}

GetWaasPolicyWafConfigCachingRuleArrayInput is an input type that accepts GetWaasPolicyWafConfigCachingRuleArray and GetWaasPolicyWafConfigCachingRuleArrayOutput values. You can construct a concrete instance of `GetWaasPolicyWafConfigCachingRuleArrayInput` via:

GetWaasPolicyWafConfigCachingRuleArray{ GetWaasPolicyWafConfigCachingRuleArgs{...} }

type GetWaasPolicyWafConfigCachingRuleArrayOutput

type GetWaasPolicyWafConfigCachingRuleArrayOutput struct{ *pulumi.OutputState }

func (GetWaasPolicyWafConfigCachingRuleArrayOutput) ElementType

func (GetWaasPolicyWafConfigCachingRuleArrayOutput) Index

func (GetWaasPolicyWafConfigCachingRuleArrayOutput) ToGetWaasPolicyWafConfigCachingRuleArrayOutput

func (o GetWaasPolicyWafConfigCachingRuleArrayOutput) ToGetWaasPolicyWafConfigCachingRuleArrayOutput() GetWaasPolicyWafConfigCachingRuleArrayOutput

func (GetWaasPolicyWafConfigCachingRuleArrayOutput) ToGetWaasPolicyWafConfigCachingRuleArrayOutputWithContext

func (o GetWaasPolicyWafConfigCachingRuleArrayOutput) ToGetWaasPolicyWafConfigCachingRuleArrayOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigCachingRuleArrayOutput

type GetWaasPolicyWafConfigCachingRuleCriteria

type GetWaasPolicyWafConfigCachingRuleCriteria struct {
	// The criteria the access rule and JavaScript Challenge uses to determine if action should be taken on a request.
	// * **URL_IS:** Matches if the concatenation of request URL path and query is identical to the contents of the `value` field. URL must start with a `/`.
	// * **URL_IS_NOT:** Matches if the concatenation of request URL path and query is not identical to the contents of the `value` field. URL must start with a `/`.
	// * **URL_STARTS_WITH:** Matches if the concatenation of request URL path and query starts with the contents of the `value` field. URL must start with a `/`.
	// * **URL_PART_ENDS_WITH:** Matches if the concatenation of request URL path and query ends with the contents of the `value` field.
	// * **URL_PART_CONTAINS:** Matches if the concatenation of request URL path and query contains the contents of the `value` field.
	// * **URL_REGEX:** Matches if the concatenation of request URL path and query is described by the regular expression in the value field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org).
	// * **URL_DOES_NOT_MATCH_REGEX:** Matches if the concatenation of request URL path and query is not described by the regular expression in the `value` field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org).
	// * **URL_DOES_NOT_START_WITH:** Matches if the concatenation of request URL path and query does not start with the contents of the `value` field.
	// * **URL_PART_DOES_NOT_CONTAIN:** Matches if the concatenation of request URL path and query does not contain the contents of the `value` field.
	// * **URL_PART_DOES_NOT_END_WITH:** Matches if the concatenation of request URL path and query does not end with the contents of the `value` field.
	// * **IP_IS:** Matches if the request originates from one of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30"
	// * **IP_IS_NOT:** Matches if the request does not originate from any of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30"
	// * **IP_IN_LIST:** Matches if the request originates from one of the IP addresses contained in the referenced address list. The `value` in this case is OCID of the address list.
	// * **IP_NOT_IN_LIST:** Matches if the request does not originate from any IP address contained in the referenced address list. The `value` field in this case is OCID of the address list.
	// * **HTTP_HEADER_CONTAINS:** The HTTP_HEADER_CONTAINS criteria is defined using a compound value separated by a colon: a header field name and a header field value. `host:test.example.com` is an example of a criteria value where `host` is the header field name and `test.example.com` is the header field value. A request matches when the header field name is a case insensitive match and the header field value is a case insensitive, substring match. *Example:* With a criteria value of `host:test.example.com`, where `host` is the name of the field and `test.example.com` is the value of the host field, a request with the header values, `Host: www.test.example.com` will match, where as a request with header values of `host: www.example.com` or `host: test.sub.example.com` will not match.
	// * **HTTP_METHOD_IS:** Matches if the request method is identical to one of the values listed in field. The `value` in this case is string with one or multiple HTTP methods separated by new line symbol \n The list of available methods: `GET`, `HEAD`, `POST`, `PUT`, `DELETE`, `CONNECT`, `OPTIONS`, `TRACE`, `PATCH`
	Condition string `pulumi:"condition"`
	// The value of the header.
	Value string `pulumi:"value"`
}

type GetWaasPolicyWafConfigCachingRuleCriteriaArgs

type GetWaasPolicyWafConfigCachingRuleCriteriaArgs struct {
	// The criteria the access rule and JavaScript Challenge uses to determine if action should be taken on a request.
	// * **URL_IS:** Matches if the concatenation of request URL path and query is identical to the contents of the `value` field. URL must start with a `/`.
	// * **URL_IS_NOT:** Matches if the concatenation of request URL path and query is not identical to the contents of the `value` field. URL must start with a `/`.
	// * **URL_STARTS_WITH:** Matches if the concatenation of request URL path and query starts with the contents of the `value` field. URL must start with a `/`.
	// * **URL_PART_ENDS_WITH:** Matches if the concatenation of request URL path and query ends with the contents of the `value` field.
	// * **URL_PART_CONTAINS:** Matches if the concatenation of request URL path and query contains the contents of the `value` field.
	// * **URL_REGEX:** Matches if the concatenation of request URL path and query is described by the regular expression in the value field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org).
	// * **URL_DOES_NOT_MATCH_REGEX:** Matches if the concatenation of request URL path and query is not described by the regular expression in the `value` field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org).
	// * **URL_DOES_NOT_START_WITH:** Matches if the concatenation of request URL path and query does not start with the contents of the `value` field.
	// * **URL_PART_DOES_NOT_CONTAIN:** Matches if the concatenation of request URL path and query does not contain the contents of the `value` field.
	// * **URL_PART_DOES_NOT_END_WITH:** Matches if the concatenation of request URL path and query does not end with the contents of the `value` field.
	// * **IP_IS:** Matches if the request originates from one of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30"
	// * **IP_IS_NOT:** Matches if the request does not originate from any of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30"
	// * **IP_IN_LIST:** Matches if the request originates from one of the IP addresses contained in the referenced address list. The `value` in this case is OCID of the address list.
	// * **IP_NOT_IN_LIST:** Matches if the request does not originate from any IP address contained in the referenced address list. The `value` field in this case is OCID of the address list.
	// * **HTTP_HEADER_CONTAINS:** The HTTP_HEADER_CONTAINS criteria is defined using a compound value separated by a colon: a header field name and a header field value. `host:test.example.com` is an example of a criteria value where `host` is the header field name and `test.example.com` is the header field value. A request matches when the header field name is a case insensitive match and the header field value is a case insensitive, substring match. *Example:* With a criteria value of `host:test.example.com`, where `host` is the name of the field and `test.example.com` is the value of the host field, a request with the header values, `Host: www.test.example.com` will match, where as a request with header values of `host: www.example.com` or `host: test.sub.example.com` will not match.
	// * **HTTP_METHOD_IS:** Matches if the request method is identical to one of the values listed in field. The `value` in this case is string with one or multiple HTTP methods separated by new line symbol \n The list of available methods: `GET`, `HEAD`, `POST`, `PUT`, `DELETE`, `CONNECT`, `OPTIONS`, `TRACE`, `PATCH`
	Condition pulumi.StringInput `pulumi:"condition"`
	// The value of the header.
	Value pulumi.StringInput `pulumi:"value"`
}

func (GetWaasPolicyWafConfigCachingRuleCriteriaArgs) ElementType

func (GetWaasPolicyWafConfigCachingRuleCriteriaArgs) ToGetWaasPolicyWafConfigCachingRuleCriteriaOutput

func (i GetWaasPolicyWafConfigCachingRuleCriteriaArgs) ToGetWaasPolicyWafConfigCachingRuleCriteriaOutput() GetWaasPolicyWafConfigCachingRuleCriteriaOutput

func (GetWaasPolicyWafConfigCachingRuleCriteriaArgs) ToGetWaasPolicyWafConfigCachingRuleCriteriaOutputWithContext

func (i GetWaasPolicyWafConfigCachingRuleCriteriaArgs) ToGetWaasPolicyWafConfigCachingRuleCriteriaOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigCachingRuleCriteriaOutput

type GetWaasPolicyWafConfigCachingRuleCriteriaArray

type GetWaasPolicyWafConfigCachingRuleCriteriaArray []GetWaasPolicyWafConfigCachingRuleCriteriaInput

func (GetWaasPolicyWafConfigCachingRuleCriteriaArray) ElementType

func (GetWaasPolicyWafConfigCachingRuleCriteriaArray) ToGetWaasPolicyWafConfigCachingRuleCriteriaArrayOutput

func (i GetWaasPolicyWafConfigCachingRuleCriteriaArray) ToGetWaasPolicyWafConfigCachingRuleCriteriaArrayOutput() GetWaasPolicyWafConfigCachingRuleCriteriaArrayOutput

func (GetWaasPolicyWafConfigCachingRuleCriteriaArray) ToGetWaasPolicyWafConfigCachingRuleCriteriaArrayOutputWithContext

func (i GetWaasPolicyWafConfigCachingRuleCriteriaArray) ToGetWaasPolicyWafConfigCachingRuleCriteriaArrayOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigCachingRuleCriteriaArrayOutput

type GetWaasPolicyWafConfigCachingRuleCriteriaArrayInput

type GetWaasPolicyWafConfigCachingRuleCriteriaArrayInput interface {
	pulumi.Input

	ToGetWaasPolicyWafConfigCachingRuleCriteriaArrayOutput() GetWaasPolicyWafConfigCachingRuleCriteriaArrayOutput
	ToGetWaasPolicyWafConfigCachingRuleCriteriaArrayOutputWithContext(context.Context) GetWaasPolicyWafConfigCachingRuleCriteriaArrayOutput
}

GetWaasPolicyWafConfigCachingRuleCriteriaArrayInput is an input type that accepts GetWaasPolicyWafConfigCachingRuleCriteriaArray and GetWaasPolicyWafConfigCachingRuleCriteriaArrayOutput values. You can construct a concrete instance of `GetWaasPolicyWafConfigCachingRuleCriteriaArrayInput` via:

GetWaasPolicyWafConfigCachingRuleCriteriaArray{ GetWaasPolicyWafConfigCachingRuleCriteriaArgs{...} }

type GetWaasPolicyWafConfigCachingRuleCriteriaArrayOutput

type GetWaasPolicyWafConfigCachingRuleCriteriaArrayOutput struct{ *pulumi.OutputState }

func (GetWaasPolicyWafConfigCachingRuleCriteriaArrayOutput) ElementType

func (GetWaasPolicyWafConfigCachingRuleCriteriaArrayOutput) Index

func (GetWaasPolicyWafConfigCachingRuleCriteriaArrayOutput) ToGetWaasPolicyWafConfigCachingRuleCriteriaArrayOutput

func (GetWaasPolicyWafConfigCachingRuleCriteriaArrayOutput) ToGetWaasPolicyWafConfigCachingRuleCriteriaArrayOutputWithContext

func (o GetWaasPolicyWafConfigCachingRuleCriteriaArrayOutput) ToGetWaasPolicyWafConfigCachingRuleCriteriaArrayOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigCachingRuleCriteriaArrayOutput

type GetWaasPolicyWafConfigCachingRuleCriteriaInput

type GetWaasPolicyWafConfigCachingRuleCriteriaInput interface {
	pulumi.Input

	ToGetWaasPolicyWafConfigCachingRuleCriteriaOutput() GetWaasPolicyWafConfigCachingRuleCriteriaOutput
	ToGetWaasPolicyWafConfigCachingRuleCriteriaOutputWithContext(context.Context) GetWaasPolicyWafConfigCachingRuleCriteriaOutput
}

GetWaasPolicyWafConfigCachingRuleCriteriaInput is an input type that accepts GetWaasPolicyWafConfigCachingRuleCriteriaArgs and GetWaasPolicyWafConfigCachingRuleCriteriaOutput values. You can construct a concrete instance of `GetWaasPolicyWafConfigCachingRuleCriteriaInput` via:

GetWaasPolicyWafConfigCachingRuleCriteriaArgs{...}

type GetWaasPolicyWafConfigCachingRuleCriteriaOutput

type GetWaasPolicyWafConfigCachingRuleCriteriaOutput struct{ *pulumi.OutputState }

func (GetWaasPolicyWafConfigCachingRuleCriteriaOutput) Condition

The criteria the access rule and JavaScript Challenge uses to determine if action should be taken on a request. * **URL_IS:** Matches if the concatenation of request URL path and query is identical to the contents of the `value` field. URL must start with a `/`. * **URL_IS_NOT:** Matches if the concatenation of request URL path and query is not identical to the contents of the `value` field. URL must start with a `/`. * **URL_STARTS_WITH:** Matches if the concatenation of request URL path and query starts with the contents of the `value` field. URL must start with a `/`. * **URL_PART_ENDS_WITH:** Matches if the concatenation of request URL path and query ends with the contents of the `value` field. * **URL_PART_CONTAINS:** Matches if the concatenation of request URL path and query contains the contents of the `value` field. * **URL_REGEX:** Matches if the concatenation of request URL path and query is described by the regular expression in the value field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org). * **URL_DOES_NOT_MATCH_REGEX:** Matches if the concatenation of request URL path and query is not described by the regular expression in the `value` field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org). * **URL_DOES_NOT_START_WITH:** Matches if the concatenation of request URL path and query does not start with the contents of the `value` field. * **URL_PART_DOES_NOT_CONTAIN:** Matches if the concatenation of request URL path and query does not contain the contents of the `value` field. * **URL_PART_DOES_NOT_END_WITH:** Matches if the concatenation of request URL path and query does not end with the contents of the `value` field. * **IP_IS:** Matches if the request originates from one of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30" * **IP_IS_NOT:** Matches if the request does not originate from any of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30" * **IP_IN_LIST:** Matches if the request originates from one of the IP addresses contained in the referenced address list. The `value` in this case is OCID of the address list. * **IP_NOT_IN_LIST:** Matches if the request does not originate from any IP address contained in the referenced address list. The `value` field in this case is OCID of the address list. * **HTTP_HEADER_CONTAINS:** The HTTP_HEADER_CONTAINS criteria is defined using a compound value separated by a colon: a header field name and a header field value. `host:test.example.com` is an example of a criteria value where `host` is the header field name and `test.example.com` is the header field value. A request matches when the header field name is a case insensitive match and the header field value is a case insensitive, substring match. *Example:* With a criteria value of `host:test.example.com`, where `host` is the name of the field and `test.example.com` is the value of the host field, a request with the header values, `Host: www.test.example.com` will match, where as a request with header values of `host: www.example.com` or `host: test.sub.example.com` will not match. * **HTTP_METHOD_IS:** Matches if the request method is identical to one of the values listed in field. The `value` in this case is string with one or multiple HTTP methods separated by new line symbol \n The list of available methods: `GET`, `HEAD`, `POST`, `PUT`, `DELETE`, `CONNECT`, `OPTIONS`, `TRACE`, `PATCH`

func (GetWaasPolicyWafConfigCachingRuleCriteriaOutput) ElementType

func (GetWaasPolicyWafConfigCachingRuleCriteriaOutput) ToGetWaasPolicyWafConfigCachingRuleCriteriaOutput

func (o GetWaasPolicyWafConfigCachingRuleCriteriaOutput) ToGetWaasPolicyWafConfigCachingRuleCriteriaOutput() GetWaasPolicyWafConfigCachingRuleCriteriaOutput

func (GetWaasPolicyWafConfigCachingRuleCriteriaOutput) ToGetWaasPolicyWafConfigCachingRuleCriteriaOutputWithContext

func (o GetWaasPolicyWafConfigCachingRuleCriteriaOutput) ToGetWaasPolicyWafConfigCachingRuleCriteriaOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigCachingRuleCriteriaOutput

func (GetWaasPolicyWafConfigCachingRuleCriteriaOutput) Value

The value of the header.

type GetWaasPolicyWafConfigCachingRuleInput

type GetWaasPolicyWafConfigCachingRuleInput interface {
	pulumi.Input

	ToGetWaasPolicyWafConfigCachingRuleOutput() GetWaasPolicyWafConfigCachingRuleOutput
	ToGetWaasPolicyWafConfigCachingRuleOutputWithContext(context.Context) GetWaasPolicyWafConfigCachingRuleOutput
}

GetWaasPolicyWafConfigCachingRuleInput is an input type that accepts GetWaasPolicyWafConfigCachingRuleArgs and GetWaasPolicyWafConfigCachingRuleOutput values. You can construct a concrete instance of `GetWaasPolicyWafConfigCachingRuleInput` via:

GetWaasPolicyWafConfigCachingRuleArgs{...}

type GetWaasPolicyWafConfigCachingRuleOutput

type GetWaasPolicyWafConfigCachingRuleOutput struct{ *pulumi.OutputState }

func (GetWaasPolicyWafConfigCachingRuleOutput) Action

The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.

func (GetWaasPolicyWafConfigCachingRuleOutput) CachingDuration

The duration to cache content for the caching rule, specified in ISO 8601 extended format. Supported units: seconds, minutes, hours, days, weeks, months. The maximum value that can be set for any unit is `99`. Mixing of multiple units is not supported. Only applies when the `action` is set to `CACHE`. Example: `PT1H`

func (GetWaasPolicyWafConfigCachingRuleOutput) ClientCachingDuration

The duration to cache content in the user's browser, specified in ISO 8601 extended format. Supported units: seconds, minutes, hours, days, weeks, months. The maximum value that can be set for any unit is `99`. Mixing of multiple units is not supported. Only applies when the `action` is set to `CACHE`. Example: `PT1H`

func (GetWaasPolicyWafConfigCachingRuleOutput) Criterias

When defined, the JavaScript Challenge would be applied only for the requests that matched all the listed conditions.

func (GetWaasPolicyWafConfigCachingRuleOutput) ElementType

func (GetWaasPolicyWafConfigCachingRuleOutput) IsClientCachingEnabled

func (o GetWaasPolicyWafConfigCachingRuleOutput) IsClientCachingEnabled() pulumi.BoolOutput

Enables or disables client caching. Browsers use the `Cache-Control` header value for caching content locally in the browser. This setting overrides the addition of a `Cache-Control` header in responses.

func (GetWaasPolicyWafConfigCachingRuleOutput) Key

The unique key for the caching rule.

func (GetWaasPolicyWafConfigCachingRuleOutput) Name

The unique name of the whitelist.

func (GetWaasPolicyWafConfigCachingRuleOutput) ToGetWaasPolicyWafConfigCachingRuleOutput

func (o GetWaasPolicyWafConfigCachingRuleOutput) ToGetWaasPolicyWafConfigCachingRuleOutput() GetWaasPolicyWafConfigCachingRuleOutput

func (GetWaasPolicyWafConfigCachingRuleOutput) ToGetWaasPolicyWafConfigCachingRuleOutputWithContext

func (o GetWaasPolicyWafConfigCachingRuleOutput) ToGetWaasPolicyWafConfigCachingRuleOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigCachingRuleOutput

type GetWaasPolicyWafConfigCaptcha

type GetWaasPolicyWafConfigCaptcha struct {
	// The text to show when incorrect CAPTCHA text is entered. If unspecified, defaults to `The CAPTCHA was incorrect. Try again.`
	FailureMessage string `pulumi:"failureMessage"`
	// The text to show in the footer when showing a CAPTCHA challenge. If unspecified, defaults to 'Enter the letters and numbers as they are shown in the image above.'
	FooterText string `pulumi:"footerText"`
	// The text to show in the header when showing a CAPTCHA challenge. If unspecified, defaults to 'We have detected an increased number of attempts to access this website. To help us keep this site secure, please let us know that you are not a robot by entering the text from the image below.'
	HeaderText string `pulumi:"headerText"`
	// The amount of time before the CAPTCHA expires, in seconds. If unspecified, defaults to `300`.
	SessionExpirationInSeconds int `pulumi:"sessionExpirationInSeconds"`
	// The text to show on the label of the CAPTCHA challenge submit button. If unspecified, defaults to `Yes, I am human`.
	SubmitLabel string `pulumi:"submitLabel"`
	// The title used when displaying a CAPTCHA challenge. If unspecified, defaults to `Are you human?`
	Title string `pulumi:"title"`
	// The unique URL path at which to show the CAPTCHA challenge.
	Url string `pulumi:"url"`
}

type GetWaasPolicyWafConfigCaptchaArgs

type GetWaasPolicyWafConfigCaptchaArgs struct {
	// The text to show when incorrect CAPTCHA text is entered. If unspecified, defaults to `The CAPTCHA was incorrect. Try again.`
	FailureMessage pulumi.StringInput `pulumi:"failureMessage"`
	// The text to show in the footer when showing a CAPTCHA challenge. If unspecified, defaults to 'Enter the letters and numbers as they are shown in the image above.'
	FooterText pulumi.StringInput `pulumi:"footerText"`
	// The text to show in the header when showing a CAPTCHA challenge. If unspecified, defaults to 'We have detected an increased number of attempts to access this website. To help us keep this site secure, please let us know that you are not a robot by entering the text from the image below.'
	HeaderText pulumi.StringInput `pulumi:"headerText"`
	// The amount of time before the CAPTCHA expires, in seconds. If unspecified, defaults to `300`.
	SessionExpirationInSeconds pulumi.IntInput `pulumi:"sessionExpirationInSeconds"`
	// The text to show on the label of the CAPTCHA challenge submit button. If unspecified, defaults to `Yes, I am human`.
	SubmitLabel pulumi.StringInput `pulumi:"submitLabel"`
	// The title used when displaying a CAPTCHA challenge. If unspecified, defaults to `Are you human?`
	Title pulumi.StringInput `pulumi:"title"`
	// The unique URL path at which to show the CAPTCHA challenge.
	Url pulumi.StringInput `pulumi:"url"`
}

func (GetWaasPolicyWafConfigCaptchaArgs) ElementType

func (GetWaasPolicyWafConfigCaptchaArgs) ToGetWaasPolicyWafConfigCaptchaOutput

func (i GetWaasPolicyWafConfigCaptchaArgs) ToGetWaasPolicyWafConfigCaptchaOutput() GetWaasPolicyWafConfigCaptchaOutput

func (GetWaasPolicyWafConfigCaptchaArgs) ToGetWaasPolicyWafConfigCaptchaOutputWithContext

func (i GetWaasPolicyWafConfigCaptchaArgs) ToGetWaasPolicyWafConfigCaptchaOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigCaptchaOutput

type GetWaasPolicyWafConfigCaptchaArray

type GetWaasPolicyWafConfigCaptchaArray []GetWaasPolicyWafConfigCaptchaInput

func (GetWaasPolicyWafConfigCaptchaArray) ElementType

func (GetWaasPolicyWafConfigCaptchaArray) ToGetWaasPolicyWafConfigCaptchaArrayOutput

func (i GetWaasPolicyWafConfigCaptchaArray) ToGetWaasPolicyWafConfigCaptchaArrayOutput() GetWaasPolicyWafConfigCaptchaArrayOutput

func (GetWaasPolicyWafConfigCaptchaArray) ToGetWaasPolicyWafConfigCaptchaArrayOutputWithContext

func (i GetWaasPolicyWafConfigCaptchaArray) ToGetWaasPolicyWafConfigCaptchaArrayOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigCaptchaArrayOutput

type GetWaasPolicyWafConfigCaptchaArrayInput

type GetWaasPolicyWafConfigCaptchaArrayInput interface {
	pulumi.Input

	ToGetWaasPolicyWafConfigCaptchaArrayOutput() GetWaasPolicyWafConfigCaptchaArrayOutput
	ToGetWaasPolicyWafConfigCaptchaArrayOutputWithContext(context.Context) GetWaasPolicyWafConfigCaptchaArrayOutput
}

GetWaasPolicyWafConfigCaptchaArrayInput is an input type that accepts GetWaasPolicyWafConfigCaptchaArray and GetWaasPolicyWafConfigCaptchaArrayOutput values. You can construct a concrete instance of `GetWaasPolicyWafConfigCaptchaArrayInput` via:

GetWaasPolicyWafConfigCaptchaArray{ GetWaasPolicyWafConfigCaptchaArgs{...} }

type GetWaasPolicyWafConfigCaptchaArrayOutput

type GetWaasPolicyWafConfigCaptchaArrayOutput struct{ *pulumi.OutputState }

func (GetWaasPolicyWafConfigCaptchaArrayOutput) ElementType

func (GetWaasPolicyWafConfigCaptchaArrayOutput) Index

func (GetWaasPolicyWafConfigCaptchaArrayOutput) ToGetWaasPolicyWafConfigCaptchaArrayOutput

func (o GetWaasPolicyWafConfigCaptchaArrayOutput) ToGetWaasPolicyWafConfigCaptchaArrayOutput() GetWaasPolicyWafConfigCaptchaArrayOutput

func (GetWaasPolicyWafConfigCaptchaArrayOutput) ToGetWaasPolicyWafConfigCaptchaArrayOutputWithContext

func (o GetWaasPolicyWafConfigCaptchaArrayOutput) ToGetWaasPolicyWafConfigCaptchaArrayOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigCaptchaArrayOutput

type GetWaasPolicyWafConfigCaptchaInput

type GetWaasPolicyWafConfigCaptchaInput interface {
	pulumi.Input

	ToGetWaasPolicyWafConfigCaptchaOutput() GetWaasPolicyWafConfigCaptchaOutput
	ToGetWaasPolicyWafConfigCaptchaOutputWithContext(context.Context) GetWaasPolicyWafConfigCaptchaOutput
}

GetWaasPolicyWafConfigCaptchaInput is an input type that accepts GetWaasPolicyWafConfigCaptchaArgs and GetWaasPolicyWafConfigCaptchaOutput values. You can construct a concrete instance of `GetWaasPolicyWafConfigCaptchaInput` via:

GetWaasPolicyWafConfigCaptchaArgs{...}

type GetWaasPolicyWafConfigCaptchaOutput

type GetWaasPolicyWafConfigCaptchaOutput struct{ *pulumi.OutputState }

func (GetWaasPolicyWafConfigCaptchaOutput) ElementType

func (GetWaasPolicyWafConfigCaptchaOutput) FailureMessage

The text to show when incorrect CAPTCHA text is entered. If unspecified, defaults to `The CAPTCHA was incorrect. Try again.`

func (GetWaasPolicyWafConfigCaptchaOutput) FooterText

The text to show in the footer when showing a CAPTCHA challenge. If unspecified, defaults to 'Enter the letters and numbers as they are shown in the image above.'

func (GetWaasPolicyWafConfigCaptchaOutput) HeaderText

The text to show in the header when showing a CAPTCHA challenge. If unspecified, defaults to 'We have detected an increased number of attempts to access this website. To help us keep this site secure, please let us know that you are not a robot by entering the text from the image below.'

func (GetWaasPolicyWafConfigCaptchaOutput) SessionExpirationInSeconds

func (o GetWaasPolicyWafConfigCaptchaOutput) SessionExpirationInSeconds() pulumi.IntOutput

The amount of time before the CAPTCHA expires, in seconds. If unspecified, defaults to `300`.

func (GetWaasPolicyWafConfigCaptchaOutput) SubmitLabel

The text to show on the label of the CAPTCHA challenge submit button. If unspecified, defaults to `Yes, I am human`.

func (GetWaasPolicyWafConfigCaptchaOutput) Title

The title used when displaying a CAPTCHA challenge. If unspecified, defaults to `Are you human?`

func (GetWaasPolicyWafConfigCaptchaOutput) ToGetWaasPolicyWafConfigCaptchaOutput

func (o GetWaasPolicyWafConfigCaptchaOutput) ToGetWaasPolicyWafConfigCaptchaOutput() GetWaasPolicyWafConfigCaptchaOutput

func (GetWaasPolicyWafConfigCaptchaOutput) ToGetWaasPolicyWafConfigCaptchaOutputWithContext

func (o GetWaasPolicyWafConfigCaptchaOutput) ToGetWaasPolicyWafConfigCaptchaOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigCaptchaOutput

func (GetWaasPolicyWafConfigCaptchaOutput) Url

The unique URL path at which to show the CAPTCHA challenge.

type GetWaasPolicyWafConfigCustomProtectionRule

type GetWaasPolicyWafConfigCustomProtectionRule struct {
	// The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.
	Action string `pulumi:"action"`
	// An array of The target property of a request that would allow it to bypass the protection rule. For example, when `target` is `REQUEST_COOKIE_NAMES`, the list may include names of cookies to exclude from the protection rule. When the target is `ARGS`, the list may include strings of URL query parameters and values from form-urlencoded XML, JSON, AMP, or POST payloads to exclude from the protection rule. `Exclusions` properties must not contain whitespace, comma or |. **Note:** If protection rules have been enabled that utilize the `maxArgumentCount` or `maxTotalNameLengthOfArguments` properties, and the `target` property has been set to `ARGS`, it is important that the `exclusions` properties be defined to honor those protection rule settings in a consistent manner.
	Exclusions []GetWaasPolicyWafConfigCustomProtectionRuleExclusion `pulumi:"exclusions"`
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the custom protection rule.
	Id string `pulumi:"id"`
}

type GetWaasPolicyWafConfigCustomProtectionRuleArgs

type GetWaasPolicyWafConfigCustomProtectionRuleArgs struct {
	// The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.
	Action pulumi.StringInput `pulumi:"action"`
	// An array of The target property of a request that would allow it to bypass the protection rule. For example, when `target` is `REQUEST_COOKIE_NAMES`, the list may include names of cookies to exclude from the protection rule. When the target is `ARGS`, the list may include strings of URL query parameters and values from form-urlencoded XML, JSON, AMP, or POST payloads to exclude from the protection rule. `Exclusions` properties must not contain whitespace, comma or |. **Note:** If protection rules have been enabled that utilize the `maxArgumentCount` or `maxTotalNameLengthOfArguments` properties, and the `target` property has been set to `ARGS`, it is important that the `exclusions` properties be defined to honor those protection rule settings in a consistent manner.
	Exclusions GetWaasPolicyWafConfigCustomProtectionRuleExclusionArrayInput `pulumi:"exclusions"`
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the custom protection rule.
	Id pulumi.StringInput `pulumi:"id"`
}

func (GetWaasPolicyWafConfigCustomProtectionRuleArgs) ElementType

func (GetWaasPolicyWafConfigCustomProtectionRuleArgs) ToGetWaasPolicyWafConfigCustomProtectionRuleOutput

func (i GetWaasPolicyWafConfigCustomProtectionRuleArgs) ToGetWaasPolicyWafConfigCustomProtectionRuleOutput() GetWaasPolicyWafConfigCustomProtectionRuleOutput

func (GetWaasPolicyWafConfigCustomProtectionRuleArgs) ToGetWaasPolicyWafConfigCustomProtectionRuleOutputWithContext

func (i GetWaasPolicyWafConfigCustomProtectionRuleArgs) ToGetWaasPolicyWafConfigCustomProtectionRuleOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigCustomProtectionRuleOutput

type GetWaasPolicyWafConfigCustomProtectionRuleArray

type GetWaasPolicyWafConfigCustomProtectionRuleArray []GetWaasPolicyWafConfigCustomProtectionRuleInput

func (GetWaasPolicyWafConfigCustomProtectionRuleArray) ElementType

func (GetWaasPolicyWafConfigCustomProtectionRuleArray) ToGetWaasPolicyWafConfigCustomProtectionRuleArrayOutput

func (i GetWaasPolicyWafConfigCustomProtectionRuleArray) ToGetWaasPolicyWafConfigCustomProtectionRuleArrayOutput() GetWaasPolicyWafConfigCustomProtectionRuleArrayOutput

func (GetWaasPolicyWafConfigCustomProtectionRuleArray) ToGetWaasPolicyWafConfigCustomProtectionRuleArrayOutputWithContext

func (i GetWaasPolicyWafConfigCustomProtectionRuleArray) ToGetWaasPolicyWafConfigCustomProtectionRuleArrayOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigCustomProtectionRuleArrayOutput

type GetWaasPolicyWafConfigCustomProtectionRuleArrayInput

type GetWaasPolicyWafConfigCustomProtectionRuleArrayInput interface {
	pulumi.Input

	ToGetWaasPolicyWafConfigCustomProtectionRuleArrayOutput() GetWaasPolicyWafConfigCustomProtectionRuleArrayOutput
	ToGetWaasPolicyWafConfigCustomProtectionRuleArrayOutputWithContext(context.Context) GetWaasPolicyWafConfigCustomProtectionRuleArrayOutput
}

GetWaasPolicyWafConfigCustomProtectionRuleArrayInput is an input type that accepts GetWaasPolicyWafConfigCustomProtectionRuleArray and GetWaasPolicyWafConfigCustomProtectionRuleArrayOutput values. You can construct a concrete instance of `GetWaasPolicyWafConfigCustomProtectionRuleArrayInput` via:

GetWaasPolicyWafConfigCustomProtectionRuleArray{ GetWaasPolicyWafConfigCustomProtectionRuleArgs{...} }

type GetWaasPolicyWafConfigCustomProtectionRuleArrayOutput

type GetWaasPolicyWafConfigCustomProtectionRuleArrayOutput struct{ *pulumi.OutputState }

func (GetWaasPolicyWafConfigCustomProtectionRuleArrayOutput) ElementType

func (GetWaasPolicyWafConfigCustomProtectionRuleArrayOutput) Index

func (GetWaasPolicyWafConfigCustomProtectionRuleArrayOutput) ToGetWaasPolicyWafConfigCustomProtectionRuleArrayOutput

func (GetWaasPolicyWafConfigCustomProtectionRuleArrayOutput) ToGetWaasPolicyWafConfigCustomProtectionRuleArrayOutputWithContext

func (o GetWaasPolicyWafConfigCustomProtectionRuleArrayOutput) ToGetWaasPolicyWafConfigCustomProtectionRuleArrayOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigCustomProtectionRuleArrayOutput

type GetWaasPolicyWafConfigCustomProtectionRuleExclusion

type GetWaasPolicyWafConfigCustomProtectionRuleExclusion struct {
	// An array of The target property of a request that would allow it to bypass the protection rule. For example, when `target` is `REQUEST_COOKIE_NAMES`, the list may include names of cookies to exclude from the protection rule. When the target is `ARGS`, the list may include strings of URL query parameters and values from form-urlencoded XML, JSON, AMP, or POST payloads to exclude from the protection rule. `Exclusions` properties must not contain whitespace, comma or |. **Note:** If protection rules have been enabled that utilize the `maxArgumentCount` or `maxTotalNameLengthOfArguments` properties, and the `target` property has been set to `ARGS`, it is important that the `exclusions` properties be defined to honor those protection rule settings in a consistent manner.
	Exclusions []string `pulumi:"exclusions"`
	// The target of the exclusion.
	Target string `pulumi:"target"`
}

type GetWaasPolicyWafConfigCustomProtectionRuleExclusionArgs

type GetWaasPolicyWafConfigCustomProtectionRuleExclusionArgs struct {
	// An array of The target property of a request that would allow it to bypass the protection rule. For example, when `target` is `REQUEST_COOKIE_NAMES`, the list may include names of cookies to exclude from the protection rule. When the target is `ARGS`, the list may include strings of URL query parameters and values from form-urlencoded XML, JSON, AMP, or POST payloads to exclude from the protection rule. `Exclusions` properties must not contain whitespace, comma or |. **Note:** If protection rules have been enabled that utilize the `maxArgumentCount` or `maxTotalNameLengthOfArguments` properties, and the `target` property has been set to `ARGS`, it is important that the `exclusions` properties be defined to honor those protection rule settings in a consistent manner.
	Exclusions pulumi.StringArrayInput `pulumi:"exclusions"`
	// The target of the exclusion.
	Target pulumi.StringInput `pulumi:"target"`
}

func (GetWaasPolicyWafConfigCustomProtectionRuleExclusionArgs) ElementType

func (GetWaasPolicyWafConfigCustomProtectionRuleExclusionArgs) ToGetWaasPolicyWafConfigCustomProtectionRuleExclusionOutput

func (GetWaasPolicyWafConfigCustomProtectionRuleExclusionArgs) ToGetWaasPolicyWafConfigCustomProtectionRuleExclusionOutputWithContext

func (i GetWaasPolicyWafConfigCustomProtectionRuleExclusionArgs) ToGetWaasPolicyWafConfigCustomProtectionRuleExclusionOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigCustomProtectionRuleExclusionOutput

type GetWaasPolicyWafConfigCustomProtectionRuleExclusionArray

type GetWaasPolicyWafConfigCustomProtectionRuleExclusionArray []GetWaasPolicyWafConfigCustomProtectionRuleExclusionInput

func (GetWaasPolicyWafConfigCustomProtectionRuleExclusionArray) ElementType

func (GetWaasPolicyWafConfigCustomProtectionRuleExclusionArray) ToGetWaasPolicyWafConfigCustomProtectionRuleExclusionArrayOutput

func (i GetWaasPolicyWafConfigCustomProtectionRuleExclusionArray) ToGetWaasPolicyWafConfigCustomProtectionRuleExclusionArrayOutput() GetWaasPolicyWafConfigCustomProtectionRuleExclusionArrayOutput

func (GetWaasPolicyWafConfigCustomProtectionRuleExclusionArray) ToGetWaasPolicyWafConfigCustomProtectionRuleExclusionArrayOutputWithContext

func (i GetWaasPolicyWafConfigCustomProtectionRuleExclusionArray) ToGetWaasPolicyWafConfigCustomProtectionRuleExclusionArrayOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigCustomProtectionRuleExclusionArrayOutput

type GetWaasPolicyWafConfigCustomProtectionRuleExclusionArrayInput

type GetWaasPolicyWafConfigCustomProtectionRuleExclusionArrayInput interface {
	pulumi.Input

	ToGetWaasPolicyWafConfigCustomProtectionRuleExclusionArrayOutput() GetWaasPolicyWafConfigCustomProtectionRuleExclusionArrayOutput
	ToGetWaasPolicyWafConfigCustomProtectionRuleExclusionArrayOutputWithContext(context.Context) GetWaasPolicyWafConfigCustomProtectionRuleExclusionArrayOutput
}

GetWaasPolicyWafConfigCustomProtectionRuleExclusionArrayInput is an input type that accepts GetWaasPolicyWafConfigCustomProtectionRuleExclusionArray and GetWaasPolicyWafConfigCustomProtectionRuleExclusionArrayOutput values. You can construct a concrete instance of `GetWaasPolicyWafConfigCustomProtectionRuleExclusionArrayInput` via:

GetWaasPolicyWafConfigCustomProtectionRuleExclusionArray{ GetWaasPolicyWafConfigCustomProtectionRuleExclusionArgs{...} }

type GetWaasPolicyWafConfigCustomProtectionRuleExclusionArrayOutput

type GetWaasPolicyWafConfigCustomProtectionRuleExclusionArrayOutput struct{ *pulumi.OutputState }

func (GetWaasPolicyWafConfigCustomProtectionRuleExclusionArrayOutput) ElementType

func (GetWaasPolicyWafConfigCustomProtectionRuleExclusionArrayOutput) Index

func (GetWaasPolicyWafConfigCustomProtectionRuleExclusionArrayOutput) ToGetWaasPolicyWafConfigCustomProtectionRuleExclusionArrayOutput

func (GetWaasPolicyWafConfigCustomProtectionRuleExclusionArrayOutput) ToGetWaasPolicyWafConfigCustomProtectionRuleExclusionArrayOutputWithContext

func (o GetWaasPolicyWafConfigCustomProtectionRuleExclusionArrayOutput) ToGetWaasPolicyWafConfigCustomProtectionRuleExclusionArrayOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigCustomProtectionRuleExclusionArrayOutput

type GetWaasPolicyWafConfigCustomProtectionRuleExclusionInput

type GetWaasPolicyWafConfigCustomProtectionRuleExclusionInput interface {
	pulumi.Input

	ToGetWaasPolicyWafConfigCustomProtectionRuleExclusionOutput() GetWaasPolicyWafConfigCustomProtectionRuleExclusionOutput
	ToGetWaasPolicyWafConfigCustomProtectionRuleExclusionOutputWithContext(context.Context) GetWaasPolicyWafConfigCustomProtectionRuleExclusionOutput
}

GetWaasPolicyWafConfigCustomProtectionRuleExclusionInput is an input type that accepts GetWaasPolicyWafConfigCustomProtectionRuleExclusionArgs and GetWaasPolicyWafConfigCustomProtectionRuleExclusionOutput values. You can construct a concrete instance of `GetWaasPolicyWafConfigCustomProtectionRuleExclusionInput` via:

GetWaasPolicyWafConfigCustomProtectionRuleExclusionArgs{...}

type GetWaasPolicyWafConfigCustomProtectionRuleExclusionOutput

type GetWaasPolicyWafConfigCustomProtectionRuleExclusionOutput struct{ *pulumi.OutputState }

func (GetWaasPolicyWafConfigCustomProtectionRuleExclusionOutput) ElementType

func (GetWaasPolicyWafConfigCustomProtectionRuleExclusionOutput) Exclusions

An array of The target property of a request that would allow it to bypass the protection rule. For example, when `target` is `REQUEST_COOKIE_NAMES`, the list may include names of cookies to exclude from the protection rule. When the target is `ARGS`, the list may include strings of URL query parameters and values from form-urlencoded XML, JSON, AMP, or POST payloads to exclude from the protection rule. `Exclusions` properties must not contain whitespace, comma or |. **Note:** If protection rules have been enabled that utilize the `maxArgumentCount` or `maxTotalNameLengthOfArguments` properties, and the `target` property has been set to `ARGS`, it is important that the `exclusions` properties be defined to honor those protection rule settings in a consistent manner.

func (GetWaasPolicyWafConfigCustomProtectionRuleExclusionOutput) Target

The target of the exclusion.

func (GetWaasPolicyWafConfigCustomProtectionRuleExclusionOutput) ToGetWaasPolicyWafConfigCustomProtectionRuleExclusionOutput

func (GetWaasPolicyWafConfigCustomProtectionRuleExclusionOutput) ToGetWaasPolicyWafConfigCustomProtectionRuleExclusionOutputWithContext

func (o GetWaasPolicyWafConfigCustomProtectionRuleExclusionOutput) ToGetWaasPolicyWafConfigCustomProtectionRuleExclusionOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigCustomProtectionRuleExclusionOutput

type GetWaasPolicyWafConfigCustomProtectionRuleInput

type GetWaasPolicyWafConfigCustomProtectionRuleInput interface {
	pulumi.Input

	ToGetWaasPolicyWafConfigCustomProtectionRuleOutput() GetWaasPolicyWafConfigCustomProtectionRuleOutput
	ToGetWaasPolicyWafConfigCustomProtectionRuleOutputWithContext(context.Context) GetWaasPolicyWafConfigCustomProtectionRuleOutput
}

GetWaasPolicyWafConfigCustomProtectionRuleInput is an input type that accepts GetWaasPolicyWafConfigCustomProtectionRuleArgs and GetWaasPolicyWafConfigCustomProtectionRuleOutput values. You can construct a concrete instance of `GetWaasPolicyWafConfigCustomProtectionRuleInput` via:

GetWaasPolicyWafConfigCustomProtectionRuleArgs{...}

type GetWaasPolicyWafConfigCustomProtectionRuleOutput

type GetWaasPolicyWafConfigCustomProtectionRuleOutput struct{ *pulumi.OutputState }

func (GetWaasPolicyWafConfigCustomProtectionRuleOutput) Action

The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.

func (GetWaasPolicyWafConfigCustomProtectionRuleOutput) ElementType

func (GetWaasPolicyWafConfigCustomProtectionRuleOutput) Exclusions

An array of The target property of a request that would allow it to bypass the protection rule. For example, when `target` is `REQUEST_COOKIE_NAMES`, the list may include names of cookies to exclude from the protection rule. When the target is `ARGS`, the list may include strings of URL query parameters and values from form-urlencoded XML, JSON, AMP, or POST payloads to exclude from the protection rule. `Exclusions` properties must not contain whitespace, comma or |. **Note:** If protection rules have been enabled that utilize the `maxArgumentCount` or `maxTotalNameLengthOfArguments` properties, and the `target` property has been set to `ARGS`, it is important that the `exclusions` properties be defined to honor those protection rule settings in a consistent manner.

func (GetWaasPolicyWafConfigCustomProtectionRuleOutput) Id

The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the custom protection rule.

func (GetWaasPolicyWafConfigCustomProtectionRuleOutput) ToGetWaasPolicyWafConfigCustomProtectionRuleOutput

func (o GetWaasPolicyWafConfigCustomProtectionRuleOutput) ToGetWaasPolicyWafConfigCustomProtectionRuleOutput() GetWaasPolicyWafConfigCustomProtectionRuleOutput

func (GetWaasPolicyWafConfigCustomProtectionRuleOutput) ToGetWaasPolicyWafConfigCustomProtectionRuleOutputWithContext

func (o GetWaasPolicyWafConfigCustomProtectionRuleOutput) ToGetWaasPolicyWafConfigCustomProtectionRuleOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigCustomProtectionRuleOutput

type GetWaasPolicyWafConfigDeviceFingerprintChallenge

type GetWaasPolicyWafConfigDeviceFingerprintChallenge struct {
	// The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.
	Action string `pulumi:"action"`
	// The number of seconds between challenges from the same IP address. If unspecified, defaults to `60`.
	ActionExpirationInSeconds int `pulumi:"actionExpirationInSeconds"`
	// The challenge settings if `action` is set to `BLOCK`.
	ChallengeSettings GetWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettings `pulumi:"challengeSettings"`
	// The number of failed requests before taking action. If unspecified, defaults to `10`.
	FailureThreshold int `pulumi:"failureThreshold"`
	// The number of seconds before the failure threshold resets. If unspecified, defaults to  `60`.
	FailureThresholdExpirationInSeconds int `pulumi:"failureThresholdExpirationInSeconds"`
	// Enables or disables the JavaScript challenge Web Application Firewall feature.
	IsEnabled bool `pulumi:"isEnabled"`
	// The maximum number of IP addresses permitted with the same device fingerprint. If unspecified, defaults to `20`.
	MaxAddressCount int `pulumi:"maxAddressCount"`
	// The number of seconds before the maximum addresses count resets. If unspecified, defaults to `60`.
	MaxAddressCountExpirationInSeconds int `pulumi:"maxAddressCountExpirationInSeconds"`
}

type GetWaasPolicyWafConfigDeviceFingerprintChallengeArgs

type GetWaasPolicyWafConfigDeviceFingerprintChallengeArgs struct {
	// The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.
	Action pulumi.StringInput `pulumi:"action"`
	// The number of seconds between challenges from the same IP address. If unspecified, defaults to `60`.
	ActionExpirationInSeconds pulumi.IntInput `pulumi:"actionExpirationInSeconds"`
	// The challenge settings if `action` is set to `BLOCK`.
	ChallengeSettings GetWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsInput `pulumi:"challengeSettings"`
	// The number of failed requests before taking action. If unspecified, defaults to `10`.
	FailureThreshold pulumi.IntInput `pulumi:"failureThreshold"`
	// The number of seconds before the failure threshold resets. If unspecified, defaults to  `60`.
	FailureThresholdExpirationInSeconds pulumi.IntInput `pulumi:"failureThresholdExpirationInSeconds"`
	// Enables or disables the JavaScript challenge Web Application Firewall feature.
	IsEnabled pulumi.BoolInput `pulumi:"isEnabled"`
	// The maximum number of IP addresses permitted with the same device fingerprint. If unspecified, defaults to `20`.
	MaxAddressCount pulumi.IntInput `pulumi:"maxAddressCount"`
	// The number of seconds before the maximum addresses count resets. If unspecified, defaults to `60`.
	MaxAddressCountExpirationInSeconds pulumi.IntInput `pulumi:"maxAddressCountExpirationInSeconds"`
}

func (GetWaasPolicyWafConfigDeviceFingerprintChallengeArgs) ElementType

func (GetWaasPolicyWafConfigDeviceFingerprintChallengeArgs) ToGetWaasPolicyWafConfigDeviceFingerprintChallengeOutput

func (i GetWaasPolicyWafConfigDeviceFingerprintChallengeArgs) ToGetWaasPolicyWafConfigDeviceFingerprintChallengeOutput() GetWaasPolicyWafConfigDeviceFingerprintChallengeOutput

func (GetWaasPolicyWafConfigDeviceFingerprintChallengeArgs) ToGetWaasPolicyWafConfigDeviceFingerprintChallengeOutputWithContext

func (i GetWaasPolicyWafConfigDeviceFingerprintChallengeArgs) ToGetWaasPolicyWafConfigDeviceFingerprintChallengeOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigDeviceFingerprintChallengeOutput

type GetWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettings

type GetWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettings struct {
	// If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.
	BlockAction string `pulumi:"blockAction"`
	// The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.
	BlockErrorPageCode string `pulumi:"blockErrorPageCode"`
	// The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`
	BlockErrorPageDescription string `pulumi:"blockErrorPageDescription"`
	// The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'
	BlockErrorPageMessage string `pulumi:"blockErrorPageMessage"`
	// The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.
	BlockResponseCode int `pulumi:"blockResponseCode"`
	// The text to show in the footer when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, default to `Enter the letters and numbers as they are shown in image above`.
	CaptchaFooter string `pulumi:"captchaFooter"`
	// The text to show in the header when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `We have detected an increased number of attempts to access this webapp. To help us keep this webapp secure, please let us know that you are not a robot by entering the text from captcha below.`
	CaptchaHeader string `pulumi:"captchaHeader"`
	// The text to show on the label of the CAPTCHA challenge submit button when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Yes, I am human`.
	CaptchaSubmitLabel string `pulumi:"captchaSubmitLabel"`
	// The title used when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Are you human?`
	CaptchaTitle string `pulumi:"captchaTitle"`
}

type GetWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsArgs

type GetWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsArgs struct {
	// If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.
	BlockAction pulumi.StringInput `pulumi:"blockAction"`
	// The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.
	BlockErrorPageCode pulumi.StringInput `pulumi:"blockErrorPageCode"`
	// The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`
	BlockErrorPageDescription pulumi.StringInput `pulumi:"blockErrorPageDescription"`
	// The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'
	BlockErrorPageMessage pulumi.StringInput `pulumi:"blockErrorPageMessage"`
	// The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.
	BlockResponseCode pulumi.IntInput `pulumi:"blockResponseCode"`
	// The text to show in the footer when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, default to `Enter the letters and numbers as they are shown in image above`.
	CaptchaFooter pulumi.StringInput `pulumi:"captchaFooter"`
	// The text to show in the header when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `We have detected an increased number of attempts to access this webapp. To help us keep this webapp secure, please let us know that you are not a robot by entering the text from captcha below.`
	CaptchaHeader pulumi.StringInput `pulumi:"captchaHeader"`
	// The text to show on the label of the CAPTCHA challenge submit button when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Yes, I am human`.
	CaptchaSubmitLabel pulumi.StringInput `pulumi:"captchaSubmitLabel"`
	// The title used when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Are you human?`
	CaptchaTitle pulumi.StringInput `pulumi:"captchaTitle"`
}

func (GetWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsArgs) ElementType

func (GetWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsArgs) ToGetWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput

func (GetWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsArgs) ToGetWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutputWithContext

func (i GetWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsArgs) ToGetWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput

type GetWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsInput

type GetWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsInput interface {
	pulumi.Input

	ToGetWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput() GetWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput
	ToGetWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutputWithContext(context.Context) GetWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput
}

GetWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsInput is an input type that accepts GetWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsArgs and GetWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput values. You can construct a concrete instance of `GetWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsInput` via:

GetWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsArgs{...}

type GetWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput

type GetWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput struct{ *pulumi.OutputState }

func (GetWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput) BlockAction

If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.

func (GetWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput) BlockErrorPageCode

The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.

func (GetWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput) BlockErrorPageDescription

The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`

func (GetWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput) BlockErrorPageMessage

The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'

func (GetWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput) BlockResponseCode

The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.

func (GetWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput) CaptchaFooter

The text to show in the footer when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, default to `Enter the letters and numbers as they are shown in image above`.

func (GetWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput) CaptchaHeader

The text to show in the header when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `We have detected an increased number of attempts to access this webapp. To help us keep this webapp secure, please let us know that you are not a robot by entering the text from captcha below.`

func (GetWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput) CaptchaSubmitLabel

The text to show on the label of the CAPTCHA challenge submit button when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Yes, I am human`.

func (GetWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput) CaptchaTitle

The title used when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Are you human?`

func (GetWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput) ElementType

func (GetWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput) ToGetWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput

func (GetWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput) ToGetWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutputWithContext

func (o GetWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput) ToGetWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput

type GetWaasPolicyWafConfigDeviceFingerprintChallengeInput

type GetWaasPolicyWafConfigDeviceFingerprintChallengeInput interface {
	pulumi.Input

	ToGetWaasPolicyWafConfigDeviceFingerprintChallengeOutput() GetWaasPolicyWafConfigDeviceFingerprintChallengeOutput
	ToGetWaasPolicyWafConfigDeviceFingerprintChallengeOutputWithContext(context.Context) GetWaasPolicyWafConfigDeviceFingerprintChallengeOutput
}

GetWaasPolicyWafConfigDeviceFingerprintChallengeInput is an input type that accepts GetWaasPolicyWafConfigDeviceFingerprintChallengeArgs and GetWaasPolicyWafConfigDeviceFingerprintChallengeOutput values. You can construct a concrete instance of `GetWaasPolicyWafConfigDeviceFingerprintChallengeInput` via:

GetWaasPolicyWafConfigDeviceFingerprintChallengeArgs{...}

type GetWaasPolicyWafConfigDeviceFingerprintChallengeOutput

type GetWaasPolicyWafConfigDeviceFingerprintChallengeOutput struct{ *pulumi.OutputState }

func (GetWaasPolicyWafConfigDeviceFingerprintChallengeOutput) Action

The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.

func (GetWaasPolicyWafConfigDeviceFingerprintChallengeOutput) ActionExpirationInSeconds

The number of seconds between challenges from the same IP address. If unspecified, defaults to `60`.

func (GetWaasPolicyWafConfigDeviceFingerprintChallengeOutput) ChallengeSettings

The challenge settings if `action` is set to `BLOCK`.

func (GetWaasPolicyWafConfigDeviceFingerprintChallengeOutput) ElementType

func (GetWaasPolicyWafConfigDeviceFingerprintChallengeOutput) FailureThreshold

The number of failed requests before taking action. If unspecified, defaults to `10`.

func (GetWaasPolicyWafConfigDeviceFingerprintChallengeOutput) FailureThresholdExpirationInSeconds

func (o GetWaasPolicyWafConfigDeviceFingerprintChallengeOutput) FailureThresholdExpirationInSeconds() pulumi.IntOutput

The number of seconds before the failure threshold resets. If unspecified, defaults to `60`.

func (GetWaasPolicyWafConfigDeviceFingerprintChallengeOutput) IsEnabled

Enables or disables the JavaScript challenge Web Application Firewall feature.

func (GetWaasPolicyWafConfigDeviceFingerprintChallengeOutput) MaxAddressCount

The maximum number of IP addresses permitted with the same device fingerprint. If unspecified, defaults to `20`.

func (GetWaasPolicyWafConfigDeviceFingerprintChallengeOutput) MaxAddressCountExpirationInSeconds

func (o GetWaasPolicyWafConfigDeviceFingerprintChallengeOutput) MaxAddressCountExpirationInSeconds() pulumi.IntOutput

The number of seconds before the maximum addresses count resets. If unspecified, defaults to `60`.

func (GetWaasPolicyWafConfigDeviceFingerprintChallengeOutput) ToGetWaasPolicyWafConfigDeviceFingerprintChallengeOutput

func (GetWaasPolicyWafConfigDeviceFingerprintChallengeOutput) ToGetWaasPolicyWafConfigDeviceFingerprintChallengeOutputWithContext

func (o GetWaasPolicyWafConfigDeviceFingerprintChallengeOutput) ToGetWaasPolicyWafConfigDeviceFingerprintChallengeOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigDeviceFingerprintChallengeOutput

type GetWaasPolicyWafConfigHumanInteractionChallenge

type GetWaasPolicyWafConfigHumanInteractionChallenge struct {
	// The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.
	Action string `pulumi:"action"`
	// The number of seconds between challenges from the same IP address. If unspecified, defaults to `60`.
	ActionExpirationInSeconds int `pulumi:"actionExpirationInSeconds"`
	// The challenge settings if `action` is set to `BLOCK`.
	ChallengeSettings GetWaasPolicyWafConfigHumanInteractionChallengeChallengeSettings `pulumi:"challengeSettings"`
	// The number of failed requests before taking action. If unspecified, defaults to `10`.
	FailureThreshold int `pulumi:"failureThreshold"`
	// The number of seconds before the failure threshold resets. If unspecified, defaults to  `60`.
	FailureThresholdExpirationInSeconds int `pulumi:"failureThresholdExpirationInSeconds"`
	// The number of interactions required to pass the challenge. If unspecified, defaults to `3`.
	InteractionThreshold int `pulumi:"interactionThreshold"`
	// Enables or disables the JavaScript challenge Web Application Firewall feature.
	IsEnabled bool `pulumi:"isEnabled"`
	// When enabled, the user is identified not only by the IP address but also by an unique additional hash, which prevents blocking visitors with shared IP addresses.
	IsNatEnabled bool `pulumi:"isNatEnabled"`
	// The number of seconds to record the interactions from the user. If unspecified, defaults to `15`.
	RecordingPeriodInSeconds int `pulumi:"recordingPeriodInSeconds"`
	// Adds an additional HTTP header to requests that fail the challenge before being passed to the origin. Only applicable when the `action` is set to `DETECT`.
	SetHttpHeader GetWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeader `pulumi:"setHttpHeader"`
}

type GetWaasPolicyWafConfigHumanInteractionChallengeArgs

type GetWaasPolicyWafConfigHumanInteractionChallengeArgs struct {
	// The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.
	Action pulumi.StringInput `pulumi:"action"`
	// The number of seconds between challenges from the same IP address. If unspecified, defaults to `60`.
	ActionExpirationInSeconds pulumi.IntInput `pulumi:"actionExpirationInSeconds"`
	// The challenge settings if `action` is set to `BLOCK`.
	ChallengeSettings GetWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingsInput `pulumi:"challengeSettings"`
	// The number of failed requests before taking action. If unspecified, defaults to `10`.
	FailureThreshold pulumi.IntInput `pulumi:"failureThreshold"`
	// The number of seconds before the failure threshold resets. If unspecified, defaults to  `60`.
	FailureThresholdExpirationInSeconds pulumi.IntInput `pulumi:"failureThresholdExpirationInSeconds"`
	// The number of interactions required to pass the challenge. If unspecified, defaults to `3`.
	InteractionThreshold pulumi.IntInput `pulumi:"interactionThreshold"`
	// Enables or disables the JavaScript challenge Web Application Firewall feature.
	IsEnabled pulumi.BoolInput `pulumi:"isEnabled"`
	// When enabled, the user is identified not only by the IP address but also by an unique additional hash, which prevents blocking visitors with shared IP addresses.
	IsNatEnabled pulumi.BoolInput `pulumi:"isNatEnabled"`
	// The number of seconds to record the interactions from the user. If unspecified, defaults to `15`.
	RecordingPeriodInSeconds pulumi.IntInput `pulumi:"recordingPeriodInSeconds"`
	// Adds an additional HTTP header to requests that fail the challenge before being passed to the origin. Only applicable when the `action` is set to `DETECT`.
	SetHttpHeader GetWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderInput `pulumi:"setHttpHeader"`
}

func (GetWaasPolicyWafConfigHumanInteractionChallengeArgs) ElementType

func (GetWaasPolicyWafConfigHumanInteractionChallengeArgs) ToGetWaasPolicyWafConfigHumanInteractionChallengeOutput

func (i GetWaasPolicyWafConfigHumanInteractionChallengeArgs) ToGetWaasPolicyWafConfigHumanInteractionChallengeOutput() GetWaasPolicyWafConfigHumanInteractionChallengeOutput

func (GetWaasPolicyWafConfigHumanInteractionChallengeArgs) ToGetWaasPolicyWafConfigHumanInteractionChallengeOutputWithContext

func (i GetWaasPolicyWafConfigHumanInteractionChallengeArgs) ToGetWaasPolicyWafConfigHumanInteractionChallengeOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigHumanInteractionChallengeOutput

type GetWaasPolicyWafConfigHumanInteractionChallengeChallengeSettings

type GetWaasPolicyWafConfigHumanInteractionChallengeChallengeSettings struct {
	// If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.
	BlockAction string `pulumi:"blockAction"`
	// The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.
	BlockErrorPageCode string `pulumi:"blockErrorPageCode"`
	// The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`
	BlockErrorPageDescription string `pulumi:"blockErrorPageDescription"`
	// The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'
	BlockErrorPageMessage string `pulumi:"blockErrorPageMessage"`
	// The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.
	BlockResponseCode int `pulumi:"blockResponseCode"`
	// The text to show in the footer when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, default to `Enter the letters and numbers as they are shown in image above`.
	CaptchaFooter string `pulumi:"captchaFooter"`
	// The text to show in the header when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `We have detected an increased number of attempts to access this webapp. To help us keep this webapp secure, please let us know that you are not a robot by entering the text from captcha below.`
	CaptchaHeader string `pulumi:"captchaHeader"`
	// The text to show on the label of the CAPTCHA challenge submit button when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Yes, I am human`.
	CaptchaSubmitLabel string `pulumi:"captchaSubmitLabel"`
	// The title used when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Are you human?`
	CaptchaTitle string `pulumi:"captchaTitle"`
}

type GetWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingsArgs

type GetWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingsArgs struct {
	// If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.
	BlockAction pulumi.StringInput `pulumi:"blockAction"`
	// The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.
	BlockErrorPageCode pulumi.StringInput `pulumi:"blockErrorPageCode"`
	// The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`
	BlockErrorPageDescription pulumi.StringInput `pulumi:"blockErrorPageDescription"`
	// The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'
	BlockErrorPageMessage pulumi.StringInput `pulumi:"blockErrorPageMessage"`
	// The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.
	BlockResponseCode pulumi.IntInput `pulumi:"blockResponseCode"`
	// The text to show in the footer when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, default to `Enter the letters and numbers as they are shown in image above`.
	CaptchaFooter pulumi.StringInput `pulumi:"captchaFooter"`
	// The text to show in the header when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `We have detected an increased number of attempts to access this webapp. To help us keep this webapp secure, please let us know that you are not a robot by entering the text from captcha below.`
	CaptchaHeader pulumi.StringInput `pulumi:"captchaHeader"`
	// The text to show on the label of the CAPTCHA challenge submit button when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Yes, I am human`.
	CaptchaSubmitLabel pulumi.StringInput `pulumi:"captchaSubmitLabel"`
	// The title used when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Are you human?`
	CaptchaTitle pulumi.StringInput `pulumi:"captchaTitle"`
}

func (GetWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingsArgs) ElementType

func (GetWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingsArgs) ToGetWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput

func (GetWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingsArgs) ToGetWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingsOutputWithContext

func (i GetWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingsArgs) ToGetWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingsOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput

type GetWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingsInput

type GetWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingsInput interface {
	pulumi.Input

	ToGetWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput() GetWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput
	ToGetWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingsOutputWithContext(context.Context) GetWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput
}

GetWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingsInput is an input type that accepts GetWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingsArgs and GetWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput values. You can construct a concrete instance of `GetWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingsInput` via:

GetWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingsArgs{...}

type GetWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput

type GetWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput struct{ *pulumi.OutputState }

func (GetWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput) BlockAction

If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.

func (GetWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput) BlockErrorPageCode

The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.

func (GetWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput) BlockErrorPageDescription

The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`

func (GetWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput) BlockErrorPageMessage

The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'

func (GetWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput) BlockResponseCode

The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.

func (GetWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput) CaptchaFooter

The text to show in the footer when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, default to `Enter the letters and numbers as they are shown in image above`.

func (GetWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput) CaptchaHeader

The text to show in the header when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `We have detected an increased number of attempts to access this webapp. To help us keep this webapp secure, please let us know that you are not a robot by entering the text from captcha below.`

func (GetWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput) CaptchaSubmitLabel

The text to show on the label of the CAPTCHA challenge submit button when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Yes, I am human`.

func (GetWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput) CaptchaTitle

The title used when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Are you human?`

func (GetWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput) ElementType

func (GetWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput) ToGetWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput

func (GetWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput) ToGetWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingsOutputWithContext

func (o GetWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput) ToGetWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingsOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput

type GetWaasPolicyWafConfigHumanInteractionChallengeInput

type GetWaasPolicyWafConfigHumanInteractionChallengeInput interface {
	pulumi.Input

	ToGetWaasPolicyWafConfigHumanInteractionChallengeOutput() GetWaasPolicyWafConfigHumanInteractionChallengeOutput
	ToGetWaasPolicyWafConfigHumanInteractionChallengeOutputWithContext(context.Context) GetWaasPolicyWafConfigHumanInteractionChallengeOutput
}

GetWaasPolicyWafConfigHumanInteractionChallengeInput is an input type that accepts GetWaasPolicyWafConfigHumanInteractionChallengeArgs and GetWaasPolicyWafConfigHumanInteractionChallengeOutput values. You can construct a concrete instance of `GetWaasPolicyWafConfigHumanInteractionChallengeInput` via:

GetWaasPolicyWafConfigHumanInteractionChallengeArgs{...}

type GetWaasPolicyWafConfigHumanInteractionChallengeOutput

type GetWaasPolicyWafConfigHumanInteractionChallengeOutput struct{ *pulumi.OutputState }

func (GetWaasPolicyWafConfigHumanInteractionChallengeOutput) Action

The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.

func (GetWaasPolicyWafConfigHumanInteractionChallengeOutput) ActionExpirationInSeconds

The number of seconds between challenges from the same IP address. If unspecified, defaults to `60`.

func (GetWaasPolicyWafConfigHumanInteractionChallengeOutput) ChallengeSettings

The challenge settings if `action` is set to `BLOCK`.

func (GetWaasPolicyWafConfigHumanInteractionChallengeOutput) ElementType

func (GetWaasPolicyWafConfigHumanInteractionChallengeOutput) FailureThreshold

The number of failed requests before taking action. If unspecified, defaults to `10`.

func (GetWaasPolicyWafConfigHumanInteractionChallengeOutput) FailureThresholdExpirationInSeconds

func (o GetWaasPolicyWafConfigHumanInteractionChallengeOutput) FailureThresholdExpirationInSeconds() pulumi.IntOutput

The number of seconds before the failure threshold resets. If unspecified, defaults to `60`.

func (GetWaasPolicyWafConfigHumanInteractionChallengeOutput) InteractionThreshold

The number of interactions required to pass the challenge. If unspecified, defaults to `3`.

func (GetWaasPolicyWafConfigHumanInteractionChallengeOutput) IsEnabled

Enables or disables the JavaScript challenge Web Application Firewall feature.

func (GetWaasPolicyWafConfigHumanInteractionChallengeOutput) IsNatEnabled

When enabled, the user is identified not only by the IP address but also by an unique additional hash, which prevents blocking visitors with shared IP addresses.

func (GetWaasPolicyWafConfigHumanInteractionChallengeOutput) RecordingPeriodInSeconds

The number of seconds to record the interactions from the user. If unspecified, defaults to `15`.

func (GetWaasPolicyWafConfigHumanInteractionChallengeOutput) SetHttpHeader

Adds an additional HTTP header to requests that fail the challenge before being passed to the origin. Only applicable when the `action` is set to `DETECT`.

func (GetWaasPolicyWafConfigHumanInteractionChallengeOutput) ToGetWaasPolicyWafConfigHumanInteractionChallengeOutput

func (GetWaasPolicyWafConfigHumanInteractionChallengeOutput) ToGetWaasPolicyWafConfigHumanInteractionChallengeOutputWithContext

func (o GetWaasPolicyWafConfigHumanInteractionChallengeOutput) ToGetWaasPolicyWafConfigHumanInteractionChallengeOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigHumanInteractionChallengeOutput

type GetWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeader

type GetWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeader struct {
	// The unique name of the whitelist.
	Name string `pulumi:"name"`
	// The value of the header.
	Value string `pulumi:"value"`
}

type GetWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderArgs

type GetWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderArgs struct {
	// The unique name of the whitelist.
	Name pulumi.StringInput `pulumi:"name"`
	// The value of the header.
	Value pulumi.StringInput `pulumi:"value"`
}

func (GetWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderArgs) ElementType

func (GetWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderArgs) ToGetWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput

func (GetWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderArgs) ToGetWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutputWithContext

func (i GetWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderArgs) ToGetWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput

type GetWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderInput

type GetWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderInput interface {
	pulumi.Input

	ToGetWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput() GetWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput
	ToGetWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutputWithContext(context.Context) GetWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput
}

GetWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderInput is an input type that accepts GetWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderArgs and GetWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput values. You can construct a concrete instance of `GetWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderInput` via:

GetWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderArgs{...}

type GetWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput

type GetWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput struct{ *pulumi.OutputState }

func (GetWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput) ElementType

func (GetWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput) Name

The unique name of the whitelist.

func (GetWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput) ToGetWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput

func (GetWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput) ToGetWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutputWithContext

func (o GetWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput) ToGetWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput

func (GetWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput) Value

The value of the header.

type GetWaasPolicyWafConfigInput

type GetWaasPolicyWafConfigInput interface {
	pulumi.Input

	ToGetWaasPolicyWafConfigOutput() GetWaasPolicyWafConfigOutput
	ToGetWaasPolicyWafConfigOutputWithContext(context.Context) GetWaasPolicyWafConfigOutput
}

GetWaasPolicyWafConfigInput is an input type that accepts GetWaasPolicyWafConfigArgs and GetWaasPolicyWafConfigOutput values. You can construct a concrete instance of `GetWaasPolicyWafConfigInput` via:

GetWaasPolicyWafConfigArgs{...}

type GetWaasPolicyWafConfigJsChallenge

type GetWaasPolicyWafConfigJsChallenge struct {
	// The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.
	Action string `pulumi:"action"`
	// The number of seconds between challenges from the same IP address. If unspecified, defaults to `60`.
	ActionExpirationInSeconds int `pulumi:"actionExpirationInSeconds"`
	// When enabled, redirect responses from the origin will also be challenged. This will change HTTP 301/302 responses from origin to HTTP 200 with an HTML body containing JavaScript page redirection.
	AreRedirectsChallenged bool `pulumi:"areRedirectsChallenged"`
	// The challenge settings if `action` is set to `BLOCK`.
	ChallengeSettings GetWaasPolicyWafConfigJsChallengeChallengeSettings `pulumi:"challengeSettings"`
	// When defined, the JavaScript Challenge would be applied only for the requests that matched all the listed conditions.
	Criterias []GetWaasPolicyWafConfigJsChallengeCriteria `pulumi:"criterias"`
	// The number of failed requests before taking action. If unspecified, defaults to `10`.
	FailureThreshold int `pulumi:"failureThreshold"`
	// Enables or disables the JavaScript challenge Web Application Firewall feature.
	IsEnabled bool `pulumi:"isEnabled"`
	// When enabled, the user is identified not only by the IP address but also by an unique additional hash, which prevents blocking visitors with shared IP addresses.
	IsNatEnabled bool `pulumi:"isNatEnabled"`
	// Adds an additional HTTP header to requests that fail the challenge before being passed to the origin. Only applicable when the `action` is set to `DETECT`.
	SetHttpHeader GetWaasPolicyWafConfigJsChallengeSetHttpHeader `pulumi:"setHttpHeader"`
}

type GetWaasPolicyWafConfigJsChallengeArgs

type GetWaasPolicyWafConfigJsChallengeArgs struct {
	// The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.
	Action pulumi.StringInput `pulumi:"action"`
	// The number of seconds between challenges from the same IP address. If unspecified, defaults to `60`.
	ActionExpirationInSeconds pulumi.IntInput `pulumi:"actionExpirationInSeconds"`
	// When enabled, redirect responses from the origin will also be challenged. This will change HTTP 301/302 responses from origin to HTTP 200 with an HTML body containing JavaScript page redirection.
	AreRedirectsChallenged pulumi.BoolInput `pulumi:"areRedirectsChallenged"`
	// The challenge settings if `action` is set to `BLOCK`.
	ChallengeSettings GetWaasPolicyWafConfigJsChallengeChallengeSettingsInput `pulumi:"challengeSettings"`
	// When defined, the JavaScript Challenge would be applied only for the requests that matched all the listed conditions.
	Criterias GetWaasPolicyWafConfigJsChallengeCriteriaArrayInput `pulumi:"criterias"`
	// The number of failed requests before taking action. If unspecified, defaults to `10`.
	FailureThreshold pulumi.IntInput `pulumi:"failureThreshold"`
	// Enables or disables the JavaScript challenge Web Application Firewall feature.
	IsEnabled pulumi.BoolInput `pulumi:"isEnabled"`
	// When enabled, the user is identified not only by the IP address but also by an unique additional hash, which prevents blocking visitors with shared IP addresses.
	IsNatEnabled pulumi.BoolInput `pulumi:"isNatEnabled"`
	// Adds an additional HTTP header to requests that fail the challenge before being passed to the origin. Only applicable when the `action` is set to `DETECT`.
	SetHttpHeader GetWaasPolicyWafConfigJsChallengeSetHttpHeaderInput `pulumi:"setHttpHeader"`
}

func (GetWaasPolicyWafConfigJsChallengeArgs) ElementType

func (GetWaasPolicyWafConfigJsChallengeArgs) ToGetWaasPolicyWafConfigJsChallengeOutput

func (i GetWaasPolicyWafConfigJsChallengeArgs) ToGetWaasPolicyWafConfigJsChallengeOutput() GetWaasPolicyWafConfigJsChallengeOutput

func (GetWaasPolicyWafConfigJsChallengeArgs) ToGetWaasPolicyWafConfigJsChallengeOutputWithContext

func (i GetWaasPolicyWafConfigJsChallengeArgs) ToGetWaasPolicyWafConfigJsChallengeOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigJsChallengeOutput

type GetWaasPolicyWafConfigJsChallengeChallengeSettings

type GetWaasPolicyWafConfigJsChallengeChallengeSettings struct {
	// If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.
	BlockAction string `pulumi:"blockAction"`
	// The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.
	BlockErrorPageCode string `pulumi:"blockErrorPageCode"`
	// The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`
	BlockErrorPageDescription string `pulumi:"blockErrorPageDescription"`
	// The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'
	BlockErrorPageMessage string `pulumi:"blockErrorPageMessage"`
	// The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.
	BlockResponseCode int `pulumi:"blockResponseCode"`
	// The text to show in the footer when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, default to `Enter the letters and numbers as they are shown in image above`.
	CaptchaFooter string `pulumi:"captchaFooter"`
	// The text to show in the header when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `We have detected an increased number of attempts to access this webapp. To help us keep this webapp secure, please let us know that you are not a robot by entering the text from captcha below.`
	CaptchaHeader string `pulumi:"captchaHeader"`
	// The text to show on the label of the CAPTCHA challenge submit button when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Yes, I am human`.
	CaptchaSubmitLabel string `pulumi:"captchaSubmitLabel"`
	// The title used when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Are you human?`
	CaptchaTitle string `pulumi:"captchaTitle"`
}

type GetWaasPolicyWafConfigJsChallengeChallengeSettingsArgs

type GetWaasPolicyWafConfigJsChallengeChallengeSettingsArgs struct {
	// If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.
	BlockAction pulumi.StringInput `pulumi:"blockAction"`
	// The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.
	BlockErrorPageCode pulumi.StringInput `pulumi:"blockErrorPageCode"`
	// The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`
	BlockErrorPageDescription pulumi.StringInput `pulumi:"blockErrorPageDescription"`
	// The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'
	BlockErrorPageMessage pulumi.StringInput `pulumi:"blockErrorPageMessage"`
	// The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.
	BlockResponseCode pulumi.IntInput `pulumi:"blockResponseCode"`
	// The text to show in the footer when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, default to `Enter the letters and numbers as they are shown in image above`.
	CaptchaFooter pulumi.StringInput `pulumi:"captchaFooter"`
	// The text to show in the header when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `We have detected an increased number of attempts to access this webapp. To help us keep this webapp secure, please let us know that you are not a robot by entering the text from captcha below.`
	CaptchaHeader pulumi.StringInput `pulumi:"captchaHeader"`
	// The text to show on the label of the CAPTCHA challenge submit button when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Yes, I am human`.
	CaptchaSubmitLabel pulumi.StringInput `pulumi:"captchaSubmitLabel"`
	// The title used when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Are you human?`
	CaptchaTitle pulumi.StringInput `pulumi:"captchaTitle"`
}

func (GetWaasPolicyWafConfigJsChallengeChallengeSettingsArgs) ElementType

func (GetWaasPolicyWafConfigJsChallengeChallengeSettingsArgs) ToGetWaasPolicyWafConfigJsChallengeChallengeSettingsOutput

func (GetWaasPolicyWafConfigJsChallengeChallengeSettingsArgs) ToGetWaasPolicyWafConfigJsChallengeChallengeSettingsOutputWithContext

func (i GetWaasPolicyWafConfigJsChallengeChallengeSettingsArgs) ToGetWaasPolicyWafConfigJsChallengeChallengeSettingsOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigJsChallengeChallengeSettingsOutput

type GetWaasPolicyWafConfigJsChallengeChallengeSettingsInput

type GetWaasPolicyWafConfigJsChallengeChallengeSettingsInput interface {
	pulumi.Input

	ToGetWaasPolicyWafConfigJsChallengeChallengeSettingsOutput() GetWaasPolicyWafConfigJsChallengeChallengeSettingsOutput
	ToGetWaasPolicyWafConfigJsChallengeChallengeSettingsOutputWithContext(context.Context) GetWaasPolicyWafConfigJsChallengeChallengeSettingsOutput
}

GetWaasPolicyWafConfigJsChallengeChallengeSettingsInput is an input type that accepts GetWaasPolicyWafConfigJsChallengeChallengeSettingsArgs and GetWaasPolicyWafConfigJsChallengeChallengeSettingsOutput values. You can construct a concrete instance of `GetWaasPolicyWafConfigJsChallengeChallengeSettingsInput` via:

GetWaasPolicyWafConfigJsChallengeChallengeSettingsArgs{...}

type GetWaasPolicyWafConfigJsChallengeChallengeSettingsOutput

type GetWaasPolicyWafConfigJsChallengeChallengeSettingsOutput struct{ *pulumi.OutputState }

func (GetWaasPolicyWafConfigJsChallengeChallengeSettingsOutput) BlockAction

If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.

func (GetWaasPolicyWafConfigJsChallengeChallengeSettingsOutput) BlockErrorPageCode

The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.

func (GetWaasPolicyWafConfigJsChallengeChallengeSettingsOutput) BlockErrorPageDescription

The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`

func (GetWaasPolicyWafConfigJsChallengeChallengeSettingsOutput) BlockErrorPageMessage

The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'

func (GetWaasPolicyWafConfigJsChallengeChallengeSettingsOutput) BlockResponseCode

The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.

func (GetWaasPolicyWafConfigJsChallengeChallengeSettingsOutput) CaptchaFooter

The text to show in the footer when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, default to `Enter the letters and numbers as they are shown in image above`.

func (GetWaasPolicyWafConfigJsChallengeChallengeSettingsOutput) CaptchaHeader

The text to show in the header when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `We have detected an increased number of attempts to access this webapp. To help us keep this webapp secure, please let us know that you are not a robot by entering the text from captcha below.`

func (GetWaasPolicyWafConfigJsChallengeChallengeSettingsOutput) CaptchaSubmitLabel

The text to show on the label of the CAPTCHA challenge submit button when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Yes, I am human`.

func (GetWaasPolicyWafConfigJsChallengeChallengeSettingsOutput) CaptchaTitle

The title used when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Are you human?`

func (GetWaasPolicyWafConfigJsChallengeChallengeSettingsOutput) ElementType

func (GetWaasPolicyWafConfigJsChallengeChallengeSettingsOutput) ToGetWaasPolicyWafConfigJsChallengeChallengeSettingsOutput

func (GetWaasPolicyWafConfigJsChallengeChallengeSettingsOutput) ToGetWaasPolicyWafConfigJsChallengeChallengeSettingsOutputWithContext

func (o GetWaasPolicyWafConfigJsChallengeChallengeSettingsOutput) ToGetWaasPolicyWafConfigJsChallengeChallengeSettingsOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigJsChallengeChallengeSettingsOutput

type GetWaasPolicyWafConfigJsChallengeCriteria

type GetWaasPolicyWafConfigJsChallengeCriteria struct {
	// The criteria the access rule and JavaScript Challenge uses to determine if action should be taken on a request.
	// * **URL_IS:** Matches if the concatenation of request URL path and query is identical to the contents of the `value` field. URL must start with a `/`.
	// * **URL_IS_NOT:** Matches if the concatenation of request URL path and query is not identical to the contents of the `value` field. URL must start with a `/`.
	// * **URL_STARTS_WITH:** Matches if the concatenation of request URL path and query starts with the contents of the `value` field. URL must start with a `/`.
	// * **URL_PART_ENDS_WITH:** Matches if the concatenation of request URL path and query ends with the contents of the `value` field.
	// * **URL_PART_CONTAINS:** Matches if the concatenation of request URL path and query contains the contents of the `value` field.
	// * **URL_REGEX:** Matches if the concatenation of request URL path and query is described by the regular expression in the value field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org).
	// * **URL_DOES_NOT_MATCH_REGEX:** Matches if the concatenation of request URL path and query is not described by the regular expression in the `value` field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org).
	// * **URL_DOES_NOT_START_WITH:** Matches if the concatenation of request URL path and query does not start with the contents of the `value` field.
	// * **URL_PART_DOES_NOT_CONTAIN:** Matches if the concatenation of request URL path and query does not contain the contents of the `value` field.
	// * **URL_PART_DOES_NOT_END_WITH:** Matches if the concatenation of request URL path and query does not end with the contents of the `value` field.
	// * **IP_IS:** Matches if the request originates from one of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30"
	// * **IP_IS_NOT:** Matches if the request does not originate from any of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30"
	// * **IP_IN_LIST:** Matches if the request originates from one of the IP addresses contained in the referenced address list. The `value` in this case is OCID of the address list.
	// * **IP_NOT_IN_LIST:** Matches if the request does not originate from any IP address contained in the referenced address list. The `value` field in this case is OCID of the address list.
	// * **HTTP_HEADER_CONTAINS:** The HTTP_HEADER_CONTAINS criteria is defined using a compound value separated by a colon: a header field name and a header field value. `host:test.example.com` is an example of a criteria value where `host` is the header field name and `test.example.com` is the header field value. A request matches when the header field name is a case insensitive match and the header field value is a case insensitive, substring match. *Example:* With a criteria value of `host:test.example.com`, where `host` is the name of the field and `test.example.com` is the value of the host field, a request with the header values, `Host: www.test.example.com` will match, where as a request with header values of `host: www.example.com` or `host: test.sub.example.com` will not match.
	// * **HTTP_METHOD_IS:** Matches if the request method is identical to one of the values listed in field. The `value` in this case is string with one or multiple HTTP methods separated by new line symbol \n The list of available methods: `GET`, `HEAD`, `POST`, `PUT`, `DELETE`, `CONNECT`, `OPTIONS`, `TRACE`, `PATCH`
	Condition string `pulumi:"condition"`
	// When enabled, the condition will be matched with case-sensitive rules.
	IsCaseSensitive bool `pulumi:"isCaseSensitive"`
	// The value of the header.
	Value string `pulumi:"value"`
}

type GetWaasPolicyWafConfigJsChallengeCriteriaArgs

type GetWaasPolicyWafConfigJsChallengeCriteriaArgs struct {
	// The criteria the access rule and JavaScript Challenge uses to determine if action should be taken on a request.
	// * **URL_IS:** Matches if the concatenation of request URL path and query is identical to the contents of the `value` field. URL must start with a `/`.
	// * **URL_IS_NOT:** Matches if the concatenation of request URL path and query is not identical to the contents of the `value` field. URL must start with a `/`.
	// * **URL_STARTS_WITH:** Matches if the concatenation of request URL path and query starts with the contents of the `value` field. URL must start with a `/`.
	// * **URL_PART_ENDS_WITH:** Matches if the concatenation of request URL path and query ends with the contents of the `value` field.
	// * **URL_PART_CONTAINS:** Matches if the concatenation of request URL path and query contains the contents of the `value` field.
	// * **URL_REGEX:** Matches if the concatenation of request URL path and query is described by the regular expression in the value field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org).
	// * **URL_DOES_NOT_MATCH_REGEX:** Matches if the concatenation of request URL path and query is not described by the regular expression in the `value` field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org).
	// * **URL_DOES_NOT_START_WITH:** Matches if the concatenation of request URL path and query does not start with the contents of the `value` field.
	// * **URL_PART_DOES_NOT_CONTAIN:** Matches if the concatenation of request URL path and query does not contain the contents of the `value` field.
	// * **URL_PART_DOES_NOT_END_WITH:** Matches if the concatenation of request URL path and query does not end with the contents of the `value` field.
	// * **IP_IS:** Matches if the request originates from one of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30"
	// * **IP_IS_NOT:** Matches if the request does not originate from any of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30"
	// * **IP_IN_LIST:** Matches if the request originates from one of the IP addresses contained in the referenced address list. The `value` in this case is OCID of the address list.
	// * **IP_NOT_IN_LIST:** Matches if the request does not originate from any IP address contained in the referenced address list. The `value` field in this case is OCID of the address list.
	// * **HTTP_HEADER_CONTAINS:** The HTTP_HEADER_CONTAINS criteria is defined using a compound value separated by a colon: a header field name and a header field value. `host:test.example.com` is an example of a criteria value where `host` is the header field name and `test.example.com` is the header field value. A request matches when the header field name is a case insensitive match and the header field value is a case insensitive, substring match. *Example:* With a criteria value of `host:test.example.com`, where `host` is the name of the field and `test.example.com` is the value of the host field, a request with the header values, `Host: www.test.example.com` will match, where as a request with header values of `host: www.example.com` or `host: test.sub.example.com` will not match.
	// * **HTTP_METHOD_IS:** Matches if the request method is identical to one of the values listed in field. The `value` in this case is string with one or multiple HTTP methods separated by new line symbol \n The list of available methods: `GET`, `HEAD`, `POST`, `PUT`, `DELETE`, `CONNECT`, `OPTIONS`, `TRACE`, `PATCH`
	Condition pulumi.StringInput `pulumi:"condition"`
	// When enabled, the condition will be matched with case-sensitive rules.
	IsCaseSensitive pulumi.BoolInput `pulumi:"isCaseSensitive"`
	// The value of the header.
	Value pulumi.StringInput `pulumi:"value"`
}

func (GetWaasPolicyWafConfigJsChallengeCriteriaArgs) ElementType

func (GetWaasPolicyWafConfigJsChallengeCriteriaArgs) ToGetWaasPolicyWafConfigJsChallengeCriteriaOutput

func (i GetWaasPolicyWafConfigJsChallengeCriteriaArgs) ToGetWaasPolicyWafConfigJsChallengeCriteriaOutput() GetWaasPolicyWafConfigJsChallengeCriteriaOutput

func (GetWaasPolicyWafConfigJsChallengeCriteriaArgs) ToGetWaasPolicyWafConfigJsChallengeCriteriaOutputWithContext

func (i GetWaasPolicyWafConfigJsChallengeCriteriaArgs) ToGetWaasPolicyWafConfigJsChallengeCriteriaOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigJsChallengeCriteriaOutput

type GetWaasPolicyWafConfigJsChallengeCriteriaArray

type GetWaasPolicyWafConfigJsChallengeCriteriaArray []GetWaasPolicyWafConfigJsChallengeCriteriaInput

func (GetWaasPolicyWafConfigJsChallengeCriteriaArray) ElementType

func (GetWaasPolicyWafConfigJsChallengeCriteriaArray) ToGetWaasPolicyWafConfigJsChallengeCriteriaArrayOutput

func (i GetWaasPolicyWafConfigJsChallengeCriteriaArray) ToGetWaasPolicyWafConfigJsChallengeCriteriaArrayOutput() GetWaasPolicyWafConfigJsChallengeCriteriaArrayOutput

func (GetWaasPolicyWafConfigJsChallengeCriteriaArray) ToGetWaasPolicyWafConfigJsChallengeCriteriaArrayOutputWithContext

func (i GetWaasPolicyWafConfigJsChallengeCriteriaArray) ToGetWaasPolicyWafConfigJsChallengeCriteriaArrayOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigJsChallengeCriteriaArrayOutput

type GetWaasPolicyWafConfigJsChallengeCriteriaArrayInput

type GetWaasPolicyWafConfigJsChallengeCriteriaArrayInput interface {
	pulumi.Input

	ToGetWaasPolicyWafConfigJsChallengeCriteriaArrayOutput() GetWaasPolicyWafConfigJsChallengeCriteriaArrayOutput
	ToGetWaasPolicyWafConfigJsChallengeCriteriaArrayOutputWithContext(context.Context) GetWaasPolicyWafConfigJsChallengeCriteriaArrayOutput
}

GetWaasPolicyWafConfigJsChallengeCriteriaArrayInput is an input type that accepts GetWaasPolicyWafConfigJsChallengeCriteriaArray and GetWaasPolicyWafConfigJsChallengeCriteriaArrayOutput values. You can construct a concrete instance of `GetWaasPolicyWafConfigJsChallengeCriteriaArrayInput` via:

GetWaasPolicyWafConfigJsChallengeCriteriaArray{ GetWaasPolicyWafConfigJsChallengeCriteriaArgs{...} }

type GetWaasPolicyWafConfigJsChallengeCriteriaArrayOutput

type GetWaasPolicyWafConfigJsChallengeCriteriaArrayOutput struct{ *pulumi.OutputState }

func (GetWaasPolicyWafConfigJsChallengeCriteriaArrayOutput) ElementType

func (GetWaasPolicyWafConfigJsChallengeCriteriaArrayOutput) Index

func (GetWaasPolicyWafConfigJsChallengeCriteriaArrayOutput) ToGetWaasPolicyWafConfigJsChallengeCriteriaArrayOutput

func (GetWaasPolicyWafConfigJsChallengeCriteriaArrayOutput) ToGetWaasPolicyWafConfigJsChallengeCriteriaArrayOutputWithContext

func (o GetWaasPolicyWafConfigJsChallengeCriteriaArrayOutput) ToGetWaasPolicyWafConfigJsChallengeCriteriaArrayOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigJsChallengeCriteriaArrayOutput

type GetWaasPolicyWafConfigJsChallengeCriteriaInput

type GetWaasPolicyWafConfigJsChallengeCriteriaInput interface {
	pulumi.Input

	ToGetWaasPolicyWafConfigJsChallengeCriteriaOutput() GetWaasPolicyWafConfigJsChallengeCriteriaOutput
	ToGetWaasPolicyWafConfigJsChallengeCriteriaOutputWithContext(context.Context) GetWaasPolicyWafConfigJsChallengeCriteriaOutput
}

GetWaasPolicyWafConfigJsChallengeCriteriaInput is an input type that accepts GetWaasPolicyWafConfigJsChallengeCriteriaArgs and GetWaasPolicyWafConfigJsChallengeCriteriaOutput values. You can construct a concrete instance of `GetWaasPolicyWafConfigJsChallengeCriteriaInput` via:

GetWaasPolicyWafConfigJsChallengeCriteriaArgs{...}

type GetWaasPolicyWafConfigJsChallengeCriteriaOutput

type GetWaasPolicyWafConfigJsChallengeCriteriaOutput struct{ *pulumi.OutputState }

func (GetWaasPolicyWafConfigJsChallengeCriteriaOutput) Condition

The criteria the access rule and JavaScript Challenge uses to determine if action should be taken on a request. * **URL_IS:** Matches if the concatenation of request URL path and query is identical to the contents of the `value` field. URL must start with a `/`. * **URL_IS_NOT:** Matches if the concatenation of request URL path and query is not identical to the contents of the `value` field. URL must start with a `/`. * **URL_STARTS_WITH:** Matches if the concatenation of request URL path and query starts with the contents of the `value` field. URL must start with a `/`. * **URL_PART_ENDS_WITH:** Matches if the concatenation of request URL path and query ends with the contents of the `value` field. * **URL_PART_CONTAINS:** Matches if the concatenation of request URL path and query contains the contents of the `value` field. * **URL_REGEX:** Matches if the concatenation of request URL path and query is described by the regular expression in the value field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org). * **URL_DOES_NOT_MATCH_REGEX:** Matches if the concatenation of request URL path and query is not described by the regular expression in the `value` field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org). * **URL_DOES_NOT_START_WITH:** Matches if the concatenation of request URL path and query does not start with the contents of the `value` field. * **URL_PART_DOES_NOT_CONTAIN:** Matches if the concatenation of request URL path and query does not contain the contents of the `value` field. * **URL_PART_DOES_NOT_END_WITH:** Matches if the concatenation of request URL path and query does not end with the contents of the `value` field. * **IP_IS:** Matches if the request originates from one of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30" * **IP_IS_NOT:** Matches if the request does not originate from any of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30" * **IP_IN_LIST:** Matches if the request originates from one of the IP addresses contained in the referenced address list. The `value` in this case is OCID of the address list. * **IP_NOT_IN_LIST:** Matches if the request does not originate from any IP address contained in the referenced address list. The `value` field in this case is OCID of the address list. * **HTTP_HEADER_CONTAINS:** The HTTP_HEADER_CONTAINS criteria is defined using a compound value separated by a colon: a header field name and a header field value. `host:test.example.com` is an example of a criteria value where `host` is the header field name and `test.example.com` is the header field value. A request matches when the header field name is a case insensitive match and the header field value is a case insensitive, substring match. *Example:* With a criteria value of `host:test.example.com`, where `host` is the name of the field and `test.example.com` is the value of the host field, a request with the header values, `Host: www.test.example.com` will match, where as a request with header values of `host: www.example.com` or `host: test.sub.example.com` will not match. * **HTTP_METHOD_IS:** Matches if the request method is identical to one of the values listed in field. The `value` in this case is string with one or multiple HTTP methods separated by new line symbol \n The list of available methods: `GET`, `HEAD`, `POST`, `PUT`, `DELETE`, `CONNECT`, `OPTIONS`, `TRACE`, `PATCH`

func (GetWaasPolicyWafConfigJsChallengeCriteriaOutput) ElementType

func (GetWaasPolicyWafConfigJsChallengeCriteriaOutput) IsCaseSensitive

When enabled, the condition will be matched with case-sensitive rules.

func (GetWaasPolicyWafConfigJsChallengeCriteriaOutput) ToGetWaasPolicyWafConfigJsChallengeCriteriaOutput

func (o GetWaasPolicyWafConfigJsChallengeCriteriaOutput) ToGetWaasPolicyWafConfigJsChallengeCriteriaOutput() GetWaasPolicyWafConfigJsChallengeCriteriaOutput

func (GetWaasPolicyWafConfigJsChallengeCriteriaOutput) ToGetWaasPolicyWafConfigJsChallengeCriteriaOutputWithContext

func (o GetWaasPolicyWafConfigJsChallengeCriteriaOutput) ToGetWaasPolicyWafConfigJsChallengeCriteriaOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigJsChallengeCriteriaOutput

func (GetWaasPolicyWafConfigJsChallengeCriteriaOutput) Value

The value of the header.

type GetWaasPolicyWafConfigJsChallengeInput

type GetWaasPolicyWafConfigJsChallengeInput interface {
	pulumi.Input

	ToGetWaasPolicyWafConfigJsChallengeOutput() GetWaasPolicyWafConfigJsChallengeOutput
	ToGetWaasPolicyWafConfigJsChallengeOutputWithContext(context.Context) GetWaasPolicyWafConfigJsChallengeOutput
}

GetWaasPolicyWafConfigJsChallengeInput is an input type that accepts GetWaasPolicyWafConfigJsChallengeArgs and GetWaasPolicyWafConfigJsChallengeOutput values. You can construct a concrete instance of `GetWaasPolicyWafConfigJsChallengeInput` via:

GetWaasPolicyWafConfigJsChallengeArgs{...}

type GetWaasPolicyWafConfigJsChallengeOutput

type GetWaasPolicyWafConfigJsChallengeOutput struct{ *pulumi.OutputState }

func (GetWaasPolicyWafConfigJsChallengeOutput) Action

The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.

func (GetWaasPolicyWafConfigJsChallengeOutput) ActionExpirationInSeconds

func (o GetWaasPolicyWafConfigJsChallengeOutput) ActionExpirationInSeconds() pulumi.IntOutput

The number of seconds between challenges from the same IP address. If unspecified, defaults to `60`.

func (GetWaasPolicyWafConfigJsChallengeOutput) AreRedirectsChallenged

func (o GetWaasPolicyWafConfigJsChallengeOutput) AreRedirectsChallenged() pulumi.BoolOutput

When enabled, redirect responses from the origin will also be challenged. This will change HTTP 301/302 responses from origin to HTTP 200 with an HTML body containing JavaScript page redirection.

func (GetWaasPolicyWafConfigJsChallengeOutput) ChallengeSettings

The challenge settings if `action` is set to `BLOCK`.

func (GetWaasPolicyWafConfigJsChallengeOutput) Criterias

When defined, the JavaScript Challenge would be applied only for the requests that matched all the listed conditions.

func (GetWaasPolicyWafConfigJsChallengeOutput) ElementType

func (GetWaasPolicyWafConfigJsChallengeOutput) FailureThreshold

The number of failed requests before taking action. If unspecified, defaults to `10`.

func (GetWaasPolicyWafConfigJsChallengeOutput) IsEnabled

Enables or disables the JavaScript challenge Web Application Firewall feature.

func (GetWaasPolicyWafConfigJsChallengeOutput) IsNatEnabled

When enabled, the user is identified not only by the IP address but also by an unique additional hash, which prevents blocking visitors with shared IP addresses.

func (GetWaasPolicyWafConfigJsChallengeOutput) SetHttpHeader

Adds an additional HTTP header to requests that fail the challenge before being passed to the origin. Only applicable when the `action` is set to `DETECT`.

func (GetWaasPolicyWafConfigJsChallengeOutput) ToGetWaasPolicyWafConfigJsChallengeOutput

func (o GetWaasPolicyWafConfigJsChallengeOutput) ToGetWaasPolicyWafConfigJsChallengeOutput() GetWaasPolicyWafConfigJsChallengeOutput

func (GetWaasPolicyWafConfigJsChallengeOutput) ToGetWaasPolicyWafConfigJsChallengeOutputWithContext

func (o GetWaasPolicyWafConfigJsChallengeOutput) ToGetWaasPolicyWafConfigJsChallengeOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigJsChallengeOutput

type GetWaasPolicyWafConfigJsChallengeSetHttpHeader

type GetWaasPolicyWafConfigJsChallengeSetHttpHeader struct {
	// The unique name of the whitelist.
	Name string `pulumi:"name"`
	// The value of the header.
	Value string `pulumi:"value"`
}

type GetWaasPolicyWafConfigJsChallengeSetHttpHeaderArgs

type GetWaasPolicyWafConfigJsChallengeSetHttpHeaderArgs struct {
	// The unique name of the whitelist.
	Name pulumi.StringInput `pulumi:"name"`
	// The value of the header.
	Value pulumi.StringInput `pulumi:"value"`
}

func (GetWaasPolicyWafConfigJsChallengeSetHttpHeaderArgs) ElementType

func (GetWaasPolicyWafConfigJsChallengeSetHttpHeaderArgs) ToGetWaasPolicyWafConfigJsChallengeSetHttpHeaderOutput

func (i GetWaasPolicyWafConfigJsChallengeSetHttpHeaderArgs) ToGetWaasPolicyWafConfigJsChallengeSetHttpHeaderOutput() GetWaasPolicyWafConfigJsChallengeSetHttpHeaderOutput

func (GetWaasPolicyWafConfigJsChallengeSetHttpHeaderArgs) ToGetWaasPolicyWafConfigJsChallengeSetHttpHeaderOutputWithContext

func (i GetWaasPolicyWafConfigJsChallengeSetHttpHeaderArgs) ToGetWaasPolicyWafConfigJsChallengeSetHttpHeaderOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigJsChallengeSetHttpHeaderOutput

type GetWaasPolicyWafConfigJsChallengeSetHttpHeaderInput

type GetWaasPolicyWafConfigJsChallengeSetHttpHeaderInput interface {
	pulumi.Input

	ToGetWaasPolicyWafConfigJsChallengeSetHttpHeaderOutput() GetWaasPolicyWafConfigJsChallengeSetHttpHeaderOutput
	ToGetWaasPolicyWafConfigJsChallengeSetHttpHeaderOutputWithContext(context.Context) GetWaasPolicyWafConfigJsChallengeSetHttpHeaderOutput
}

GetWaasPolicyWafConfigJsChallengeSetHttpHeaderInput is an input type that accepts GetWaasPolicyWafConfigJsChallengeSetHttpHeaderArgs and GetWaasPolicyWafConfigJsChallengeSetHttpHeaderOutput values. You can construct a concrete instance of `GetWaasPolicyWafConfigJsChallengeSetHttpHeaderInput` via:

GetWaasPolicyWafConfigJsChallengeSetHttpHeaderArgs{...}

type GetWaasPolicyWafConfigJsChallengeSetHttpHeaderOutput

type GetWaasPolicyWafConfigJsChallengeSetHttpHeaderOutput struct{ *pulumi.OutputState }

func (GetWaasPolicyWafConfigJsChallengeSetHttpHeaderOutput) ElementType

func (GetWaasPolicyWafConfigJsChallengeSetHttpHeaderOutput) Name

The unique name of the whitelist.

func (GetWaasPolicyWafConfigJsChallengeSetHttpHeaderOutput) ToGetWaasPolicyWafConfigJsChallengeSetHttpHeaderOutput

func (GetWaasPolicyWafConfigJsChallengeSetHttpHeaderOutput) ToGetWaasPolicyWafConfigJsChallengeSetHttpHeaderOutputWithContext

func (o GetWaasPolicyWafConfigJsChallengeSetHttpHeaderOutput) ToGetWaasPolicyWafConfigJsChallengeSetHttpHeaderOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigJsChallengeSetHttpHeaderOutput

func (GetWaasPolicyWafConfigJsChallengeSetHttpHeaderOutput) Value

The value of the header.

type GetWaasPolicyWafConfigOutput

type GetWaasPolicyWafConfigOutput struct{ *pulumi.OutputState }

func (GetWaasPolicyWafConfigOutput) AccessRules

The access rules applied to the Web Application Firewall. Used for defining custom access policies with the combination of `ALLOW`, `DETECT`, and `BLOCK` rules, based on different criteria.

func (GetWaasPolicyWafConfigOutput) AddressRateLimiting

The IP address rate limiting settings used to limit the number of requests from an address.

func (GetWaasPolicyWafConfigOutput) CachingRules

A list of caching rules applied to the web application.

func (GetWaasPolicyWafConfigOutput) Captchas

A list of CAPTCHA challenge settings. These are used to challenge requests with a CAPTCHA to block bots.

func (GetWaasPolicyWafConfigOutput) CustomProtectionRules

A list of the custom protection rule OCIDs and their actions.

func (GetWaasPolicyWafConfigOutput) DeviceFingerprintChallenge

The device fingerprint challenge settings. Used to detect unique devices based on the device fingerprint information collected in order to block bots.

func (GetWaasPolicyWafConfigOutput) ElementType

func (GetWaasPolicyWafConfigOutput) HumanInteractionChallenge

The human interaction challenge settings. Used to look for natural human interactions such as mouse movements, time on site, and page scrolling to identify bots.

func (GetWaasPolicyWafConfigOutput) JsChallenge

The JavaScript challenge settings. Used to challenge requests with a JavaScript challenge and take the action if a browser has no JavaScript support in order to block bots.

func (GetWaasPolicyWafConfigOutput) Origin

The key in the map of origins referencing the origin used for the Web Application Firewall. The origin must already be included in `Origins`. Required when creating the `WafConfig` resource, but not on update.

func (GetWaasPolicyWafConfigOutput) OriginGroups

The map of origin groups and their keys used to associate origins to the `wafConfig`. Origin groups allow you to apply weights to groups of origins for load balancing purposes. Origins with higher weights will receive larger proportions of client requests. To add additional origins to your WAAS policy, update the `origins` field of a `UpdateWaasPolicy` request.

func (GetWaasPolicyWafConfigOutput) ProtectionSettings

The settings to apply to protection rules.

func (GetWaasPolicyWafConfigOutput) ToGetWaasPolicyWafConfigOutput

func (o GetWaasPolicyWafConfigOutput) ToGetWaasPolicyWafConfigOutput() GetWaasPolicyWafConfigOutput

func (GetWaasPolicyWafConfigOutput) ToGetWaasPolicyWafConfigOutputWithContext

func (o GetWaasPolicyWafConfigOutput) ToGetWaasPolicyWafConfigOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigOutput

func (GetWaasPolicyWafConfigOutput) Whitelists

A list of IP addresses that bypass the Web Application Firewall.

type GetWaasPolicyWafConfigProtectionSettings

type GetWaasPolicyWafConfigProtectionSettings struct {
	// The list of allowed HTTP methods. If unspecified, default to `[OPTIONS, GET, HEAD, POST]`. This setting only applies if a corresponding protection rule is enabled, such as the "Restrict HTTP Request Methods" rule (key: 911100).
	AllowedHttpMethods []string `pulumi:"allowedHttpMethods"`
	// If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.
	BlockAction string `pulumi:"blockAction"`
	// The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.
	BlockErrorPageCode string `pulumi:"blockErrorPageCode"`
	// The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`
	BlockErrorPageDescription string `pulumi:"blockErrorPageDescription"`
	// The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'
	BlockErrorPageMessage string `pulumi:"blockErrorPageMessage"`
	// The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.
	BlockResponseCode int `pulumi:"blockResponseCode"`
	// Inspects the response body of origin responses. Can be used to detect leakage of sensitive data. If unspecified, defaults to `false`.
	IsResponseInspected bool `pulumi:"isResponseInspected"`
	// The maximum number of arguments allowed to be passed to your application before an action is taken. Arguements are query parameters or body parameters in a PUT or POST request. If unspecified, defaults to `255`. This setting only applies if a corresponding protection rule is enabled, such as the "Number of Arguments Limits" rule (key: 960335).  Example: If `maxArgumentCount` to `2` for the Max Number of Arguments protection rule (key: 960335), the following requests would be blocked: `GET /myapp/path?query=one&query=two&query=three` `POST /myapp/path` with Body `{"argument1":"one","argument2":"two","argument3":"three"}`
	MaxArgumentCount int `pulumi:"maxArgumentCount"`
	// The maximum length allowed for each argument name, in characters. Arguements are query parameters or body parameters in a PUT or POST request. If unspecified, defaults to `400`. This setting only applies if a corresponding protection rule is enabled, such as the "Values Limits" rule (key: 960208).
	MaxNameLengthPerArgument int `pulumi:"maxNameLengthPerArgument"`
	// The maximum response size to be fully inspected, in binary kilobytes (KiB). Anything over this limit will be partially inspected. If unspecified, defaults to `1024`.
	MaxResponseSizeInKiB int `pulumi:"maxResponseSizeInKiB"`
	// The maximum length allowed for the sum of the argument name and value, in characters. Arguements are query parameters or body parameters in a PUT or POST request. If unspecified, defaults to `64000`. This setting only applies if a corresponding protection rule is enabled, such as the "Total Arguments Limits" rule (key: 960341).
	MaxTotalNameLengthOfArguments int `pulumi:"maxTotalNameLengthOfArguments"`
	// The list of media types to allow for inspection, if `isResponseInspected` is enabled. Only responses with MIME types in this list will be inspected. If unspecified, defaults to `["text/html", "text/plain", "text/xml"]`.
	MediaTypes []string `pulumi:"mediaTypes"`
	// The length of time to analyze traffic traffic, in days. After the analysis period, `WafRecommendations` will be populated. If unspecified, defaults to `10`.
	RecommendationsPeriodInDays int `pulumi:"recommendationsPeriodInDays"`
}

type GetWaasPolicyWafConfigProtectionSettingsArgs

type GetWaasPolicyWafConfigProtectionSettingsArgs struct {
	// The list of allowed HTTP methods. If unspecified, default to `[OPTIONS, GET, HEAD, POST]`. This setting only applies if a corresponding protection rule is enabled, such as the "Restrict HTTP Request Methods" rule (key: 911100).
	AllowedHttpMethods pulumi.StringArrayInput `pulumi:"allowedHttpMethods"`
	// If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.
	BlockAction pulumi.StringInput `pulumi:"blockAction"`
	// The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.
	BlockErrorPageCode pulumi.StringInput `pulumi:"blockErrorPageCode"`
	// The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`
	BlockErrorPageDescription pulumi.StringInput `pulumi:"blockErrorPageDescription"`
	// The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'
	BlockErrorPageMessage pulumi.StringInput `pulumi:"blockErrorPageMessage"`
	// The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.
	BlockResponseCode pulumi.IntInput `pulumi:"blockResponseCode"`
	// Inspects the response body of origin responses. Can be used to detect leakage of sensitive data. If unspecified, defaults to `false`.
	IsResponseInspected pulumi.BoolInput `pulumi:"isResponseInspected"`
	// The maximum number of arguments allowed to be passed to your application before an action is taken. Arguements are query parameters or body parameters in a PUT or POST request. If unspecified, defaults to `255`. This setting only applies if a corresponding protection rule is enabled, such as the "Number of Arguments Limits" rule (key: 960335).  Example: If `maxArgumentCount` to `2` for the Max Number of Arguments protection rule (key: 960335), the following requests would be blocked: `GET /myapp/path?query=one&query=two&query=three` `POST /myapp/path` with Body `{"argument1":"one","argument2":"two","argument3":"three"}`
	MaxArgumentCount pulumi.IntInput `pulumi:"maxArgumentCount"`
	// The maximum length allowed for each argument name, in characters. Arguements are query parameters or body parameters in a PUT or POST request. If unspecified, defaults to `400`. This setting only applies if a corresponding protection rule is enabled, such as the "Values Limits" rule (key: 960208).
	MaxNameLengthPerArgument pulumi.IntInput `pulumi:"maxNameLengthPerArgument"`
	// The maximum response size to be fully inspected, in binary kilobytes (KiB). Anything over this limit will be partially inspected. If unspecified, defaults to `1024`.
	MaxResponseSizeInKiB pulumi.IntInput `pulumi:"maxResponseSizeInKiB"`
	// The maximum length allowed for the sum of the argument name and value, in characters. Arguements are query parameters or body parameters in a PUT or POST request. If unspecified, defaults to `64000`. This setting only applies if a corresponding protection rule is enabled, such as the "Total Arguments Limits" rule (key: 960341).
	MaxTotalNameLengthOfArguments pulumi.IntInput `pulumi:"maxTotalNameLengthOfArguments"`
	// The list of media types to allow for inspection, if `isResponseInspected` is enabled. Only responses with MIME types in this list will be inspected. If unspecified, defaults to `["text/html", "text/plain", "text/xml"]`.
	MediaTypes pulumi.StringArrayInput `pulumi:"mediaTypes"`
	// The length of time to analyze traffic traffic, in days. After the analysis period, `WafRecommendations` will be populated. If unspecified, defaults to `10`.
	RecommendationsPeriodInDays pulumi.IntInput `pulumi:"recommendationsPeriodInDays"`
}

func (GetWaasPolicyWafConfigProtectionSettingsArgs) ElementType

func (GetWaasPolicyWafConfigProtectionSettingsArgs) ToGetWaasPolicyWafConfigProtectionSettingsOutput

func (i GetWaasPolicyWafConfigProtectionSettingsArgs) ToGetWaasPolicyWafConfigProtectionSettingsOutput() GetWaasPolicyWafConfigProtectionSettingsOutput

func (GetWaasPolicyWafConfigProtectionSettingsArgs) ToGetWaasPolicyWafConfigProtectionSettingsOutputWithContext

func (i GetWaasPolicyWafConfigProtectionSettingsArgs) ToGetWaasPolicyWafConfigProtectionSettingsOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigProtectionSettingsOutput

type GetWaasPolicyWafConfigProtectionSettingsInput

type GetWaasPolicyWafConfigProtectionSettingsInput interface {
	pulumi.Input

	ToGetWaasPolicyWafConfigProtectionSettingsOutput() GetWaasPolicyWafConfigProtectionSettingsOutput
	ToGetWaasPolicyWafConfigProtectionSettingsOutputWithContext(context.Context) GetWaasPolicyWafConfigProtectionSettingsOutput
}

GetWaasPolicyWafConfigProtectionSettingsInput is an input type that accepts GetWaasPolicyWafConfigProtectionSettingsArgs and GetWaasPolicyWafConfigProtectionSettingsOutput values. You can construct a concrete instance of `GetWaasPolicyWafConfigProtectionSettingsInput` via:

GetWaasPolicyWafConfigProtectionSettingsArgs{...}

type GetWaasPolicyWafConfigProtectionSettingsOutput

type GetWaasPolicyWafConfigProtectionSettingsOutput struct{ *pulumi.OutputState }

func (GetWaasPolicyWafConfigProtectionSettingsOutput) AllowedHttpMethods

The list of allowed HTTP methods. If unspecified, default to `[OPTIONS, GET, HEAD, POST]`. This setting only applies if a corresponding protection rule is enabled, such as the "Restrict HTTP Request Methods" rule (key: 911100).

func (GetWaasPolicyWafConfigProtectionSettingsOutput) BlockAction

If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.

func (GetWaasPolicyWafConfigProtectionSettingsOutput) BlockErrorPageCode

The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.

func (GetWaasPolicyWafConfigProtectionSettingsOutput) BlockErrorPageDescription

The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`

func (GetWaasPolicyWafConfigProtectionSettingsOutput) BlockErrorPageMessage

The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'

func (GetWaasPolicyWafConfigProtectionSettingsOutput) BlockResponseCode

The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.

func (GetWaasPolicyWafConfigProtectionSettingsOutput) ElementType

func (GetWaasPolicyWafConfigProtectionSettingsOutput) IsResponseInspected

Inspects the response body of origin responses. Can be used to detect leakage of sensitive data. If unspecified, defaults to `false`.

func (GetWaasPolicyWafConfigProtectionSettingsOutput) MaxArgumentCount

The maximum number of arguments allowed to be passed to your application before an action is taken. Arguements are query parameters or body parameters in a PUT or POST request. If unspecified, defaults to `255`. This setting only applies if a corresponding protection rule is enabled, such as the "Number of Arguments Limits" rule (key: 960335). Example: If `maxArgumentCount` to `2` for the Max Number of Arguments protection rule (key: 960335), the following requests would be blocked: `GET /myapp/path?query=one&query=two&query=three` `POST /myapp/path` with Body `{"argument1":"one","argument2":"two","argument3":"three"}`

func (GetWaasPolicyWafConfigProtectionSettingsOutput) MaxNameLengthPerArgument

The maximum length allowed for each argument name, in characters. Arguements are query parameters or body parameters in a PUT or POST request. If unspecified, defaults to `400`. This setting only applies if a corresponding protection rule is enabled, such as the "Values Limits" rule (key: 960208).

func (GetWaasPolicyWafConfigProtectionSettingsOutput) MaxResponseSizeInKiB

The maximum response size to be fully inspected, in binary kilobytes (KiB). Anything over this limit will be partially inspected. If unspecified, defaults to `1024`.

func (GetWaasPolicyWafConfigProtectionSettingsOutput) MaxTotalNameLengthOfArguments

func (o GetWaasPolicyWafConfigProtectionSettingsOutput) MaxTotalNameLengthOfArguments() pulumi.IntOutput

The maximum length allowed for the sum of the argument name and value, in characters. Arguements are query parameters or body parameters in a PUT or POST request. If unspecified, defaults to `64000`. This setting only applies if a corresponding protection rule is enabled, such as the "Total Arguments Limits" rule (key: 960341).

func (GetWaasPolicyWafConfigProtectionSettingsOutput) MediaTypes

The list of media types to allow for inspection, if `isResponseInspected` is enabled. Only responses with MIME types in this list will be inspected. If unspecified, defaults to `["text/html", "text/plain", "text/xml"]`.

func (GetWaasPolicyWafConfigProtectionSettingsOutput) RecommendationsPeriodInDays

func (o GetWaasPolicyWafConfigProtectionSettingsOutput) RecommendationsPeriodInDays() pulumi.IntOutput

The length of time to analyze traffic traffic, in days. After the analysis period, `WafRecommendations` will be populated. If unspecified, defaults to `10`.

func (GetWaasPolicyWafConfigProtectionSettingsOutput) ToGetWaasPolicyWafConfigProtectionSettingsOutput

func (o GetWaasPolicyWafConfigProtectionSettingsOutput) ToGetWaasPolicyWafConfigProtectionSettingsOutput() GetWaasPolicyWafConfigProtectionSettingsOutput

func (GetWaasPolicyWafConfigProtectionSettingsOutput) ToGetWaasPolicyWafConfigProtectionSettingsOutputWithContext

func (o GetWaasPolicyWafConfigProtectionSettingsOutput) ToGetWaasPolicyWafConfigProtectionSettingsOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigProtectionSettingsOutput

type GetWaasPolicyWafConfigWhitelist

type GetWaasPolicyWafConfigWhitelist struct {
	// A list of [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of IP address lists to include in the whitelist.
	AddressLists []string `pulumi:"addressLists"`
	// A set of IP addresses or CIDR notations to include in the whitelist.
	Addresses []string `pulumi:"addresses"`
	// The unique name of the whitelist.
	Name string `pulumi:"name"`
}

type GetWaasPolicyWafConfigWhitelistArgs

type GetWaasPolicyWafConfigWhitelistArgs struct {
	// A list of [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of IP address lists to include in the whitelist.
	AddressLists pulumi.StringArrayInput `pulumi:"addressLists"`
	// A set of IP addresses or CIDR notations to include in the whitelist.
	Addresses pulumi.StringArrayInput `pulumi:"addresses"`
	// The unique name of the whitelist.
	Name pulumi.StringInput `pulumi:"name"`
}

func (GetWaasPolicyWafConfigWhitelistArgs) ElementType

func (GetWaasPolicyWafConfigWhitelistArgs) ToGetWaasPolicyWafConfigWhitelistOutput

func (i GetWaasPolicyWafConfigWhitelistArgs) ToGetWaasPolicyWafConfigWhitelistOutput() GetWaasPolicyWafConfigWhitelistOutput

func (GetWaasPolicyWafConfigWhitelistArgs) ToGetWaasPolicyWafConfigWhitelistOutputWithContext

func (i GetWaasPolicyWafConfigWhitelistArgs) ToGetWaasPolicyWafConfigWhitelistOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigWhitelistOutput

type GetWaasPolicyWafConfigWhitelistArray

type GetWaasPolicyWafConfigWhitelistArray []GetWaasPolicyWafConfigWhitelistInput

func (GetWaasPolicyWafConfigWhitelistArray) ElementType

func (GetWaasPolicyWafConfigWhitelistArray) ToGetWaasPolicyWafConfigWhitelistArrayOutput

func (i GetWaasPolicyWafConfigWhitelistArray) ToGetWaasPolicyWafConfigWhitelistArrayOutput() GetWaasPolicyWafConfigWhitelistArrayOutput

func (GetWaasPolicyWafConfigWhitelistArray) ToGetWaasPolicyWafConfigWhitelistArrayOutputWithContext

func (i GetWaasPolicyWafConfigWhitelistArray) ToGetWaasPolicyWafConfigWhitelistArrayOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigWhitelistArrayOutput

type GetWaasPolicyWafConfigWhitelistArrayInput

type GetWaasPolicyWafConfigWhitelistArrayInput interface {
	pulumi.Input

	ToGetWaasPolicyWafConfigWhitelistArrayOutput() GetWaasPolicyWafConfigWhitelistArrayOutput
	ToGetWaasPolicyWafConfigWhitelistArrayOutputWithContext(context.Context) GetWaasPolicyWafConfigWhitelistArrayOutput
}

GetWaasPolicyWafConfigWhitelistArrayInput is an input type that accepts GetWaasPolicyWafConfigWhitelistArray and GetWaasPolicyWafConfigWhitelistArrayOutput values. You can construct a concrete instance of `GetWaasPolicyWafConfigWhitelistArrayInput` via:

GetWaasPolicyWafConfigWhitelistArray{ GetWaasPolicyWafConfigWhitelistArgs{...} }

type GetWaasPolicyWafConfigWhitelistArrayOutput

type GetWaasPolicyWafConfigWhitelistArrayOutput struct{ *pulumi.OutputState }

func (GetWaasPolicyWafConfigWhitelistArrayOutput) ElementType

func (GetWaasPolicyWafConfigWhitelistArrayOutput) Index

func (GetWaasPolicyWafConfigWhitelistArrayOutput) ToGetWaasPolicyWafConfigWhitelistArrayOutput

func (o GetWaasPolicyWafConfigWhitelistArrayOutput) ToGetWaasPolicyWafConfigWhitelistArrayOutput() GetWaasPolicyWafConfigWhitelistArrayOutput

func (GetWaasPolicyWafConfigWhitelistArrayOutput) ToGetWaasPolicyWafConfigWhitelistArrayOutputWithContext

func (o GetWaasPolicyWafConfigWhitelistArrayOutput) ToGetWaasPolicyWafConfigWhitelistArrayOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigWhitelistArrayOutput

type GetWaasPolicyWafConfigWhitelistInput

type GetWaasPolicyWafConfigWhitelistInput interface {
	pulumi.Input

	ToGetWaasPolicyWafConfigWhitelistOutput() GetWaasPolicyWafConfigWhitelistOutput
	ToGetWaasPolicyWafConfigWhitelistOutputWithContext(context.Context) GetWaasPolicyWafConfigWhitelistOutput
}

GetWaasPolicyWafConfigWhitelistInput is an input type that accepts GetWaasPolicyWafConfigWhitelistArgs and GetWaasPolicyWafConfigWhitelistOutput values. You can construct a concrete instance of `GetWaasPolicyWafConfigWhitelistInput` via:

GetWaasPolicyWafConfigWhitelistArgs{...}

type GetWaasPolicyWafConfigWhitelistOutput

type GetWaasPolicyWafConfigWhitelistOutput struct{ *pulumi.OutputState }

func (GetWaasPolicyWafConfigWhitelistOutput) AddressLists

A list of [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of IP address lists to include in the whitelist.

func (GetWaasPolicyWafConfigWhitelistOutput) Addresses

A set of IP addresses or CIDR notations to include in the whitelist.

func (GetWaasPolicyWafConfigWhitelistOutput) ElementType

func (GetWaasPolicyWafConfigWhitelistOutput) Name

The unique name of the whitelist.

func (GetWaasPolicyWafConfigWhitelistOutput) ToGetWaasPolicyWafConfigWhitelistOutput

func (o GetWaasPolicyWafConfigWhitelistOutput) ToGetWaasPolicyWafConfigWhitelistOutput() GetWaasPolicyWafConfigWhitelistOutput

func (GetWaasPolicyWafConfigWhitelistOutput) ToGetWaasPolicyWafConfigWhitelistOutputWithContext

func (o GetWaasPolicyWafConfigWhitelistOutput) ToGetWaasPolicyWafConfigWhitelistOutputWithContext(ctx context.Context) GetWaasPolicyWafConfigWhitelistOutput

type HttpRedirect

type HttpRedirect struct {
	pulumi.CustomResourceState

	// (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the HTTP Redirects compartment.
	CompartmentId pulumi.StringOutput `pulumi:"compartmentId"`
	// (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Operations.CostCenter": "42"}`
	DefinedTags pulumi.MapOutput `pulumi:"definedTags"`
	// (Updatable) The user-friendly name of the HTTP Redirect. The name can be changed and does not need to be unique.
	DisplayName pulumi.StringOutput `pulumi:"displayName"`
	// The domain from which traffic will be redirected.
	Domain pulumi.StringOutput `pulumi:"domain"`
	// (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Department": "Finance"}`
	FreeformTags pulumi.MapOutput `pulumi:"freeformTags"`
	// (Updatable) The response code returned for the redirect to the client. For more information, see [RFC 7231](https://tools.ietf.org/html/rfc7231#section-6.4).
	ResponseCode pulumi.IntOutput `pulumi:"responseCode"`
	// The current lifecycle state of the HTTP Redirect.
	State pulumi.StringOutput `pulumi:"state"`
	// (Updatable) The redirect target object including all the redirect data.
	Target HttpRedirectTargetOutput `pulumi:"target"`
	// The date and time the policy was created, expressed in RFC 3339 timestamp format.
	TimeCreated pulumi.StringOutput `pulumi:"timeCreated"`
}

This resource provides the Http Redirect resource in Oracle Cloud Infrastructure Web Application Acceleration and Security service.

Creates a new HTTP Redirect on the WAF edge.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-oci/sdk/go/oci/Waas"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Waas.NewHttpRedirect(ctx, "test_http_redirect", &Waas.HttpRedirectArgs{
			CompartmentId: pulumi.Any(compartmentId),
			Domain:        pulumi.Any(httpRedirectDomain),
			Target: &waas.HttpRedirectTargetArgs{
				Host:     pulumi.Any(httpRedirectTargetHost),
				Path:     pulumi.Any(httpRedirectTargetPath),
				Protocol: pulumi.Any(httpRedirectTargetProtocol),
				Query:    pulumi.Any(httpRedirectTargetQuery),
				Port:     pulumi.Any(httpRedirectTargetPort),
			},
			DefinedTags: pulumi.Map{
				"Operations.CostCenter": pulumi.Any("42"),
			},
			DisplayName: pulumi.Any(httpRedirectDisplayName),
			FreeformTags: pulumi.Map{
				"Department": pulumi.Any("Finance"),
			},
			ResponseCode: pulumi.Any(httpRedirectResponseCode),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

HttpRedirects can be imported using the `id`, e.g.

```sh $ pulumi import oci:Waas/httpRedirect:HttpRedirect test_http_redirect "id" ```

func GetHttpRedirect

func GetHttpRedirect(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *HttpRedirectState, opts ...pulumi.ResourceOption) (*HttpRedirect, error)

GetHttpRedirect gets an existing HttpRedirect 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 NewHttpRedirect

func NewHttpRedirect(ctx *pulumi.Context,
	name string, args *HttpRedirectArgs, opts ...pulumi.ResourceOption) (*HttpRedirect, error)

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

func (*HttpRedirect) ElementType

func (*HttpRedirect) ElementType() reflect.Type

func (*HttpRedirect) ToHttpRedirectOutput

func (i *HttpRedirect) ToHttpRedirectOutput() HttpRedirectOutput

func (*HttpRedirect) ToHttpRedirectOutputWithContext

func (i *HttpRedirect) ToHttpRedirectOutputWithContext(ctx context.Context) HttpRedirectOutput

type HttpRedirectArgs

type HttpRedirectArgs struct {
	// (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the HTTP Redirects compartment.
	CompartmentId pulumi.StringInput
	// (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Operations.CostCenter": "42"}`
	DefinedTags pulumi.MapInput
	// (Updatable) The user-friendly name of the HTTP Redirect. The name can be changed and does not need to be unique.
	DisplayName pulumi.StringPtrInput
	// The domain from which traffic will be redirected.
	Domain pulumi.StringInput
	// (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Department": "Finance"}`
	FreeformTags pulumi.MapInput
	// (Updatable) The response code returned for the redirect to the client. For more information, see [RFC 7231](https://tools.ietf.org/html/rfc7231#section-6.4).
	ResponseCode pulumi.IntPtrInput
	// (Updatable) The redirect target object including all the redirect data.
	Target HttpRedirectTargetInput
}

The set of arguments for constructing a HttpRedirect resource.

func (HttpRedirectArgs) ElementType

func (HttpRedirectArgs) ElementType() reflect.Type

type HttpRedirectArray

type HttpRedirectArray []HttpRedirectInput

func (HttpRedirectArray) ElementType

func (HttpRedirectArray) ElementType() reflect.Type

func (HttpRedirectArray) ToHttpRedirectArrayOutput

func (i HttpRedirectArray) ToHttpRedirectArrayOutput() HttpRedirectArrayOutput

func (HttpRedirectArray) ToHttpRedirectArrayOutputWithContext

func (i HttpRedirectArray) ToHttpRedirectArrayOutputWithContext(ctx context.Context) HttpRedirectArrayOutput

type HttpRedirectArrayInput

type HttpRedirectArrayInput interface {
	pulumi.Input

	ToHttpRedirectArrayOutput() HttpRedirectArrayOutput
	ToHttpRedirectArrayOutputWithContext(context.Context) HttpRedirectArrayOutput
}

HttpRedirectArrayInput is an input type that accepts HttpRedirectArray and HttpRedirectArrayOutput values. You can construct a concrete instance of `HttpRedirectArrayInput` via:

HttpRedirectArray{ HttpRedirectArgs{...} }

type HttpRedirectArrayOutput

type HttpRedirectArrayOutput struct{ *pulumi.OutputState }

func (HttpRedirectArrayOutput) ElementType

func (HttpRedirectArrayOutput) ElementType() reflect.Type

func (HttpRedirectArrayOutput) Index

func (HttpRedirectArrayOutput) ToHttpRedirectArrayOutput

func (o HttpRedirectArrayOutput) ToHttpRedirectArrayOutput() HttpRedirectArrayOutput

func (HttpRedirectArrayOutput) ToHttpRedirectArrayOutputWithContext

func (o HttpRedirectArrayOutput) ToHttpRedirectArrayOutputWithContext(ctx context.Context) HttpRedirectArrayOutput

type HttpRedirectInput

type HttpRedirectInput interface {
	pulumi.Input

	ToHttpRedirectOutput() HttpRedirectOutput
	ToHttpRedirectOutputWithContext(ctx context.Context) HttpRedirectOutput
}

type HttpRedirectMap

type HttpRedirectMap map[string]HttpRedirectInput

func (HttpRedirectMap) ElementType

func (HttpRedirectMap) ElementType() reflect.Type

func (HttpRedirectMap) ToHttpRedirectMapOutput

func (i HttpRedirectMap) ToHttpRedirectMapOutput() HttpRedirectMapOutput

func (HttpRedirectMap) ToHttpRedirectMapOutputWithContext

func (i HttpRedirectMap) ToHttpRedirectMapOutputWithContext(ctx context.Context) HttpRedirectMapOutput

type HttpRedirectMapInput

type HttpRedirectMapInput interface {
	pulumi.Input

	ToHttpRedirectMapOutput() HttpRedirectMapOutput
	ToHttpRedirectMapOutputWithContext(context.Context) HttpRedirectMapOutput
}

HttpRedirectMapInput is an input type that accepts HttpRedirectMap and HttpRedirectMapOutput values. You can construct a concrete instance of `HttpRedirectMapInput` via:

HttpRedirectMap{ "key": HttpRedirectArgs{...} }

type HttpRedirectMapOutput

type HttpRedirectMapOutput struct{ *pulumi.OutputState }

func (HttpRedirectMapOutput) ElementType

func (HttpRedirectMapOutput) ElementType() reflect.Type

func (HttpRedirectMapOutput) MapIndex

func (HttpRedirectMapOutput) ToHttpRedirectMapOutput

func (o HttpRedirectMapOutput) ToHttpRedirectMapOutput() HttpRedirectMapOutput

func (HttpRedirectMapOutput) ToHttpRedirectMapOutputWithContext

func (o HttpRedirectMapOutput) ToHttpRedirectMapOutputWithContext(ctx context.Context) HttpRedirectMapOutput

type HttpRedirectOutput

type HttpRedirectOutput struct{ *pulumi.OutputState }

func (HttpRedirectOutput) CompartmentId added in v0.4.0

func (o HttpRedirectOutput) CompartmentId() pulumi.StringOutput

(Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the HTTP Redirects compartment.

func (HttpRedirectOutput) DefinedTags added in v0.4.0

func (o HttpRedirectOutput) DefinedTags() pulumi.MapOutput

(Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Operations.CostCenter": "42"}`

func (HttpRedirectOutput) DisplayName added in v0.4.0

func (o HttpRedirectOutput) DisplayName() pulumi.StringOutput

(Updatable) The user-friendly name of the HTTP Redirect. The name can be changed and does not need to be unique.

func (HttpRedirectOutput) Domain added in v0.4.0

The domain from which traffic will be redirected.

func (HttpRedirectOutput) ElementType

func (HttpRedirectOutput) ElementType() reflect.Type

func (HttpRedirectOutput) FreeformTags added in v0.4.0

func (o HttpRedirectOutput) FreeformTags() pulumi.MapOutput

(Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Department": "Finance"}`

func (HttpRedirectOutput) ResponseCode added in v0.4.0

func (o HttpRedirectOutput) ResponseCode() pulumi.IntOutput

(Updatable) The response code returned for the redirect to the client. For more information, see [RFC 7231](https://tools.ietf.org/html/rfc7231#section-6.4).

func (HttpRedirectOutput) State added in v0.4.0

The current lifecycle state of the HTTP Redirect.

func (HttpRedirectOutput) Target added in v0.4.0

(Updatable) The redirect target object including all the redirect data.

func (HttpRedirectOutput) TimeCreated added in v0.4.0

func (o HttpRedirectOutput) TimeCreated() pulumi.StringOutput

The date and time the policy was created, expressed in RFC 3339 timestamp format.

func (HttpRedirectOutput) ToHttpRedirectOutput

func (o HttpRedirectOutput) ToHttpRedirectOutput() HttpRedirectOutput

func (HttpRedirectOutput) ToHttpRedirectOutputWithContext

func (o HttpRedirectOutput) ToHttpRedirectOutputWithContext(ctx context.Context) HttpRedirectOutput

type HttpRedirectState

type HttpRedirectState struct {
	// (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the HTTP Redirects compartment.
	CompartmentId pulumi.StringPtrInput
	// (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Operations.CostCenter": "42"}`
	DefinedTags pulumi.MapInput
	// (Updatable) The user-friendly name of the HTTP Redirect. The name can be changed and does not need to be unique.
	DisplayName pulumi.StringPtrInput
	// The domain from which traffic will be redirected.
	Domain pulumi.StringPtrInput
	// (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Department": "Finance"}`
	FreeformTags pulumi.MapInput
	// (Updatable) The response code returned for the redirect to the client. For more information, see [RFC 7231](https://tools.ietf.org/html/rfc7231#section-6.4).
	ResponseCode pulumi.IntPtrInput
	// The current lifecycle state of the HTTP Redirect.
	State pulumi.StringPtrInput
	// (Updatable) The redirect target object including all the redirect data.
	Target HttpRedirectTargetPtrInput
	// The date and time the policy was created, expressed in RFC 3339 timestamp format.
	TimeCreated pulumi.StringPtrInput
}

func (HttpRedirectState) ElementType

func (HttpRedirectState) ElementType() reflect.Type

type HttpRedirectTarget

type HttpRedirectTarget struct {
	// (Updatable) The host portion of the redirect.
	Host string `pulumi:"host"`
	// (Updatable) The path component of the target URL (e.g., "/path/to/resource" in "https://target.example.com/path/to/resource?redirected"), which can be empty, static, or request-copying, or request-prefixing. Use of \ is not permitted except to escape a following \, {, or }. An empty value is treated the same as static "/". A static value must begin with a leading "/", optionally followed by other path characters. A request-copying value must exactly match "{path}", and will be replaced with the path component of the request URL (including its initial "/"). A request-prefixing value must start with "/" and end with a non-escaped "{path}", which will be replaced with the path component of the request URL (including its initial "/"). Only one such replacement token is allowed.
	Path string `pulumi:"path"`
	// (Updatable) Port number of the target destination of the redirect, default to match protocol
	Port *int `pulumi:"port"`
	// (Updatable) The protocol used for the target, http or https.
	Protocol string `pulumi:"protocol"`
	// (Updatable) The query component of the target URL (e.g., "?redirected" in "https://target.example.com/path/to/resource?redirected"), which can be empty, static, or request-copying. Use of \ is not permitted except to escape a following \, {, or }. An empty value results in a redirection target URL with no query component. A static value must begin with a leading "?", optionally followed by other query characters. A request-copying value must exactly match "{query}", and will be replaced with the query component of the request URL (including a leading "?" if and only if the request URL includes a query component).
	//
	// ** IMPORTANT **
	// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
	Query string `pulumi:"query"`
}

type HttpRedirectTargetArgs

type HttpRedirectTargetArgs struct {
	// (Updatable) The host portion of the redirect.
	Host pulumi.StringInput `pulumi:"host"`
	// (Updatable) The path component of the target URL (e.g., "/path/to/resource" in "https://target.example.com/path/to/resource?redirected"), which can be empty, static, or request-copying, or request-prefixing. Use of \ is not permitted except to escape a following \, {, or }. An empty value is treated the same as static "/". A static value must begin with a leading "/", optionally followed by other path characters. A request-copying value must exactly match "{path}", and will be replaced with the path component of the request URL (including its initial "/"). A request-prefixing value must start with "/" and end with a non-escaped "{path}", which will be replaced with the path component of the request URL (including its initial "/"). Only one such replacement token is allowed.
	Path pulumi.StringInput `pulumi:"path"`
	// (Updatable) Port number of the target destination of the redirect, default to match protocol
	Port pulumi.IntPtrInput `pulumi:"port"`
	// (Updatable) The protocol used for the target, http or https.
	Protocol pulumi.StringInput `pulumi:"protocol"`
	// (Updatable) The query component of the target URL (e.g., "?redirected" in "https://target.example.com/path/to/resource?redirected"), which can be empty, static, or request-copying. Use of \ is not permitted except to escape a following \, {, or }. An empty value results in a redirection target URL with no query component. A static value must begin with a leading "?", optionally followed by other query characters. A request-copying value must exactly match "{query}", and will be replaced with the query component of the request URL (including a leading "?" if and only if the request URL includes a query component).
	//
	// ** IMPORTANT **
	// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
	Query pulumi.StringInput `pulumi:"query"`
}

func (HttpRedirectTargetArgs) ElementType

func (HttpRedirectTargetArgs) ElementType() reflect.Type

func (HttpRedirectTargetArgs) ToHttpRedirectTargetOutput

func (i HttpRedirectTargetArgs) ToHttpRedirectTargetOutput() HttpRedirectTargetOutput

func (HttpRedirectTargetArgs) ToHttpRedirectTargetOutputWithContext

func (i HttpRedirectTargetArgs) ToHttpRedirectTargetOutputWithContext(ctx context.Context) HttpRedirectTargetOutput

func (HttpRedirectTargetArgs) ToHttpRedirectTargetPtrOutput

func (i HttpRedirectTargetArgs) ToHttpRedirectTargetPtrOutput() HttpRedirectTargetPtrOutput

func (HttpRedirectTargetArgs) ToHttpRedirectTargetPtrOutputWithContext

func (i HttpRedirectTargetArgs) ToHttpRedirectTargetPtrOutputWithContext(ctx context.Context) HttpRedirectTargetPtrOutput

type HttpRedirectTargetInput

type HttpRedirectTargetInput interface {
	pulumi.Input

	ToHttpRedirectTargetOutput() HttpRedirectTargetOutput
	ToHttpRedirectTargetOutputWithContext(context.Context) HttpRedirectTargetOutput
}

HttpRedirectTargetInput is an input type that accepts HttpRedirectTargetArgs and HttpRedirectTargetOutput values. You can construct a concrete instance of `HttpRedirectTargetInput` via:

HttpRedirectTargetArgs{...}

type HttpRedirectTargetOutput

type HttpRedirectTargetOutput struct{ *pulumi.OutputState }

func (HttpRedirectTargetOutput) ElementType

func (HttpRedirectTargetOutput) ElementType() reflect.Type

func (HttpRedirectTargetOutput) Host

(Updatable) The host portion of the redirect.

func (HttpRedirectTargetOutput) Path

(Updatable) The path component of the target URL (e.g., "/path/to/resource" in "https://target.example.com/path/to/resource?redirected"), which can be empty, static, or request-copying, or request-prefixing. Use of \ is not permitted except to escape a following \, {, or }. An empty value is treated the same as static "/". A static value must begin with a leading "/", optionally followed by other path characters. A request-copying value must exactly match "{path}", and will be replaced with the path component of the request URL (including its initial "/"). A request-prefixing value must start with "/" and end with a non-escaped "{path}", which will be replaced with the path component of the request URL (including its initial "/"). Only one such replacement token is allowed.

func (HttpRedirectTargetOutput) Port

(Updatable) Port number of the target destination of the redirect, default to match protocol

func (HttpRedirectTargetOutput) Protocol

(Updatable) The protocol used for the target, http or https.

func (HttpRedirectTargetOutput) Query

(Updatable) The query component of the target URL (e.g., "?redirected" in "https://target.example.com/path/to/resource?redirected"), which can be empty, static, or request-copying. Use of \ is not permitted except to escape a following \, {, or }. An empty value results in a redirection target URL with no query component. A static value must begin with a leading "?", optionally followed by other query characters. A request-copying value must exactly match "{query}", and will be replaced with the query component of the request URL (including a leading "?" if and only if the request URL includes a query component).

** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

func (HttpRedirectTargetOutput) ToHttpRedirectTargetOutput

func (o HttpRedirectTargetOutput) ToHttpRedirectTargetOutput() HttpRedirectTargetOutput

func (HttpRedirectTargetOutput) ToHttpRedirectTargetOutputWithContext

func (o HttpRedirectTargetOutput) ToHttpRedirectTargetOutputWithContext(ctx context.Context) HttpRedirectTargetOutput

func (HttpRedirectTargetOutput) ToHttpRedirectTargetPtrOutput

func (o HttpRedirectTargetOutput) ToHttpRedirectTargetPtrOutput() HttpRedirectTargetPtrOutput

func (HttpRedirectTargetOutput) ToHttpRedirectTargetPtrOutputWithContext

func (o HttpRedirectTargetOutput) ToHttpRedirectTargetPtrOutputWithContext(ctx context.Context) HttpRedirectTargetPtrOutput

type HttpRedirectTargetPtrInput

type HttpRedirectTargetPtrInput interface {
	pulumi.Input

	ToHttpRedirectTargetPtrOutput() HttpRedirectTargetPtrOutput
	ToHttpRedirectTargetPtrOutputWithContext(context.Context) HttpRedirectTargetPtrOutput
}

HttpRedirectTargetPtrInput is an input type that accepts HttpRedirectTargetArgs, HttpRedirectTargetPtr and HttpRedirectTargetPtrOutput values. You can construct a concrete instance of `HttpRedirectTargetPtrInput` via:

        HttpRedirectTargetArgs{...}

or:

        nil

type HttpRedirectTargetPtrOutput

type HttpRedirectTargetPtrOutput struct{ *pulumi.OutputState }

func (HttpRedirectTargetPtrOutput) Elem

func (HttpRedirectTargetPtrOutput) ElementType

func (HttpRedirectTargetPtrOutput) Host

(Updatable) The host portion of the redirect.

func (HttpRedirectTargetPtrOutput) Path

(Updatable) The path component of the target URL (e.g., "/path/to/resource" in "https://target.example.com/path/to/resource?redirected"), which can be empty, static, or request-copying, or request-prefixing. Use of \ is not permitted except to escape a following \, {, or }. An empty value is treated the same as static "/". A static value must begin with a leading "/", optionally followed by other path characters. A request-copying value must exactly match "{path}", and will be replaced with the path component of the request URL (including its initial "/"). A request-prefixing value must start with "/" and end with a non-escaped "{path}", which will be replaced with the path component of the request URL (including its initial "/"). Only one such replacement token is allowed.

func (HttpRedirectTargetPtrOutput) Port

(Updatable) Port number of the target destination of the redirect, default to match protocol

func (HttpRedirectTargetPtrOutput) Protocol

(Updatable) The protocol used for the target, http or https.

func (HttpRedirectTargetPtrOutput) Query

(Updatable) The query component of the target URL (e.g., "?redirected" in "https://target.example.com/path/to/resource?redirected"), which can be empty, static, or request-copying. Use of \ is not permitted except to escape a following \, {, or }. An empty value results in a redirection target URL with no query component. A static value must begin with a leading "?", optionally followed by other query characters. A request-copying value must exactly match "{query}", and will be replaced with the query component of the request URL (including a leading "?" if and only if the request URL includes a query component).

** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

func (HttpRedirectTargetPtrOutput) ToHttpRedirectTargetPtrOutput

func (o HttpRedirectTargetPtrOutput) ToHttpRedirectTargetPtrOutput() HttpRedirectTargetPtrOutput

func (HttpRedirectTargetPtrOutput) ToHttpRedirectTargetPtrOutputWithContext

func (o HttpRedirectTargetPtrOutput) ToHttpRedirectTargetPtrOutputWithContext(ctx context.Context) HttpRedirectTargetPtrOutput

type LookupAddressListArgs

type LookupAddressListArgs struct {
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the address list. This number is generated when the address list is added to the compartment.
	AddressListId string `pulumi:"addressListId"`
}

A collection of arguments for invoking getAddressList.

type LookupAddressListOutputArgs

type LookupAddressListOutputArgs struct {
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the address list. This number is generated when the address list is added to the compartment.
	AddressListId pulumi.StringInput `pulumi:"addressListId"`
}

A collection of arguments for invoking getAddressList.

func (LookupAddressListOutputArgs) ElementType

type LookupAddressListResult

type LookupAddressListResult struct {
	// The total number of unique IP addresses in the address list.
	AddressCount  float64 `pulumi:"addressCount"`
	AddressListId string  `pulumi:"addressListId"`
	// The list of IP addresses or CIDR notations.
	Addresses []string `pulumi:"addresses"`
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the address list's compartment.
	CompartmentId string `pulumi:"compartmentId"`
	// Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Operations.CostCenter": "42"}`
	DefinedTags map[string]interface{} `pulumi:"definedTags"`
	// The user-friendly name of the address list.
	DisplayName string `pulumi:"displayName"`
	// Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Department": "Finance"}`
	FreeformTags map[string]interface{} `pulumi:"freeformTags"`
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the address list.
	Id string `pulumi:"id"`
	// The current lifecycle state of the address list.
	State string `pulumi:"state"`
	// The date and time the address list was created, expressed in RFC 3339 timestamp format.
	TimeCreated string `pulumi:"timeCreated"`
}

A collection of values returned by getAddressList.

func LookupAddressList

func LookupAddressList(ctx *pulumi.Context, args *LookupAddressListArgs, opts ...pulumi.InvokeOption) (*LookupAddressListResult, error)

This data source provides details about a specific Address List resource in Oracle Cloud Infrastructure Web Application Acceleration and Security service.

Gets the details of an address list.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-oci/sdk/go/oci/Waas"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Waas.GetAddressList(ctx, &waas.GetAddressListArgs{
			AddressListId: testAddressListOciWaasAddressList.Id,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupAddressListResultOutput

type LookupAddressListResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getAddressList.

func (LookupAddressListResultOutput) AddressCount

The total number of unique IP addresses in the address list.

func (LookupAddressListResultOutput) AddressListId

func (LookupAddressListResultOutput) Addresses

The list of IP addresses or CIDR notations.

func (LookupAddressListResultOutput) CompartmentId

The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the address list's compartment.

func (LookupAddressListResultOutput) DefinedTags

Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Operations.CostCenter": "42"}`

func (LookupAddressListResultOutput) DisplayName

The user-friendly name of the address list.

func (LookupAddressListResultOutput) ElementType

func (LookupAddressListResultOutput) FreeformTags

Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Department": "Finance"}`

func (LookupAddressListResultOutput) Id

The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the address list.

func (LookupAddressListResultOutput) State

The current lifecycle state of the address list.

func (LookupAddressListResultOutput) TimeCreated

The date and time the address list was created, expressed in RFC 3339 timestamp format.

func (LookupAddressListResultOutput) ToLookupAddressListResultOutput

func (o LookupAddressListResultOutput) ToLookupAddressListResultOutput() LookupAddressListResultOutput

func (LookupAddressListResultOutput) ToLookupAddressListResultOutputWithContext

func (o LookupAddressListResultOutput) ToLookupAddressListResultOutputWithContext(ctx context.Context) LookupAddressListResultOutput

type LookupCertificateArgs

type LookupCertificateArgs struct {
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the SSL certificate used in the WAAS policy. This number is generated when the certificate is added to the policy.
	CertificateId string `pulumi:"certificateId"`
}

A collection of arguments for invoking getCertificate.

type LookupCertificateOutputArgs

type LookupCertificateOutputArgs struct {
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the SSL certificate used in the WAAS policy. This number is generated when the certificate is added to the policy.
	CertificateId pulumi.StringInput `pulumi:"certificateId"`
}

A collection of arguments for invoking getCertificate.

func (LookupCertificateOutputArgs) ElementType

type LookupCertificateResult

type LookupCertificateResult struct {
	// The data of the SSL certificate.
	CertificateData string `pulumi:"certificateData"`
	CertificateId   string `pulumi:"certificateId"`
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the SSL certificate's compartment.
	CompartmentId string `pulumi:"compartmentId"`
	// Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Operations.CostCenter": "42"}`
	DefinedTags map[string]interface{} `pulumi:"definedTags"`
	// The user-friendly name of the SSL certificate.
	DisplayName string `pulumi:"displayName"`
	// Additional attributes associated with users or public keys for managing relationships between Certificate Authorities.
	Extensions []GetCertificateExtension `pulumi:"extensions"`
	// Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Department": "Finance"}`
	FreeformTags map[string]interface{} `pulumi:"freeformTags"`
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the SSL certificate.
	Id string `pulumi:"id"`
	// This indicates whether trust verification was disabled during the creation of SSL certificate. If `true` SSL certificate trust verification was disabled and this SSL certificate is most likely self-signed.
	IsTrustVerificationDisabled bool   `pulumi:"isTrustVerificationDisabled"`
	IssuedBy                    string `pulumi:"issuedBy"`
	// The issuer of the certificate.
	IssuerNames    []GetCertificateIssuerName `pulumi:"issuerNames"`
	PrivateKeyData string                     `pulumi:"privateKeyData"`
	// Information about the public key and the algorithm used by the public key.
	PublicKeyInfos []GetCertificatePublicKeyInfo `pulumi:"publicKeyInfos"`
	// A unique, positive integer assigned by the Certificate Authority (CA). The issuer name and serial number identify a unique certificate.
	SerialNumber string `pulumi:"serialNumber"`
	// The identifier for the cryptographic algorithm used by the Certificate Authority (CA) to sign this certificate.
	SignatureAlgorithm string `pulumi:"signatureAlgorithm"`
	// The current lifecycle state of the SSL certificate.
	State string `pulumi:"state"`
	// The entity to be secured by the certificate.
	SubjectNames []GetCertificateSubjectName `pulumi:"subjectNames"`
	// The date and time the certificate was created, expressed in RFC 3339 timestamp format.
	TimeCreated string `pulumi:"timeCreated"`
	// The date and time the certificate will expire, expressed in RFC 3339 timestamp format.
	TimeNotValidAfter string `pulumi:"timeNotValidAfter"`
	// The date and time the certificate will become valid, expressed in RFC 3339 timestamp format.
	TimeNotValidBefore string `pulumi:"timeNotValidBefore"`
	// The version of the encoded certificate.
	Version int `pulumi:"version"`
}

A collection of values returned by getCertificate.

func LookupCertificate

func LookupCertificate(ctx *pulumi.Context, args *LookupCertificateArgs, opts ...pulumi.InvokeOption) (*LookupCertificateResult, error)

This data source provides details about a specific Certificate resource in Oracle Cloud Infrastructure Web Application Acceleration and Security service.

Gets the details of an SSL certificate.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-oci/sdk/go/oci/Waas"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Waas.GetCertificate(ctx, &waas.GetCertificateArgs{
			CertificateId: testCertificateOciWaasCertificate.Id,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupCertificateResultOutput

type LookupCertificateResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getCertificate.

func (LookupCertificateResultOutput) CertificateData

The data of the SSL certificate.

func (LookupCertificateResultOutput) CertificateId

func (LookupCertificateResultOutput) CompartmentId

The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the SSL certificate's compartment.

func (LookupCertificateResultOutput) DefinedTags

Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Operations.CostCenter": "42"}`

func (LookupCertificateResultOutput) DisplayName

The user-friendly name of the SSL certificate.

func (LookupCertificateResultOutput) ElementType

func (LookupCertificateResultOutput) Extensions

Additional attributes associated with users or public keys for managing relationships between Certificate Authorities.

func (LookupCertificateResultOutput) FreeformTags

Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Department": "Finance"}`

func (LookupCertificateResultOutput) Id

The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the SSL certificate.

func (LookupCertificateResultOutput) IsTrustVerificationDisabled

func (o LookupCertificateResultOutput) IsTrustVerificationDisabled() pulumi.BoolOutput

This indicates whether trust verification was disabled during the creation of SSL certificate. If `true` SSL certificate trust verification was disabled and this SSL certificate is most likely self-signed.

func (LookupCertificateResultOutput) IssuedBy

func (LookupCertificateResultOutput) IssuerNames

The issuer of the certificate.

func (LookupCertificateResultOutput) PrivateKeyData

func (LookupCertificateResultOutput) PublicKeyInfos

Information about the public key and the algorithm used by the public key.

func (LookupCertificateResultOutput) SerialNumber

A unique, positive integer assigned by the Certificate Authority (CA). The issuer name and serial number identify a unique certificate.

func (LookupCertificateResultOutput) SignatureAlgorithm

func (o LookupCertificateResultOutput) SignatureAlgorithm() pulumi.StringOutput

The identifier for the cryptographic algorithm used by the Certificate Authority (CA) to sign this certificate.

func (LookupCertificateResultOutput) State

The current lifecycle state of the SSL certificate.

func (LookupCertificateResultOutput) SubjectNames

The entity to be secured by the certificate.

func (LookupCertificateResultOutput) TimeCreated

The date and time the certificate was created, expressed in RFC 3339 timestamp format.

func (LookupCertificateResultOutput) TimeNotValidAfter

func (o LookupCertificateResultOutput) TimeNotValidAfter() pulumi.StringOutput

The date and time the certificate will expire, expressed in RFC 3339 timestamp format.

func (LookupCertificateResultOutput) TimeNotValidBefore

func (o LookupCertificateResultOutput) TimeNotValidBefore() pulumi.StringOutput

The date and time the certificate will become valid, expressed in RFC 3339 timestamp format.

func (LookupCertificateResultOutput) ToLookupCertificateResultOutput

func (o LookupCertificateResultOutput) ToLookupCertificateResultOutput() LookupCertificateResultOutput

func (LookupCertificateResultOutput) ToLookupCertificateResultOutputWithContext

func (o LookupCertificateResultOutput) ToLookupCertificateResultOutputWithContext(ctx context.Context) LookupCertificateResultOutput

func (LookupCertificateResultOutput) Version

The version of the encoded certificate.

type LookupCustomProtectionRuleArgs

type LookupCustomProtectionRuleArgs struct {
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the custom protection rule. This number is generated when the custom protection rule is added to the compartment.
	CustomProtectionRuleId string `pulumi:"customProtectionRuleId"`
}

A collection of arguments for invoking getCustomProtectionRule.

type LookupCustomProtectionRuleOutputArgs

type LookupCustomProtectionRuleOutputArgs struct {
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the custom protection rule. This number is generated when the custom protection rule is added to the compartment.
	CustomProtectionRuleId pulumi.StringInput `pulumi:"customProtectionRuleId"`
}

A collection of arguments for invoking getCustomProtectionRule.

func (LookupCustomProtectionRuleOutputArgs) ElementType

type LookupCustomProtectionRuleResult

type LookupCustomProtectionRuleResult struct {
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the custom protection rule's compartment.
	CompartmentId          string `pulumi:"compartmentId"`
	CustomProtectionRuleId string `pulumi:"customProtectionRuleId"`
	// Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Operations.CostCenter": "42"}`
	DefinedTags map[string]interface{} `pulumi:"definedTags"`
	// The description of the custom protection rule.
	Description string `pulumi:"description"`
	// The user-friendly name of the custom protection rule.
	DisplayName string `pulumi:"displayName"`
	// Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Department": "Finance"}`
	FreeformTags map[string]interface{} `pulumi:"freeformTags"`
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the custom protection rule.
	Id string `pulumi:"id"`
	// The auto-generated ID for the custom protection rule. These IDs are referenced in logs.
	ModSecurityRuleIds []string `pulumi:"modSecurityRuleIds"`
	// The current lifecycle state of the custom protection rule.
	State string `pulumi:"state"`
	// The template text of the custom protection rule. All custom protection rules are expressed in ModSecurity Rule Language.
	Template string `pulumi:"template"`
	// The date and time the protection rule was created, expressed in RFC 3339 timestamp format.
	TimeCreated string `pulumi:"timeCreated"`
}

A collection of values returned by getCustomProtectionRule.

func LookupCustomProtectionRule

func LookupCustomProtectionRule(ctx *pulumi.Context, args *LookupCustomProtectionRuleArgs, opts ...pulumi.InvokeOption) (*LookupCustomProtectionRuleResult, error)

This data source provides details about a specific Custom Protection Rule resource in Oracle Cloud Infrastructure Web Application Acceleration and Security service.

Gets the details of a custom protection rule.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-oci/sdk/go/oci/Waas"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Waas.GetCustomProtectionRule(ctx, &waas.GetCustomProtectionRuleArgs{
			CustomProtectionRuleId: testCustomProtectionRuleOciWaasCustomProtectionRule.Id,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupCustomProtectionRuleResultOutput

type LookupCustomProtectionRuleResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getCustomProtectionRule.

func (LookupCustomProtectionRuleResultOutput) CompartmentId

The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the custom protection rule's compartment.

func (LookupCustomProtectionRuleResultOutput) CustomProtectionRuleId

func (o LookupCustomProtectionRuleResultOutput) CustomProtectionRuleId() pulumi.StringOutput

func (LookupCustomProtectionRuleResultOutput) DefinedTags

Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Operations.CostCenter": "42"}`

func (LookupCustomProtectionRuleResultOutput) Description

The description of the custom protection rule.

func (LookupCustomProtectionRuleResultOutput) DisplayName

The user-friendly name of the custom protection rule.

func (LookupCustomProtectionRuleResultOutput) ElementType

func (LookupCustomProtectionRuleResultOutput) FreeformTags

Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Department": "Finance"}`

func (LookupCustomProtectionRuleResultOutput) Id

The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the custom protection rule.

func (LookupCustomProtectionRuleResultOutput) ModSecurityRuleIds

The auto-generated ID for the custom protection rule. These IDs are referenced in logs.

func (LookupCustomProtectionRuleResultOutput) State

The current lifecycle state of the custom protection rule.

func (LookupCustomProtectionRuleResultOutput) Template

The template text of the custom protection rule. All custom protection rules are expressed in ModSecurity Rule Language.

func (LookupCustomProtectionRuleResultOutput) TimeCreated

The date and time the protection rule was created, expressed in RFC 3339 timestamp format.

func (LookupCustomProtectionRuleResultOutput) ToLookupCustomProtectionRuleResultOutput

func (o LookupCustomProtectionRuleResultOutput) ToLookupCustomProtectionRuleResultOutput() LookupCustomProtectionRuleResultOutput

func (LookupCustomProtectionRuleResultOutput) ToLookupCustomProtectionRuleResultOutputWithContext

func (o LookupCustomProtectionRuleResultOutput) ToLookupCustomProtectionRuleResultOutputWithContext(ctx context.Context) LookupCustomProtectionRuleResultOutput

type LookupHttpRedirectArgs

type LookupHttpRedirectArgs struct {
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the HTTP Redirect.
	HttpRedirectId string `pulumi:"httpRedirectId"`
}

A collection of arguments for invoking getHttpRedirect.

type LookupHttpRedirectOutputArgs

type LookupHttpRedirectOutputArgs struct {
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the HTTP Redirect.
	HttpRedirectId pulumi.StringInput `pulumi:"httpRedirectId"`
}

A collection of arguments for invoking getHttpRedirect.

func (LookupHttpRedirectOutputArgs) ElementType

type LookupHttpRedirectResult

type LookupHttpRedirectResult struct {
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the HTTP Redirect's compartment.
	CompartmentId string `pulumi:"compartmentId"`
	// Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Operations.CostCenter": "42"}`
	DefinedTags map[string]interface{} `pulumi:"definedTags"`
	// The user-friendly name of the HTTP Redirect. The name can be changed and does not need to be unique.
	DisplayName string `pulumi:"displayName"`
	// The domain from which traffic will be redirected.
	Domain string `pulumi:"domain"`
	// Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Department": "Finance"}`
	FreeformTags   map[string]interface{} `pulumi:"freeformTags"`
	HttpRedirectId string                 `pulumi:"httpRedirectId"`
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the HTTP Redirect.
	Id string `pulumi:"id"`
	// The response code returned for the redirect to the client. For more information, see [RFC 7231](https://tools.ietf.org/html/rfc7231#section-6.4).
	ResponseCode int `pulumi:"responseCode"`
	// The current lifecycle state of the HTTP Redirect.
	State string `pulumi:"state"`
	// The redirect target object including all the redirect data.
	Targets []GetHttpRedirectTarget `pulumi:"targets"`
	// The date and time the policy was created, expressed in RFC 3339 timestamp format.
	TimeCreated string `pulumi:"timeCreated"`
}

A collection of values returned by getHttpRedirect.

func LookupHttpRedirect

func LookupHttpRedirect(ctx *pulumi.Context, args *LookupHttpRedirectArgs, opts ...pulumi.InvokeOption) (*LookupHttpRedirectResult, error)

This data source provides details about a specific Http Redirect resource in Oracle Cloud Infrastructure Web Application Acceleration and Security service.

Gets the details of a HTTP Redirect.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-oci/sdk/go/oci/Waas"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Waas.GetHttpRedirect(ctx, &waas.GetHttpRedirectArgs{
			HttpRedirectId: testHttpRedirectOciWaasHttpRedirect.Id,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupHttpRedirectResultOutput

type LookupHttpRedirectResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getHttpRedirect.

func (LookupHttpRedirectResultOutput) CompartmentId

The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the HTTP Redirect's compartment.

func (LookupHttpRedirectResultOutput) DefinedTags

Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Operations.CostCenter": "42"}`

func (LookupHttpRedirectResultOutput) DisplayName

The user-friendly name of the HTTP Redirect. The name can be changed and does not need to be unique.

func (LookupHttpRedirectResultOutput) Domain

The domain from which traffic will be redirected.

func (LookupHttpRedirectResultOutput) ElementType

func (LookupHttpRedirectResultOutput) FreeformTags

Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Department": "Finance"}`

func (LookupHttpRedirectResultOutput) HttpRedirectId

func (LookupHttpRedirectResultOutput) Id

The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the HTTP Redirect.

func (LookupHttpRedirectResultOutput) ResponseCode

The response code returned for the redirect to the client. For more information, see [RFC 7231](https://tools.ietf.org/html/rfc7231#section-6.4).

func (LookupHttpRedirectResultOutput) State

The current lifecycle state of the HTTP Redirect.

func (LookupHttpRedirectResultOutput) Targets

The redirect target object including all the redirect data.

func (LookupHttpRedirectResultOutput) TimeCreated

The date and time the policy was created, expressed in RFC 3339 timestamp format.

func (LookupHttpRedirectResultOutput) ToLookupHttpRedirectResultOutput

func (o LookupHttpRedirectResultOutput) ToLookupHttpRedirectResultOutput() LookupHttpRedirectResultOutput

func (LookupHttpRedirectResultOutput) ToLookupHttpRedirectResultOutputWithContext

func (o LookupHttpRedirectResultOutput) ToLookupHttpRedirectResultOutputWithContext(ctx context.Context) LookupHttpRedirectResultOutput

type LookupProtectionRuleArgs

type LookupProtectionRuleArgs struct {
	// The protection rule key.
	ProtectionRuleKey string `pulumi:"protectionRuleKey"`
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the WAAS policy.
	WaasPolicyId string `pulumi:"waasPolicyId"`
}

A collection of arguments for invoking getProtectionRule.

type LookupProtectionRuleOutputArgs

type LookupProtectionRuleOutputArgs struct {
	// The protection rule key.
	ProtectionRuleKey pulumi.StringInput `pulumi:"protectionRuleKey"`
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the WAAS policy.
	WaasPolicyId pulumi.StringInput `pulumi:"waasPolicyId"`
}

A collection of arguments for invoking getProtectionRule.

func (LookupProtectionRuleOutputArgs) ElementType

type LookupProtectionRuleResult

type LookupProtectionRuleResult struct {
	// The action to take when the traffic is detected as malicious. If unspecified, defaults to `OFF`.
	Action string `pulumi:"action"`
	// The description of the protection rule.
	Description string `pulumi:"description"`
	// An array of The target property of a request that would allow it to bypass the protection rule. For example, when `target` is `REQUEST_COOKIE_NAMES`, the list may include names of cookies to exclude from the protection rule. When the target is `ARGS`, the list may include strings of URL query parameters and values from form-urlencoded XML, JSON, AMP, or POST payloads to exclude from the protection rule. `Exclusions` properties must not contain whitespace, comma or |. **Note:** If protection rules have been enabled that utilize the `maxArgumentCount` or `maxTotalNameLengthOfArguments` properties, and the `target` property has been set to `ARGS`, it is important that the `exclusions` properties be defined to honor those protection rule settings in a consistent manner.
	Exclusions []GetProtectionRuleExclusion `pulumi:"exclusions"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// The unique key of the protection rule.
	Key string `pulumi:"key"`
	// The list of labels for the protection rule.
	Labels []string `pulumi:"labels"`
	// The list of the ModSecurity rule IDs that apply to this protection rule. For more information about ModSecurity's open source WAF rules, see [Mod Security's documentation](https://www.modsecurity.org/CRS/Documentation/index.html).
	ModSecurityRuleIds []string `pulumi:"modSecurityRuleIds"`
	// The name of the protection rule.
	Name              string `pulumi:"name"`
	ProtectionRuleKey string `pulumi:"protectionRuleKey"`
	WaasPolicyId      string `pulumi:"waasPolicyId"`
}

A collection of values returned by getProtectionRule.

func LookupProtectionRule

func LookupProtectionRule(ctx *pulumi.Context, args *LookupProtectionRuleArgs, opts ...pulumi.InvokeOption) (*LookupProtectionRuleResult, error)

This data source provides details about a specific Protection Rule resource in Oracle Cloud Infrastructure Web Application Acceleration and Security service.

Gets the details of a protection rule in the Web Application Firewall configuration for a WAAS policy.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-oci/sdk/go/oci/Waas"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Waas.GetProtectionRule(ctx, &waas.GetProtectionRuleArgs{
			ProtectionRuleKey: protectionRuleProtectionRuleKey,
			WaasPolicyId:      testWaasPolicy.Id,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupProtectionRuleResultOutput

type LookupProtectionRuleResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getProtectionRule.

func (LookupProtectionRuleResultOutput) Action

The action to take when the traffic is detected as malicious. If unspecified, defaults to `OFF`.

func (LookupProtectionRuleResultOutput) Description

The description of the protection rule.

func (LookupProtectionRuleResultOutput) ElementType

func (LookupProtectionRuleResultOutput) Exclusions

An array of The target property of a request that would allow it to bypass the protection rule. For example, when `target` is `REQUEST_COOKIE_NAMES`, the list may include names of cookies to exclude from the protection rule. When the target is `ARGS`, the list may include strings of URL query parameters and values from form-urlencoded XML, JSON, AMP, or POST payloads to exclude from the protection rule. `Exclusions` properties must not contain whitespace, comma or |. **Note:** If protection rules have been enabled that utilize the `maxArgumentCount` or `maxTotalNameLengthOfArguments` properties, and the `target` property has been set to `ARGS`, it is important that the `exclusions` properties be defined to honor those protection rule settings in a consistent manner.

func (LookupProtectionRuleResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupProtectionRuleResultOutput) Key

The unique key of the protection rule.

func (LookupProtectionRuleResultOutput) Labels

The list of labels for the protection rule.

func (LookupProtectionRuleResultOutput) ModSecurityRuleIds

The list of the ModSecurity rule IDs that apply to this protection rule. For more information about ModSecurity's open source WAF rules, see [Mod Security's documentation](https://www.modsecurity.org/CRS/Documentation/index.html).

func (LookupProtectionRuleResultOutput) Name

The name of the protection rule.

func (LookupProtectionRuleResultOutput) ProtectionRuleKey

func (LookupProtectionRuleResultOutput) ToLookupProtectionRuleResultOutput

func (o LookupProtectionRuleResultOutput) ToLookupProtectionRuleResultOutput() LookupProtectionRuleResultOutput

func (LookupProtectionRuleResultOutput) ToLookupProtectionRuleResultOutputWithContext

func (o LookupProtectionRuleResultOutput) ToLookupProtectionRuleResultOutputWithContext(ctx context.Context) LookupProtectionRuleResultOutput

func (LookupProtectionRuleResultOutput) WaasPolicyId

type Policy

type Policy struct {
	pulumi.CustomResourceState

	// (Updatable) An array of additional domains for the specified web application.
	AdditionalDomains pulumi.StringArrayOutput `pulumi:"additionalDomains"`
	// The CNAME record to add to your DNS configuration to route traffic for the domain, and all additional domains, through the WAF.
	Cname pulumi.StringOutput `pulumi:"cname"`
	// (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment in which to create the WAAS policy.
	CompartmentId pulumi.StringOutput `pulumi:"compartmentId"`
	// (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Operations.CostCenter": "42"}`
	DefinedTags pulumi.MapOutput `pulumi:"definedTags"`
	// (Updatable) A user-friendly name for the WAAS policy. The name can be changed and does not need to be unique.
	DisplayName pulumi.StringOutput `pulumi:"displayName"`
	// (Updatable) The domain for which the cookie is set, defaults to WAAS policy domain.
	Domain pulumi.StringOutput `pulumi:"domain"`
	// (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Department": "Finance"}`
	FreeformTags pulumi.MapOutput `pulumi:"freeformTags"`
	// (Updatable) The map of origin groups and their keys used to associate origins to the `wafConfig`. Origin groups allow you to apply weights to groups of origins for load balancing purposes. Origins with higher weights will receive larger proportions of client requests. To add additional origins to your WAAS policy, update the `origins` field of a `UpdateWaasPolicy` request.
	OriginGroups PolicyOriginGroupArrayOutput `pulumi:"originGroups"`
	// (Updatable) A map of host to origin for the web application. The key should be a customer friendly name for the host, ex. primary, secondary, etc.
	Origins PolicyOriginArrayOutput `pulumi:"origins"`
	// (Updatable) The configuration details for the WAAS policy.
	PolicyConfig PolicyPolicyConfigOutput `pulumi:"policyConfig"`
	// The current lifecycle state of the WAAS policy.
	State pulumi.StringOutput `pulumi:"state"`
	// The date and time the policy was created, expressed in RFC 3339 timestamp format.
	TimeCreated pulumi.StringOutput `pulumi:"timeCreated"`
	// (Updatable) The Web Application Firewall configuration for the WAAS policy creation.
	WafConfig PolicyWafConfigOutput `pulumi:"wafConfig"`
}

This resource provides the Waas Policy resource in Oracle Cloud Infrastructure Web Application Acceleration and Security service.

Creates a new Web Application Acceleration and Security (WAAS) policy in the specified compartment. A WAAS policy must be established before creating Web Application Firewall (WAF) rules. To use WAF rules, your web application's origin servers must defined in the `WaasPolicy` schema.

A domain name must be specified when creating a WAAS policy. The domain name should be different from the origins specified in your `WaasPolicy`. Once domain name is entered and stored, it is unchangeable.

Use the record data returned in the `cname` field of the `WaasPolicy` object to create a CNAME record in your DNS configuration that will direct your domain's traffic through the WAF.

For the purposes of access control, you must provide the OCID of the compartment where you want the service to reside. For information about access control and compartments, see [Overview of the IAM Service](https://docs.cloud.oracle.com/iaas/Content/Identity/Concepts/overview.htm).

You must specify a display name and domain for the WAAS policy. The display name does not have to be unique and can be changed. The domain name should be different from every origin specified in `WaasPolicy`.

All Oracle Cloud Infrastructure resources, including WAAS policies, receive a unique, Oracle-assigned ID called an Oracle Cloud Identifier (OCID). When a resource is created, you can find its OCID in the response. You can also retrieve a resource's OCID by using a list API operation for that resource type, or by viewing the resource in the Console. Fore more information, see [Resource Identifiers](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm).

**Note:** After sending the POST request, the new object's state will temporarily be `CREATING`. Ensure that the resource's state has changed to `ACTIVE` before use.

## Import

WaasPolicies can be imported using the `id`, e.g.

```sh $ pulumi import oci:Waas/policy:Policy test_waas_policy "id" ```

func GetPolicy

func GetPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *PolicyState, opts ...pulumi.ResourceOption) (*Policy, error)

GetPolicy gets an existing Policy 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 NewPolicy

func NewPolicy(ctx *pulumi.Context,
	name string, args *PolicyArgs, opts ...pulumi.ResourceOption) (*Policy, error)

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

func (*Policy) ElementType

func (*Policy) ElementType() reflect.Type

func (*Policy) ToPolicyOutput

func (i *Policy) ToPolicyOutput() PolicyOutput

func (*Policy) ToPolicyOutputWithContext

func (i *Policy) ToPolicyOutputWithContext(ctx context.Context) PolicyOutput

type PolicyArgs

type PolicyArgs struct {
	// (Updatable) An array of additional domains for the specified web application.
	AdditionalDomains pulumi.StringArrayInput
	// (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment in which to create the WAAS policy.
	CompartmentId pulumi.StringInput
	// (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Operations.CostCenter": "42"}`
	DefinedTags pulumi.MapInput
	// (Updatable) A user-friendly name for the WAAS policy. The name can be changed and does not need to be unique.
	DisplayName pulumi.StringPtrInput
	// (Updatable) The domain for which the cookie is set, defaults to WAAS policy domain.
	Domain pulumi.StringInput
	// (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Department": "Finance"}`
	FreeformTags pulumi.MapInput
	// (Updatable) The map of origin groups and their keys used to associate origins to the `wafConfig`. Origin groups allow you to apply weights to groups of origins for load balancing purposes. Origins with higher weights will receive larger proportions of client requests. To add additional origins to your WAAS policy, update the `origins` field of a `UpdateWaasPolicy` request.
	OriginGroups PolicyOriginGroupArrayInput
	// (Updatable) A map of host to origin for the web application. The key should be a customer friendly name for the host, ex. primary, secondary, etc.
	Origins PolicyOriginArrayInput
	// (Updatable) The configuration details for the WAAS policy.
	PolicyConfig PolicyPolicyConfigPtrInput
	// (Updatable) The Web Application Firewall configuration for the WAAS policy creation.
	WafConfig PolicyWafConfigPtrInput
}

The set of arguments for constructing a Policy resource.

func (PolicyArgs) ElementType

func (PolicyArgs) ElementType() reflect.Type

type PolicyArray

type PolicyArray []PolicyInput

func (PolicyArray) ElementType

func (PolicyArray) ElementType() reflect.Type

func (PolicyArray) ToPolicyArrayOutput

func (i PolicyArray) ToPolicyArrayOutput() PolicyArrayOutput

func (PolicyArray) ToPolicyArrayOutputWithContext

func (i PolicyArray) ToPolicyArrayOutputWithContext(ctx context.Context) PolicyArrayOutput

type PolicyArrayInput

type PolicyArrayInput interface {
	pulumi.Input

	ToPolicyArrayOutput() PolicyArrayOutput
	ToPolicyArrayOutputWithContext(context.Context) PolicyArrayOutput
}

PolicyArrayInput is an input type that accepts PolicyArray and PolicyArrayOutput values. You can construct a concrete instance of `PolicyArrayInput` via:

PolicyArray{ PolicyArgs{...} }

type PolicyArrayOutput

type PolicyArrayOutput struct{ *pulumi.OutputState }

func (PolicyArrayOutput) ElementType

func (PolicyArrayOutput) ElementType() reflect.Type

func (PolicyArrayOutput) Index

func (PolicyArrayOutput) ToPolicyArrayOutput

func (o PolicyArrayOutput) ToPolicyArrayOutput() PolicyArrayOutput

func (PolicyArrayOutput) ToPolicyArrayOutputWithContext

func (o PolicyArrayOutput) ToPolicyArrayOutputWithContext(ctx context.Context) PolicyArrayOutput

type PolicyInput

type PolicyInput interface {
	pulumi.Input

	ToPolicyOutput() PolicyOutput
	ToPolicyOutputWithContext(ctx context.Context) PolicyOutput
}

type PolicyMap

type PolicyMap map[string]PolicyInput

func (PolicyMap) ElementType

func (PolicyMap) ElementType() reflect.Type

func (PolicyMap) ToPolicyMapOutput

func (i PolicyMap) ToPolicyMapOutput() PolicyMapOutput

func (PolicyMap) ToPolicyMapOutputWithContext

func (i PolicyMap) ToPolicyMapOutputWithContext(ctx context.Context) PolicyMapOutput

type PolicyMapInput

type PolicyMapInput interface {
	pulumi.Input

	ToPolicyMapOutput() PolicyMapOutput
	ToPolicyMapOutputWithContext(context.Context) PolicyMapOutput
}

PolicyMapInput is an input type that accepts PolicyMap and PolicyMapOutput values. You can construct a concrete instance of `PolicyMapInput` via:

PolicyMap{ "key": PolicyArgs{...} }

type PolicyMapOutput

type PolicyMapOutput struct{ *pulumi.OutputState }

func (PolicyMapOutput) ElementType

func (PolicyMapOutput) ElementType() reflect.Type

func (PolicyMapOutput) MapIndex

func (PolicyMapOutput) ToPolicyMapOutput

func (o PolicyMapOutput) ToPolicyMapOutput() PolicyMapOutput

func (PolicyMapOutput) ToPolicyMapOutputWithContext

func (o PolicyMapOutput) ToPolicyMapOutputWithContext(ctx context.Context) PolicyMapOutput

type PolicyOrigin

type PolicyOrigin struct {
	// (Updatable) A list of HTTP headers to forward to your origin.
	CustomHeaders []PolicyOriginCustomHeader `pulumi:"customHeaders"`
	// (Updatable) The HTTP port on the origin that the web application listens on. If unspecified, defaults to `80`. If `0` is specified - the origin is not used for HTTP traffic.
	HttpPort *int `pulumi:"httpPort"`
	// (Updatable) The HTTPS port on the origin that the web application listens on. If unspecified, defaults to `443`. If `0` is specified - the origin is not used for HTTPS traffic.
	HttpsPort *int   `pulumi:"httpsPort"`
	Label     string `pulumi:"label"`
	// (Updatable) The URI of the origin. Does not support paths. Port numbers should be specified in the `httpPort` and `httpsPort` fields.
	Uri string `pulumi:"uri"`
}

type PolicyOriginArgs

type PolicyOriginArgs struct {
	// (Updatable) A list of HTTP headers to forward to your origin.
	CustomHeaders PolicyOriginCustomHeaderArrayInput `pulumi:"customHeaders"`
	// (Updatable) The HTTP port on the origin that the web application listens on. If unspecified, defaults to `80`. If `0` is specified - the origin is not used for HTTP traffic.
	HttpPort pulumi.IntPtrInput `pulumi:"httpPort"`
	// (Updatable) The HTTPS port on the origin that the web application listens on. If unspecified, defaults to `443`. If `0` is specified - the origin is not used for HTTPS traffic.
	HttpsPort pulumi.IntPtrInput `pulumi:"httpsPort"`
	Label     pulumi.StringInput `pulumi:"label"`
	// (Updatable) The URI of the origin. Does not support paths. Port numbers should be specified in the `httpPort` and `httpsPort` fields.
	Uri pulumi.StringInput `pulumi:"uri"`
}

func (PolicyOriginArgs) ElementType

func (PolicyOriginArgs) ElementType() reflect.Type

func (PolicyOriginArgs) ToPolicyOriginOutput

func (i PolicyOriginArgs) ToPolicyOriginOutput() PolicyOriginOutput

func (PolicyOriginArgs) ToPolicyOriginOutputWithContext

func (i PolicyOriginArgs) ToPolicyOriginOutputWithContext(ctx context.Context) PolicyOriginOutput

type PolicyOriginArray

type PolicyOriginArray []PolicyOriginInput

func (PolicyOriginArray) ElementType

func (PolicyOriginArray) ElementType() reflect.Type

func (PolicyOriginArray) ToPolicyOriginArrayOutput

func (i PolicyOriginArray) ToPolicyOriginArrayOutput() PolicyOriginArrayOutput

func (PolicyOriginArray) ToPolicyOriginArrayOutputWithContext

func (i PolicyOriginArray) ToPolicyOriginArrayOutputWithContext(ctx context.Context) PolicyOriginArrayOutput

type PolicyOriginArrayInput

type PolicyOriginArrayInput interface {
	pulumi.Input

	ToPolicyOriginArrayOutput() PolicyOriginArrayOutput
	ToPolicyOriginArrayOutputWithContext(context.Context) PolicyOriginArrayOutput
}

PolicyOriginArrayInput is an input type that accepts PolicyOriginArray and PolicyOriginArrayOutput values. You can construct a concrete instance of `PolicyOriginArrayInput` via:

PolicyOriginArray{ PolicyOriginArgs{...} }

type PolicyOriginArrayOutput

type PolicyOriginArrayOutput struct{ *pulumi.OutputState }

func (PolicyOriginArrayOutput) ElementType

func (PolicyOriginArrayOutput) ElementType() reflect.Type

func (PolicyOriginArrayOutput) Index

func (PolicyOriginArrayOutput) ToPolicyOriginArrayOutput

func (o PolicyOriginArrayOutput) ToPolicyOriginArrayOutput() PolicyOriginArrayOutput

func (PolicyOriginArrayOutput) ToPolicyOriginArrayOutputWithContext

func (o PolicyOriginArrayOutput) ToPolicyOriginArrayOutputWithContext(ctx context.Context) PolicyOriginArrayOutput

type PolicyOriginCustomHeader

type PolicyOriginCustomHeader struct {
	// (Updatable) The unique name of the whitelist.
	//
	// ** IMPORTANT **
	// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
	Name string `pulumi:"name"`
	// (Updatable) The value of the header.
	Value string `pulumi:"value"`
}

type PolicyOriginCustomHeaderArgs

type PolicyOriginCustomHeaderArgs struct {
	// (Updatable) The unique name of the whitelist.
	//
	// ** IMPORTANT **
	// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
	Name pulumi.StringInput `pulumi:"name"`
	// (Updatable) The value of the header.
	Value pulumi.StringInput `pulumi:"value"`
}

func (PolicyOriginCustomHeaderArgs) ElementType

func (PolicyOriginCustomHeaderArgs) ToPolicyOriginCustomHeaderOutput

func (i PolicyOriginCustomHeaderArgs) ToPolicyOriginCustomHeaderOutput() PolicyOriginCustomHeaderOutput

func (PolicyOriginCustomHeaderArgs) ToPolicyOriginCustomHeaderOutputWithContext

func (i PolicyOriginCustomHeaderArgs) ToPolicyOriginCustomHeaderOutputWithContext(ctx context.Context) PolicyOriginCustomHeaderOutput

type PolicyOriginCustomHeaderArray

type PolicyOriginCustomHeaderArray []PolicyOriginCustomHeaderInput

func (PolicyOriginCustomHeaderArray) ElementType

func (PolicyOriginCustomHeaderArray) ToPolicyOriginCustomHeaderArrayOutput

func (i PolicyOriginCustomHeaderArray) ToPolicyOriginCustomHeaderArrayOutput() PolicyOriginCustomHeaderArrayOutput

func (PolicyOriginCustomHeaderArray) ToPolicyOriginCustomHeaderArrayOutputWithContext

func (i PolicyOriginCustomHeaderArray) ToPolicyOriginCustomHeaderArrayOutputWithContext(ctx context.Context) PolicyOriginCustomHeaderArrayOutput

type PolicyOriginCustomHeaderArrayInput

type PolicyOriginCustomHeaderArrayInput interface {
	pulumi.Input

	ToPolicyOriginCustomHeaderArrayOutput() PolicyOriginCustomHeaderArrayOutput
	ToPolicyOriginCustomHeaderArrayOutputWithContext(context.Context) PolicyOriginCustomHeaderArrayOutput
}

PolicyOriginCustomHeaderArrayInput is an input type that accepts PolicyOriginCustomHeaderArray and PolicyOriginCustomHeaderArrayOutput values. You can construct a concrete instance of `PolicyOriginCustomHeaderArrayInput` via:

PolicyOriginCustomHeaderArray{ PolicyOriginCustomHeaderArgs{...} }

type PolicyOriginCustomHeaderArrayOutput

type PolicyOriginCustomHeaderArrayOutput struct{ *pulumi.OutputState }

func (PolicyOriginCustomHeaderArrayOutput) ElementType

func (PolicyOriginCustomHeaderArrayOutput) Index

func (PolicyOriginCustomHeaderArrayOutput) ToPolicyOriginCustomHeaderArrayOutput

func (o PolicyOriginCustomHeaderArrayOutput) ToPolicyOriginCustomHeaderArrayOutput() PolicyOriginCustomHeaderArrayOutput

func (PolicyOriginCustomHeaderArrayOutput) ToPolicyOriginCustomHeaderArrayOutputWithContext

func (o PolicyOriginCustomHeaderArrayOutput) ToPolicyOriginCustomHeaderArrayOutputWithContext(ctx context.Context) PolicyOriginCustomHeaderArrayOutput

type PolicyOriginCustomHeaderInput

type PolicyOriginCustomHeaderInput interface {
	pulumi.Input

	ToPolicyOriginCustomHeaderOutput() PolicyOriginCustomHeaderOutput
	ToPolicyOriginCustomHeaderOutputWithContext(context.Context) PolicyOriginCustomHeaderOutput
}

PolicyOriginCustomHeaderInput is an input type that accepts PolicyOriginCustomHeaderArgs and PolicyOriginCustomHeaderOutput values. You can construct a concrete instance of `PolicyOriginCustomHeaderInput` via:

PolicyOriginCustomHeaderArgs{...}

type PolicyOriginCustomHeaderOutput

type PolicyOriginCustomHeaderOutput struct{ *pulumi.OutputState }

func (PolicyOriginCustomHeaderOutput) ElementType

func (PolicyOriginCustomHeaderOutput) Name

(Updatable) The unique name of the whitelist.

** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

func (PolicyOriginCustomHeaderOutput) ToPolicyOriginCustomHeaderOutput

func (o PolicyOriginCustomHeaderOutput) ToPolicyOriginCustomHeaderOutput() PolicyOriginCustomHeaderOutput

func (PolicyOriginCustomHeaderOutput) ToPolicyOriginCustomHeaderOutputWithContext

func (o PolicyOriginCustomHeaderOutput) ToPolicyOriginCustomHeaderOutputWithContext(ctx context.Context) PolicyOriginCustomHeaderOutput

func (PolicyOriginCustomHeaderOutput) Value

(Updatable) The value of the header.

type PolicyOriginGroup

type PolicyOriginGroup struct {
	Label        string                         `pulumi:"label"`
	OriginGroups []PolicyOriginGroupOriginGroup `pulumi:"originGroups"`
}

type PolicyOriginGroupArgs

type PolicyOriginGroupArgs struct {
	Label        pulumi.StringInput                     `pulumi:"label"`
	OriginGroups PolicyOriginGroupOriginGroupArrayInput `pulumi:"originGroups"`
}

func (PolicyOriginGroupArgs) ElementType

func (PolicyOriginGroupArgs) ElementType() reflect.Type

func (PolicyOriginGroupArgs) ToPolicyOriginGroupOutput

func (i PolicyOriginGroupArgs) ToPolicyOriginGroupOutput() PolicyOriginGroupOutput

func (PolicyOriginGroupArgs) ToPolicyOriginGroupOutputWithContext

func (i PolicyOriginGroupArgs) ToPolicyOriginGroupOutputWithContext(ctx context.Context) PolicyOriginGroupOutput

type PolicyOriginGroupArray

type PolicyOriginGroupArray []PolicyOriginGroupInput

func (PolicyOriginGroupArray) ElementType

func (PolicyOriginGroupArray) ElementType() reflect.Type

func (PolicyOriginGroupArray) ToPolicyOriginGroupArrayOutput

func (i PolicyOriginGroupArray) ToPolicyOriginGroupArrayOutput() PolicyOriginGroupArrayOutput

func (PolicyOriginGroupArray) ToPolicyOriginGroupArrayOutputWithContext

func (i PolicyOriginGroupArray) ToPolicyOriginGroupArrayOutputWithContext(ctx context.Context) PolicyOriginGroupArrayOutput

type PolicyOriginGroupArrayInput

type PolicyOriginGroupArrayInput interface {
	pulumi.Input

	ToPolicyOriginGroupArrayOutput() PolicyOriginGroupArrayOutput
	ToPolicyOriginGroupArrayOutputWithContext(context.Context) PolicyOriginGroupArrayOutput
}

PolicyOriginGroupArrayInput is an input type that accepts PolicyOriginGroupArray and PolicyOriginGroupArrayOutput values. You can construct a concrete instance of `PolicyOriginGroupArrayInput` via:

PolicyOriginGroupArray{ PolicyOriginGroupArgs{...} }

type PolicyOriginGroupArrayOutput

type PolicyOriginGroupArrayOutput struct{ *pulumi.OutputState }

func (PolicyOriginGroupArrayOutput) ElementType

func (PolicyOriginGroupArrayOutput) Index

func (PolicyOriginGroupArrayOutput) ToPolicyOriginGroupArrayOutput

func (o PolicyOriginGroupArrayOutput) ToPolicyOriginGroupArrayOutput() PolicyOriginGroupArrayOutput

func (PolicyOriginGroupArrayOutput) ToPolicyOriginGroupArrayOutputWithContext

func (o PolicyOriginGroupArrayOutput) ToPolicyOriginGroupArrayOutputWithContext(ctx context.Context) PolicyOriginGroupArrayOutput

type PolicyOriginGroupInput

type PolicyOriginGroupInput interface {
	pulumi.Input

	ToPolicyOriginGroupOutput() PolicyOriginGroupOutput
	ToPolicyOriginGroupOutputWithContext(context.Context) PolicyOriginGroupOutput
}

PolicyOriginGroupInput is an input type that accepts PolicyOriginGroupArgs and PolicyOriginGroupOutput values. You can construct a concrete instance of `PolicyOriginGroupInput` via:

PolicyOriginGroupArgs{...}

type PolicyOriginGroupOriginGroup

type PolicyOriginGroupOriginGroup struct {
	// (Updatable) The key in the map of origins referencing the origin used for the Web Application Firewall. The origin must already be included in `Origins`. Required when creating the `WafConfig` resource, but is not required upon updating the configuration.
	Origin string `pulumi:"origin"`
	Weight *int   `pulumi:"weight"`
}

type PolicyOriginGroupOriginGroupArgs

type PolicyOriginGroupOriginGroupArgs struct {
	// (Updatable) The key in the map of origins referencing the origin used for the Web Application Firewall. The origin must already be included in `Origins`. Required when creating the `WafConfig` resource, but is not required upon updating the configuration.
	Origin pulumi.StringInput `pulumi:"origin"`
	Weight pulumi.IntPtrInput `pulumi:"weight"`
}

func (PolicyOriginGroupOriginGroupArgs) ElementType

func (PolicyOriginGroupOriginGroupArgs) ToPolicyOriginGroupOriginGroupOutput

func (i PolicyOriginGroupOriginGroupArgs) ToPolicyOriginGroupOriginGroupOutput() PolicyOriginGroupOriginGroupOutput

func (PolicyOriginGroupOriginGroupArgs) ToPolicyOriginGroupOriginGroupOutputWithContext

func (i PolicyOriginGroupOriginGroupArgs) ToPolicyOriginGroupOriginGroupOutputWithContext(ctx context.Context) PolicyOriginGroupOriginGroupOutput

type PolicyOriginGroupOriginGroupArray

type PolicyOriginGroupOriginGroupArray []PolicyOriginGroupOriginGroupInput

func (PolicyOriginGroupOriginGroupArray) ElementType

func (PolicyOriginGroupOriginGroupArray) ToPolicyOriginGroupOriginGroupArrayOutput

func (i PolicyOriginGroupOriginGroupArray) ToPolicyOriginGroupOriginGroupArrayOutput() PolicyOriginGroupOriginGroupArrayOutput

func (PolicyOriginGroupOriginGroupArray) ToPolicyOriginGroupOriginGroupArrayOutputWithContext

func (i PolicyOriginGroupOriginGroupArray) ToPolicyOriginGroupOriginGroupArrayOutputWithContext(ctx context.Context) PolicyOriginGroupOriginGroupArrayOutput

type PolicyOriginGroupOriginGroupArrayInput

type PolicyOriginGroupOriginGroupArrayInput interface {
	pulumi.Input

	ToPolicyOriginGroupOriginGroupArrayOutput() PolicyOriginGroupOriginGroupArrayOutput
	ToPolicyOriginGroupOriginGroupArrayOutputWithContext(context.Context) PolicyOriginGroupOriginGroupArrayOutput
}

PolicyOriginGroupOriginGroupArrayInput is an input type that accepts PolicyOriginGroupOriginGroupArray and PolicyOriginGroupOriginGroupArrayOutput values. You can construct a concrete instance of `PolicyOriginGroupOriginGroupArrayInput` via:

PolicyOriginGroupOriginGroupArray{ PolicyOriginGroupOriginGroupArgs{...} }

type PolicyOriginGroupOriginGroupArrayOutput

type PolicyOriginGroupOriginGroupArrayOutput struct{ *pulumi.OutputState }

func (PolicyOriginGroupOriginGroupArrayOutput) ElementType

func (PolicyOriginGroupOriginGroupArrayOutput) Index

func (PolicyOriginGroupOriginGroupArrayOutput) ToPolicyOriginGroupOriginGroupArrayOutput

func (o PolicyOriginGroupOriginGroupArrayOutput) ToPolicyOriginGroupOriginGroupArrayOutput() PolicyOriginGroupOriginGroupArrayOutput

func (PolicyOriginGroupOriginGroupArrayOutput) ToPolicyOriginGroupOriginGroupArrayOutputWithContext

func (o PolicyOriginGroupOriginGroupArrayOutput) ToPolicyOriginGroupOriginGroupArrayOutputWithContext(ctx context.Context) PolicyOriginGroupOriginGroupArrayOutput

type PolicyOriginGroupOriginGroupInput

type PolicyOriginGroupOriginGroupInput interface {
	pulumi.Input

	ToPolicyOriginGroupOriginGroupOutput() PolicyOriginGroupOriginGroupOutput
	ToPolicyOriginGroupOriginGroupOutputWithContext(context.Context) PolicyOriginGroupOriginGroupOutput
}

PolicyOriginGroupOriginGroupInput is an input type that accepts PolicyOriginGroupOriginGroupArgs and PolicyOriginGroupOriginGroupOutput values. You can construct a concrete instance of `PolicyOriginGroupOriginGroupInput` via:

PolicyOriginGroupOriginGroupArgs{...}

type PolicyOriginGroupOriginGroupOutput

type PolicyOriginGroupOriginGroupOutput struct{ *pulumi.OutputState }

func (PolicyOriginGroupOriginGroupOutput) ElementType

func (PolicyOriginGroupOriginGroupOutput) Origin

(Updatable) The key in the map of origins referencing the origin used for the Web Application Firewall. The origin must already be included in `Origins`. Required when creating the `WafConfig` resource, but is not required upon updating the configuration.

func (PolicyOriginGroupOriginGroupOutput) ToPolicyOriginGroupOriginGroupOutput

func (o PolicyOriginGroupOriginGroupOutput) ToPolicyOriginGroupOriginGroupOutput() PolicyOriginGroupOriginGroupOutput

func (PolicyOriginGroupOriginGroupOutput) ToPolicyOriginGroupOriginGroupOutputWithContext

func (o PolicyOriginGroupOriginGroupOutput) ToPolicyOriginGroupOriginGroupOutputWithContext(ctx context.Context) PolicyOriginGroupOriginGroupOutput

func (PolicyOriginGroupOriginGroupOutput) Weight

type PolicyOriginGroupOutput

type PolicyOriginGroupOutput struct{ *pulumi.OutputState }

func (PolicyOriginGroupOutput) ElementType

func (PolicyOriginGroupOutput) ElementType() reflect.Type

func (PolicyOriginGroupOutput) Label

func (PolicyOriginGroupOutput) OriginGroups

func (PolicyOriginGroupOutput) ToPolicyOriginGroupOutput

func (o PolicyOriginGroupOutput) ToPolicyOriginGroupOutput() PolicyOriginGroupOutput

func (PolicyOriginGroupOutput) ToPolicyOriginGroupOutputWithContext

func (o PolicyOriginGroupOutput) ToPolicyOriginGroupOutputWithContext(ctx context.Context) PolicyOriginGroupOutput

type PolicyOriginInput

type PolicyOriginInput interface {
	pulumi.Input

	ToPolicyOriginOutput() PolicyOriginOutput
	ToPolicyOriginOutputWithContext(context.Context) PolicyOriginOutput
}

PolicyOriginInput is an input type that accepts PolicyOriginArgs and PolicyOriginOutput values. You can construct a concrete instance of `PolicyOriginInput` via:

PolicyOriginArgs{...}

type PolicyOriginOutput

type PolicyOriginOutput struct{ *pulumi.OutputState }

func (PolicyOriginOutput) CustomHeaders

(Updatable) A list of HTTP headers to forward to your origin.

func (PolicyOriginOutput) ElementType

func (PolicyOriginOutput) ElementType() reflect.Type

func (PolicyOriginOutput) HttpPort

func (o PolicyOriginOutput) HttpPort() pulumi.IntPtrOutput

(Updatable) The HTTP port on the origin that the web application listens on. If unspecified, defaults to `80`. If `0` is specified - the origin is not used for HTTP traffic.

func (PolicyOriginOutput) HttpsPort

func (o PolicyOriginOutput) HttpsPort() pulumi.IntPtrOutput

(Updatable) The HTTPS port on the origin that the web application listens on. If unspecified, defaults to `443`. If `0` is specified - the origin is not used for HTTPS traffic.

func (PolicyOriginOutput) Label

func (PolicyOriginOutput) ToPolicyOriginOutput

func (o PolicyOriginOutput) ToPolicyOriginOutput() PolicyOriginOutput

func (PolicyOriginOutput) ToPolicyOriginOutputWithContext

func (o PolicyOriginOutput) ToPolicyOriginOutputWithContext(ctx context.Context) PolicyOriginOutput

func (PolicyOriginOutput) Uri

(Updatable) The URI of the origin. Does not support paths. Port numbers should be specified in the `httpPort` and `httpsPort` fields.

type PolicyOutput

type PolicyOutput struct{ *pulumi.OutputState }

func (PolicyOutput) AdditionalDomains added in v0.4.0

func (o PolicyOutput) AdditionalDomains() pulumi.StringArrayOutput

(Updatable) An array of additional domains for the specified web application.

func (PolicyOutput) Cname added in v0.4.0

func (o PolicyOutput) Cname() pulumi.StringOutput

The CNAME record to add to your DNS configuration to route traffic for the domain, and all additional domains, through the WAF.

func (PolicyOutput) CompartmentId added in v0.4.0

func (o PolicyOutput) CompartmentId() pulumi.StringOutput

(Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment in which to create the WAAS policy.

func (PolicyOutput) DefinedTags added in v0.4.0

func (o PolicyOutput) DefinedTags() pulumi.MapOutput

(Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Operations.CostCenter": "42"}`

func (PolicyOutput) DisplayName added in v0.4.0

func (o PolicyOutput) DisplayName() pulumi.StringOutput

(Updatable) A user-friendly name for the WAAS policy. The name can be changed and does not need to be unique.

func (PolicyOutput) Domain added in v0.4.0

func (o PolicyOutput) Domain() pulumi.StringOutput

(Updatable) The domain for which the cookie is set, defaults to WAAS policy domain.

func (PolicyOutput) ElementType

func (PolicyOutput) ElementType() reflect.Type

func (PolicyOutput) FreeformTags added in v0.4.0

func (o PolicyOutput) FreeformTags() pulumi.MapOutput

(Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Department": "Finance"}`

func (PolicyOutput) OriginGroups added in v0.4.0

func (o PolicyOutput) OriginGroups() PolicyOriginGroupArrayOutput

(Updatable) The map of origin groups and their keys used to associate origins to the `wafConfig`. Origin groups allow you to apply weights to groups of origins for load balancing purposes. Origins with higher weights will receive larger proportions of client requests. To add additional origins to your WAAS policy, update the `origins` field of a `UpdateWaasPolicy` request.

func (PolicyOutput) Origins added in v0.4.0

(Updatable) A map of host to origin for the web application. The key should be a customer friendly name for the host, ex. primary, secondary, etc.

func (PolicyOutput) PolicyConfig added in v0.4.0

func (o PolicyOutput) PolicyConfig() PolicyPolicyConfigOutput

(Updatable) The configuration details for the WAAS policy.

func (PolicyOutput) State added in v0.4.0

func (o PolicyOutput) State() pulumi.StringOutput

The current lifecycle state of the WAAS policy.

func (PolicyOutput) TimeCreated added in v0.4.0

func (o PolicyOutput) TimeCreated() pulumi.StringOutput

The date and time the policy was created, expressed in RFC 3339 timestamp format.

func (PolicyOutput) ToPolicyOutput

func (o PolicyOutput) ToPolicyOutput() PolicyOutput

func (PolicyOutput) ToPolicyOutputWithContext

func (o PolicyOutput) ToPolicyOutputWithContext(ctx context.Context) PolicyOutput

func (PolicyOutput) WafConfig added in v0.4.0

func (o PolicyOutput) WafConfig() PolicyWafConfigOutput

(Updatable) The Web Application Firewall configuration for the WAAS policy creation.

type PolicyPolicyConfig

type PolicyPolicyConfig struct {
	// (Updatable) The OCID of the SSL certificate to use if HTTPS is supported.
	CertificateId *string `pulumi:"certificateId"`
	// (Updatable) The set cipher group for the configured TLS protocol. This sets the configuration for the TLS connections between clients and edge nodes only.
	// * **DEFAULT:** Cipher group supports TLS 1.0, TLS 1.1, TLS 1.2, TLS 1.3 protocols. It has the following ciphers enabled: `ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:!DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA`
	CipherGroup *string `pulumi:"cipherGroup"`
	// (Updatable) Specifies an HTTP header name which is treated as the connecting client's IP address. Applicable only if `isBehindCdn` is enabled.
	//
	// The edge node reads this header and its value and sets the client IP address as specified. It does not create the header if the header is not present in the request. If the header is not present, the connecting IP address will be used as the client's true IP address. It uses the last IP address in the header's value as the true IP address.
	//
	// Example: `X-Client-Ip: 11.1.1.1, 13.3.3.3`
	//
	// In the case of multiple headers with the same name, only the first header will be used. It is assumed that CDN sets the correct client IP address to prevent spoofing.
	// * **X_FORWARDED_FOR:** Corresponds to `X-Forwarded-For` header name.
	// * **X_CLIENT_IP:** Corresponds to `X-Client-Ip` header name.
	// * **X_REAL_IP:** Corresponds to `X-Real-Ip` header name.
	// * **CLIENT_IP:** Corresponds to `Client-Ip` header name.
	// * **TRUE_CLIENT_IP:** Corresponds to `True-Client-Ip` header name.
	ClientAddressHeader *string `pulumi:"clientAddressHeader"`
	// (Updatable) Health checks monitor the status of your origin servers and only route traffic to the origins that pass the health check. If the health check fails, origin is automatically removed from the load balancing. There is roughly one health check per EDGE POP per period. Any checks that pass will be reported as "healthy".
	HealthChecks *PolicyPolicyConfigHealthChecks `pulumi:"healthChecks"`
	// (Updatable) Enabling `isBehindCdn` allows for the collection of IP addresses from client requests if the WAF is connected to a CDN.
	IsBehindCdn *bool `pulumi:"isBehindCdn"`
	// (Updatable) Enable or disable automatic content caching based on the response `cache-control` header. This feature enables the origin to act as a proxy cache. Caching is usually defined using `cache-control` header. For example `cache-control: max-age=120` means that the returned resource is valid for 120 seconds. Caching rules will overwrite this setting.
	IsCacheControlRespected *bool `pulumi:"isCacheControlRespected"`
	// (Updatable) Enable or disable HTTPS support. If true, a `certificateId` is required. If unspecified, defaults to `false`.
	IsHttpsEnabled *bool `pulumi:"isHttpsEnabled"`
	// (Updatable) Force HTTP to HTTPS redirection. If unspecified, defaults to `false`.
	IsHttpsForced *bool `pulumi:"isHttpsForced"`
	// (Updatable) Enable or disable GZIP compression of origin responses. If enabled, the header `Accept-Encoding: gzip` is sent to origin, otherwise, the empty `Accept-Encoding:` header is used.
	IsOriginCompressionEnabled *bool `pulumi:"isOriginCompressionEnabled"`
	// (Updatable) Enable or disable buffering of responses from the origin. Buffering improves overall stability in case of network issues, but slightly increases Time To First Byte.
	IsResponseBufferingEnabled *bool `pulumi:"isResponseBufferingEnabled"`
	// (Updatable) SNI stands for Server Name Indication and is an extension of the TLS protocol. It indicates which hostname is being contacted by the browser at the beginning of the 'handshake'-process. This allows a server to connect multiple SSL Certificates to one IP address and port.
	IsSniEnabled *bool `pulumi:"isSniEnabled"`
	// (Updatable) An object that represents a load balancing method and its properties.
	LoadBalancingMethod *PolicyPolicyConfigLoadBalancingMethod `pulumi:"loadBalancingMethod"`
	// (Updatable) A list of allowed TLS protocols. Only applicable when HTTPS support is enabled. The TLS protocol is negotiated while the request is connecting and the most recent protocol supported by both the edge node and client browser will be selected. If no such version exists, the connection will be aborted.
	// * **TLS_V1:** corresponds to TLS 1.0 specification.
	// * **TLS_V1_1:** corresponds to TLS 1.1 specification.
	// * **TLS_V1_2:** corresponds to TLS 1.2 specification.
	// * **TLS_V1_3:** corresponds to TLS 1.3 specification.
	//
	// Enabled TLS protocols must go in a row. For example if `TLS_v1_1` and `TLS_V1_3` are enabled, `TLS_V1_2` must be enabled too.
	TlsProtocols []string `pulumi:"tlsProtocols"`
	// (Updatable) ModSecurity is not capable to inspect WebSockets. Therefore paths specified here have WAF disabled if Connection request header from the client has the value Upgrade (case insensitive matching) and Upgrade request header has the value websocket (case insensitive matching). Paths matches if the concatenation of request URL path and query starts with the contents of the one of `websocketPathPrefixes` array value. In All other cases challenges, like JSC, HIC and etc., remain active.
	WebsocketPathPrefixes []string `pulumi:"websocketPathPrefixes"`
}

type PolicyPolicyConfigArgs

type PolicyPolicyConfigArgs struct {
	// (Updatable) The OCID of the SSL certificate to use if HTTPS is supported.
	CertificateId pulumi.StringPtrInput `pulumi:"certificateId"`
	// (Updatable) The set cipher group for the configured TLS protocol. This sets the configuration for the TLS connections between clients and edge nodes only.
	// * **DEFAULT:** Cipher group supports TLS 1.0, TLS 1.1, TLS 1.2, TLS 1.3 protocols. It has the following ciphers enabled: `ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:!DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA`
	CipherGroup pulumi.StringPtrInput `pulumi:"cipherGroup"`
	// (Updatable) Specifies an HTTP header name which is treated as the connecting client's IP address. Applicable only if `isBehindCdn` is enabled.
	//
	// The edge node reads this header and its value and sets the client IP address as specified. It does not create the header if the header is not present in the request. If the header is not present, the connecting IP address will be used as the client's true IP address. It uses the last IP address in the header's value as the true IP address.
	//
	// Example: `X-Client-Ip: 11.1.1.1, 13.3.3.3`
	//
	// In the case of multiple headers with the same name, only the first header will be used. It is assumed that CDN sets the correct client IP address to prevent spoofing.
	// * **X_FORWARDED_FOR:** Corresponds to `X-Forwarded-For` header name.
	// * **X_CLIENT_IP:** Corresponds to `X-Client-Ip` header name.
	// * **X_REAL_IP:** Corresponds to `X-Real-Ip` header name.
	// * **CLIENT_IP:** Corresponds to `Client-Ip` header name.
	// * **TRUE_CLIENT_IP:** Corresponds to `True-Client-Ip` header name.
	ClientAddressHeader pulumi.StringPtrInput `pulumi:"clientAddressHeader"`
	// (Updatable) Health checks monitor the status of your origin servers and only route traffic to the origins that pass the health check. If the health check fails, origin is automatically removed from the load balancing. There is roughly one health check per EDGE POP per period. Any checks that pass will be reported as "healthy".
	HealthChecks PolicyPolicyConfigHealthChecksPtrInput `pulumi:"healthChecks"`
	// (Updatable) Enabling `isBehindCdn` allows for the collection of IP addresses from client requests if the WAF is connected to a CDN.
	IsBehindCdn pulumi.BoolPtrInput `pulumi:"isBehindCdn"`
	// (Updatable) Enable or disable automatic content caching based on the response `cache-control` header. This feature enables the origin to act as a proxy cache. Caching is usually defined using `cache-control` header. For example `cache-control: max-age=120` means that the returned resource is valid for 120 seconds. Caching rules will overwrite this setting.
	IsCacheControlRespected pulumi.BoolPtrInput `pulumi:"isCacheControlRespected"`
	// (Updatable) Enable or disable HTTPS support. If true, a `certificateId` is required. If unspecified, defaults to `false`.
	IsHttpsEnabled pulumi.BoolPtrInput `pulumi:"isHttpsEnabled"`
	// (Updatable) Force HTTP to HTTPS redirection. If unspecified, defaults to `false`.
	IsHttpsForced pulumi.BoolPtrInput `pulumi:"isHttpsForced"`
	// (Updatable) Enable or disable GZIP compression of origin responses. If enabled, the header `Accept-Encoding: gzip` is sent to origin, otherwise, the empty `Accept-Encoding:` header is used.
	IsOriginCompressionEnabled pulumi.BoolPtrInput `pulumi:"isOriginCompressionEnabled"`
	// (Updatable) Enable or disable buffering of responses from the origin. Buffering improves overall stability in case of network issues, but slightly increases Time To First Byte.
	IsResponseBufferingEnabled pulumi.BoolPtrInput `pulumi:"isResponseBufferingEnabled"`
	// (Updatable) SNI stands for Server Name Indication and is an extension of the TLS protocol. It indicates which hostname is being contacted by the browser at the beginning of the 'handshake'-process. This allows a server to connect multiple SSL Certificates to one IP address and port.
	IsSniEnabled pulumi.BoolPtrInput `pulumi:"isSniEnabled"`
	// (Updatable) An object that represents a load balancing method and its properties.
	LoadBalancingMethod PolicyPolicyConfigLoadBalancingMethodPtrInput `pulumi:"loadBalancingMethod"`
	// (Updatable) A list of allowed TLS protocols. Only applicable when HTTPS support is enabled. The TLS protocol is negotiated while the request is connecting and the most recent protocol supported by both the edge node and client browser will be selected. If no such version exists, the connection will be aborted.
	// * **TLS_V1:** corresponds to TLS 1.0 specification.
	// * **TLS_V1_1:** corresponds to TLS 1.1 specification.
	// * **TLS_V1_2:** corresponds to TLS 1.2 specification.
	// * **TLS_V1_3:** corresponds to TLS 1.3 specification.
	//
	// Enabled TLS protocols must go in a row. For example if `TLS_v1_1` and `TLS_V1_3` are enabled, `TLS_V1_2` must be enabled too.
	TlsProtocols pulumi.StringArrayInput `pulumi:"tlsProtocols"`
	// (Updatable) ModSecurity is not capable to inspect WebSockets. Therefore paths specified here have WAF disabled if Connection request header from the client has the value Upgrade (case insensitive matching) and Upgrade request header has the value websocket (case insensitive matching). Paths matches if the concatenation of request URL path and query starts with the contents of the one of `websocketPathPrefixes` array value. In All other cases challenges, like JSC, HIC and etc., remain active.
	WebsocketPathPrefixes pulumi.StringArrayInput `pulumi:"websocketPathPrefixes"`
}

func (PolicyPolicyConfigArgs) ElementType

func (PolicyPolicyConfigArgs) ElementType() reflect.Type

func (PolicyPolicyConfigArgs) ToPolicyPolicyConfigOutput

func (i PolicyPolicyConfigArgs) ToPolicyPolicyConfigOutput() PolicyPolicyConfigOutput

func (PolicyPolicyConfigArgs) ToPolicyPolicyConfigOutputWithContext

func (i PolicyPolicyConfigArgs) ToPolicyPolicyConfigOutputWithContext(ctx context.Context) PolicyPolicyConfigOutput

func (PolicyPolicyConfigArgs) ToPolicyPolicyConfigPtrOutput

func (i PolicyPolicyConfigArgs) ToPolicyPolicyConfigPtrOutput() PolicyPolicyConfigPtrOutput

func (PolicyPolicyConfigArgs) ToPolicyPolicyConfigPtrOutputWithContext

func (i PolicyPolicyConfigArgs) ToPolicyPolicyConfigPtrOutputWithContext(ctx context.Context) PolicyPolicyConfigPtrOutput

type PolicyPolicyConfigHealthChecks

type PolicyPolicyConfigHealthChecks struct {
	// (Updatable) The HTTP response codes that signify a healthy state.
	// * **2XX:** Success response code group.
	// * **3XX:** Redirection response code group.
	// * **4XX:** Client errors response code group.
	// * **5XX:** Server errors response code group.
	ExpectedResponseCodeGroups []string `pulumi:"expectedResponseCodeGroups"`
	// (Updatable) Health check will search for the given text in a case-sensitive manner within the response body and will fail if the text is not found.
	ExpectedResponseText *string `pulumi:"expectedResponseText"`
	// (Updatable) HTTP header fields to include in health check requests, expressed as `"name": "value"` properties. Because HTTP header field names are case-insensitive, any use of names that are case-insensitive equal to other names will be rejected. If Host is not specified, requests will include a Host header field with value matching the policy's protected domain. If User-Agent is not specified, requests will include a User-Agent header field with value "waf health checks".
	//
	// **Note:** The only currently-supported header fields are Host and User-Agent.
	Headers map[string]interface{} `pulumi:"headers"`
	// (Updatable) Number of successful health checks after which the server is marked up.
	HealthyThreshold *int `pulumi:"healthyThreshold"`
	// (Updatable) Time between health checks of an individual origin server, in seconds.
	IntervalInSeconds *int `pulumi:"intervalInSeconds"`
	// (Updatable) Enables or disables the JavaScript challenge Web Application Firewall feature.
	IsEnabled *bool `pulumi:"isEnabled"`
	// (Updatable) Enables or disables additional check for predefined text in addition to response code.
	IsResponseTextCheckEnabled *bool `pulumi:"isResponseTextCheckEnabled"`
	// (Updatable) Load balancing methods are algorithms used to efficiently distribute traffic among origin servers.
	// * **[IP_HASH](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/IPHashLoadBalancingMethod):** All the incoming requests from the same client IP address should go to the same content origination server. IP_HASH load balancing method uses origin weights when choosing which origin should the hash be assigned to initially.
	// * **[ROUND_ROBIN](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/RoundRobinLoadBalancingMethod):** Forwards requests sequentially to the available origin servers. The first request - to the first origin server, the second request - to the next origin server, and so on. After it sends a request to the last origin server, it starts again with the first origin server. When using weights on origins, Weighted Round Robin assigns more requests to origins with a greater weight. Over a period of time, origins will receive a number of requests in proportion to their weight.
	// * **[STICKY_COOKIE](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/StickyCookieLoadBalancingMethod):** Adds a session cookie to the first response from the origin server and identifies the server that sent the response. The client's next request contains the cookie value, and nginx routes the request to the origin server that responded to the first request. STICKY_COOKIE load balancing method falls back to Round Robin for the first request.
	Method *string `pulumi:"method"`
	// (Updatable) Path to visit on your origins when performing the health check.
	Path *string `pulumi:"path"`
	// (Updatable) Response timeout represents wait time until request is considered failed, in seconds.
	TimeoutInSeconds *int `pulumi:"timeoutInSeconds"`
	// (Updatable) Number of failed health checks after which the server is marked down.
	UnhealthyThreshold *int `pulumi:"unhealthyThreshold"`
}

type PolicyPolicyConfigHealthChecksArgs

type PolicyPolicyConfigHealthChecksArgs struct {
	// (Updatable) The HTTP response codes that signify a healthy state.
	// * **2XX:** Success response code group.
	// * **3XX:** Redirection response code group.
	// * **4XX:** Client errors response code group.
	// * **5XX:** Server errors response code group.
	ExpectedResponseCodeGroups pulumi.StringArrayInput `pulumi:"expectedResponseCodeGroups"`
	// (Updatable) Health check will search for the given text in a case-sensitive manner within the response body and will fail if the text is not found.
	ExpectedResponseText pulumi.StringPtrInput `pulumi:"expectedResponseText"`
	// (Updatable) HTTP header fields to include in health check requests, expressed as `"name": "value"` properties. Because HTTP header field names are case-insensitive, any use of names that are case-insensitive equal to other names will be rejected. If Host is not specified, requests will include a Host header field with value matching the policy's protected domain. If User-Agent is not specified, requests will include a User-Agent header field with value "waf health checks".
	//
	// **Note:** The only currently-supported header fields are Host and User-Agent.
	Headers pulumi.MapInput `pulumi:"headers"`
	// (Updatable) Number of successful health checks after which the server is marked up.
	HealthyThreshold pulumi.IntPtrInput `pulumi:"healthyThreshold"`
	// (Updatable) Time between health checks of an individual origin server, in seconds.
	IntervalInSeconds pulumi.IntPtrInput `pulumi:"intervalInSeconds"`
	// (Updatable) Enables or disables the JavaScript challenge Web Application Firewall feature.
	IsEnabled pulumi.BoolPtrInput `pulumi:"isEnabled"`
	// (Updatable) Enables or disables additional check for predefined text in addition to response code.
	IsResponseTextCheckEnabled pulumi.BoolPtrInput `pulumi:"isResponseTextCheckEnabled"`
	// (Updatable) Load balancing methods are algorithms used to efficiently distribute traffic among origin servers.
	// * **[IP_HASH](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/IPHashLoadBalancingMethod):** All the incoming requests from the same client IP address should go to the same content origination server. IP_HASH load balancing method uses origin weights when choosing which origin should the hash be assigned to initially.
	// * **[ROUND_ROBIN](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/RoundRobinLoadBalancingMethod):** Forwards requests sequentially to the available origin servers. The first request - to the first origin server, the second request - to the next origin server, and so on. After it sends a request to the last origin server, it starts again with the first origin server. When using weights on origins, Weighted Round Robin assigns more requests to origins with a greater weight. Over a period of time, origins will receive a number of requests in proportion to their weight.
	// * **[STICKY_COOKIE](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/StickyCookieLoadBalancingMethod):** Adds a session cookie to the first response from the origin server and identifies the server that sent the response. The client's next request contains the cookie value, and nginx routes the request to the origin server that responded to the first request. STICKY_COOKIE load balancing method falls back to Round Robin for the first request.
	Method pulumi.StringPtrInput `pulumi:"method"`
	// (Updatable) Path to visit on your origins when performing the health check.
	Path pulumi.StringPtrInput `pulumi:"path"`
	// (Updatable) Response timeout represents wait time until request is considered failed, in seconds.
	TimeoutInSeconds pulumi.IntPtrInput `pulumi:"timeoutInSeconds"`
	// (Updatable) Number of failed health checks after which the server is marked down.
	UnhealthyThreshold pulumi.IntPtrInput `pulumi:"unhealthyThreshold"`
}

func (PolicyPolicyConfigHealthChecksArgs) ElementType

func (PolicyPolicyConfigHealthChecksArgs) ToPolicyPolicyConfigHealthChecksOutput

func (i PolicyPolicyConfigHealthChecksArgs) ToPolicyPolicyConfigHealthChecksOutput() PolicyPolicyConfigHealthChecksOutput

func (PolicyPolicyConfigHealthChecksArgs) ToPolicyPolicyConfigHealthChecksOutputWithContext

func (i PolicyPolicyConfigHealthChecksArgs) ToPolicyPolicyConfigHealthChecksOutputWithContext(ctx context.Context) PolicyPolicyConfigHealthChecksOutput

func (PolicyPolicyConfigHealthChecksArgs) ToPolicyPolicyConfigHealthChecksPtrOutput

func (i PolicyPolicyConfigHealthChecksArgs) ToPolicyPolicyConfigHealthChecksPtrOutput() PolicyPolicyConfigHealthChecksPtrOutput

func (PolicyPolicyConfigHealthChecksArgs) ToPolicyPolicyConfigHealthChecksPtrOutputWithContext

func (i PolicyPolicyConfigHealthChecksArgs) ToPolicyPolicyConfigHealthChecksPtrOutputWithContext(ctx context.Context) PolicyPolicyConfigHealthChecksPtrOutput

type PolicyPolicyConfigHealthChecksInput

type PolicyPolicyConfigHealthChecksInput interface {
	pulumi.Input

	ToPolicyPolicyConfigHealthChecksOutput() PolicyPolicyConfigHealthChecksOutput
	ToPolicyPolicyConfigHealthChecksOutputWithContext(context.Context) PolicyPolicyConfigHealthChecksOutput
}

PolicyPolicyConfigHealthChecksInput is an input type that accepts PolicyPolicyConfigHealthChecksArgs and PolicyPolicyConfigHealthChecksOutput values. You can construct a concrete instance of `PolicyPolicyConfigHealthChecksInput` via:

PolicyPolicyConfigHealthChecksArgs{...}

type PolicyPolicyConfigHealthChecksOutput

type PolicyPolicyConfigHealthChecksOutput struct{ *pulumi.OutputState }

func (PolicyPolicyConfigHealthChecksOutput) ElementType

func (PolicyPolicyConfigHealthChecksOutput) ExpectedResponseCodeGroups

func (o PolicyPolicyConfigHealthChecksOutput) ExpectedResponseCodeGroups() pulumi.StringArrayOutput

(Updatable) The HTTP response codes that signify a healthy state. * **2XX:** Success response code group. * **3XX:** Redirection response code group. * **4XX:** Client errors response code group. * **5XX:** Server errors response code group.

func (PolicyPolicyConfigHealthChecksOutput) ExpectedResponseText

(Updatable) Health check will search for the given text in a case-sensitive manner within the response body and will fail if the text is not found.

func (PolicyPolicyConfigHealthChecksOutput) Headers

(Updatable) HTTP header fields to include in health check requests, expressed as `"name": "value"` properties. Because HTTP header field names are case-insensitive, any use of names that are case-insensitive equal to other names will be rejected. If Host is not specified, requests will include a Host header field with value matching the policy's protected domain. If User-Agent is not specified, requests will include a User-Agent header field with value "waf health checks".

**Note:** The only currently-supported header fields are Host and User-Agent.

func (PolicyPolicyConfigHealthChecksOutput) HealthyThreshold

(Updatable) Number of successful health checks after which the server is marked up.

func (PolicyPolicyConfigHealthChecksOutput) IntervalInSeconds

(Updatable) Time between health checks of an individual origin server, in seconds.

func (PolicyPolicyConfigHealthChecksOutput) IsEnabled

(Updatable) Enables or disables the JavaScript challenge Web Application Firewall feature.

func (PolicyPolicyConfigHealthChecksOutput) IsResponseTextCheckEnabled

func (o PolicyPolicyConfigHealthChecksOutput) IsResponseTextCheckEnabled() pulumi.BoolPtrOutput

(Updatable) Enables or disables additional check for predefined text in addition to response code.

func (PolicyPolicyConfigHealthChecksOutput) Method

(Updatable) Load balancing methods are algorithms used to efficiently distribute traffic among origin servers. * **[IP_HASH](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/IPHashLoadBalancingMethod):** All the incoming requests from the same client IP address should go to the same content origination server. IP_HASH load balancing method uses origin weights when choosing which origin should the hash be assigned to initially. * **[ROUND_ROBIN](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/RoundRobinLoadBalancingMethod):** Forwards requests sequentially to the available origin servers. The first request - to the first origin server, the second request - to the next origin server, and so on. After it sends a request to the last origin server, it starts again with the first origin server. When using weights on origins, Weighted Round Robin assigns more requests to origins with a greater weight. Over a period of time, origins will receive a number of requests in proportion to their weight. * **[STICKY_COOKIE](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/StickyCookieLoadBalancingMethod):** Adds a session cookie to the first response from the origin server and identifies the server that sent the response. The client's next request contains the cookie value, and nginx routes the request to the origin server that responded to the first request. STICKY_COOKIE load balancing method falls back to Round Robin for the first request.

func (PolicyPolicyConfigHealthChecksOutput) Path

(Updatable) Path to visit on your origins when performing the health check.

func (PolicyPolicyConfigHealthChecksOutput) TimeoutInSeconds

(Updatable) Response timeout represents wait time until request is considered failed, in seconds.

func (PolicyPolicyConfigHealthChecksOutput) ToPolicyPolicyConfigHealthChecksOutput

func (o PolicyPolicyConfigHealthChecksOutput) ToPolicyPolicyConfigHealthChecksOutput() PolicyPolicyConfigHealthChecksOutput

func (PolicyPolicyConfigHealthChecksOutput) ToPolicyPolicyConfigHealthChecksOutputWithContext

func (o PolicyPolicyConfigHealthChecksOutput) ToPolicyPolicyConfigHealthChecksOutputWithContext(ctx context.Context) PolicyPolicyConfigHealthChecksOutput

func (PolicyPolicyConfigHealthChecksOutput) ToPolicyPolicyConfigHealthChecksPtrOutput

func (o PolicyPolicyConfigHealthChecksOutput) ToPolicyPolicyConfigHealthChecksPtrOutput() PolicyPolicyConfigHealthChecksPtrOutput

func (PolicyPolicyConfigHealthChecksOutput) ToPolicyPolicyConfigHealthChecksPtrOutputWithContext

func (o PolicyPolicyConfigHealthChecksOutput) ToPolicyPolicyConfigHealthChecksPtrOutputWithContext(ctx context.Context) PolicyPolicyConfigHealthChecksPtrOutput

func (PolicyPolicyConfigHealthChecksOutput) UnhealthyThreshold

(Updatable) Number of failed health checks after which the server is marked down.

type PolicyPolicyConfigHealthChecksPtrInput

type PolicyPolicyConfigHealthChecksPtrInput interface {
	pulumi.Input

	ToPolicyPolicyConfigHealthChecksPtrOutput() PolicyPolicyConfigHealthChecksPtrOutput
	ToPolicyPolicyConfigHealthChecksPtrOutputWithContext(context.Context) PolicyPolicyConfigHealthChecksPtrOutput
}

PolicyPolicyConfigHealthChecksPtrInput is an input type that accepts PolicyPolicyConfigHealthChecksArgs, PolicyPolicyConfigHealthChecksPtr and PolicyPolicyConfigHealthChecksPtrOutput values. You can construct a concrete instance of `PolicyPolicyConfigHealthChecksPtrInput` via:

        PolicyPolicyConfigHealthChecksArgs{...}

or:

        nil

type PolicyPolicyConfigHealthChecksPtrOutput

type PolicyPolicyConfigHealthChecksPtrOutput struct{ *pulumi.OutputState }

func (PolicyPolicyConfigHealthChecksPtrOutput) Elem

func (PolicyPolicyConfigHealthChecksPtrOutput) ElementType

func (PolicyPolicyConfigHealthChecksPtrOutput) ExpectedResponseCodeGroups

func (o PolicyPolicyConfigHealthChecksPtrOutput) ExpectedResponseCodeGroups() pulumi.StringArrayOutput

(Updatable) The HTTP response codes that signify a healthy state. * **2XX:** Success response code group. * **3XX:** Redirection response code group. * **4XX:** Client errors response code group. * **5XX:** Server errors response code group.

func (PolicyPolicyConfigHealthChecksPtrOutput) ExpectedResponseText

(Updatable) Health check will search for the given text in a case-sensitive manner within the response body and will fail if the text is not found.

func (PolicyPolicyConfigHealthChecksPtrOutput) Headers

(Updatable) HTTP header fields to include in health check requests, expressed as `"name": "value"` properties. Because HTTP header field names are case-insensitive, any use of names that are case-insensitive equal to other names will be rejected. If Host is not specified, requests will include a Host header field with value matching the policy's protected domain. If User-Agent is not specified, requests will include a User-Agent header field with value "waf health checks".

**Note:** The only currently-supported header fields are Host and User-Agent.

func (PolicyPolicyConfigHealthChecksPtrOutput) HealthyThreshold

(Updatable) Number of successful health checks after which the server is marked up.

func (PolicyPolicyConfigHealthChecksPtrOutput) IntervalInSeconds

(Updatable) Time between health checks of an individual origin server, in seconds.

func (PolicyPolicyConfigHealthChecksPtrOutput) IsEnabled

(Updatable) Enables or disables the JavaScript challenge Web Application Firewall feature.

func (PolicyPolicyConfigHealthChecksPtrOutput) IsResponseTextCheckEnabled

func (o PolicyPolicyConfigHealthChecksPtrOutput) IsResponseTextCheckEnabled() pulumi.BoolPtrOutput

(Updatable) Enables or disables additional check for predefined text in addition to response code.

func (PolicyPolicyConfigHealthChecksPtrOutput) Method

(Updatable) Load balancing methods are algorithms used to efficiently distribute traffic among origin servers. * **[IP_HASH](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/IPHashLoadBalancingMethod):** All the incoming requests from the same client IP address should go to the same content origination server. IP_HASH load balancing method uses origin weights when choosing which origin should the hash be assigned to initially. * **[ROUND_ROBIN](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/RoundRobinLoadBalancingMethod):** Forwards requests sequentially to the available origin servers. The first request - to the first origin server, the second request - to the next origin server, and so on. After it sends a request to the last origin server, it starts again with the first origin server. When using weights on origins, Weighted Round Robin assigns more requests to origins with a greater weight. Over a period of time, origins will receive a number of requests in proportion to their weight. * **[STICKY_COOKIE](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/StickyCookieLoadBalancingMethod):** Adds a session cookie to the first response from the origin server and identifies the server that sent the response. The client's next request contains the cookie value, and nginx routes the request to the origin server that responded to the first request. STICKY_COOKIE load balancing method falls back to Round Robin for the first request.

func (PolicyPolicyConfigHealthChecksPtrOutput) Path

(Updatable) Path to visit on your origins when performing the health check.

func (PolicyPolicyConfigHealthChecksPtrOutput) TimeoutInSeconds

(Updatable) Response timeout represents wait time until request is considered failed, in seconds.

func (PolicyPolicyConfigHealthChecksPtrOutput) ToPolicyPolicyConfigHealthChecksPtrOutput

func (o PolicyPolicyConfigHealthChecksPtrOutput) ToPolicyPolicyConfigHealthChecksPtrOutput() PolicyPolicyConfigHealthChecksPtrOutput

func (PolicyPolicyConfigHealthChecksPtrOutput) ToPolicyPolicyConfigHealthChecksPtrOutputWithContext

func (o PolicyPolicyConfigHealthChecksPtrOutput) ToPolicyPolicyConfigHealthChecksPtrOutputWithContext(ctx context.Context) PolicyPolicyConfigHealthChecksPtrOutput

func (PolicyPolicyConfigHealthChecksPtrOutput) UnhealthyThreshold

(Updatable) Number of failed health checks after which the server is marked down.

type PolicyPolicyConfigInput

type PolicyPolicyConfigInput interface {
	pulumi.Input

	ToPolicyPolicyConfigOutput() PolicyPolicyConfigOutput
	ToPolicyPolicyConfigOutputWithContext(context.Context) PolicyPolicyConfigOutput
}

PolicyPolicyConfigInput is an input type that accepts PolicyPolicyConfigArgs and PolicyPolicyConfigOutput values. You can construct a concrete instance of `PolicyPolicyConfigInput` via:

PolicyPolicyConfigArgs{...}

type PolicyPolicyConfigLoadBalancingMethod

type PolicyPolicyConfigLoadBalancingMethod struct {
	// (Updatable) The domain for which the cookie is set, defaults to WAAS policy domain.
	Domain *string `pulumi:"domain"`
	// (Updatable) The time for which a browser should keep the cookie in seconds. Empty value will cause the cookie to expire at the end of a browser session.
	ExpirationTimeInSeconds *int `pulumi:"expirationTimeInSeconds"`
	// (Updatable) Load balancing methods are algorithms used to efficiently distribute traffic among origin servers.
	// * **[IP_HASH](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/IPHashLoadBalancingMethod):** All the incoming requests from the same client IP address should go to the same content origination server. IP_HASH load balancing method uses origin weights when choosing which origin should the hash be assigned to initially.
	// * **[ROUND_ROBIN](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/RoundRobinLoadBalancingMethod):** Forwards requests sequentially to the available origin servers. The first request - to the first origin server, the second request - to the next origin server, and so on. After it sends a request to the last origin server, it starts again with the first origin server. When using weights on origins, Weighted Round Robin assigns more requests to origins with a greater weight. Over a period of time, origins will receive a number of requests in proportion to their weight.
	// * **[STICKY_COOKIE](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/StickyCookieLoadBalancingMethod):** Adds a session cookie to the first response from the origin server and identifies the server that sent the response. The client's next request contains the cookie value, and nginx routes the request to the origin server that responded to the first request. STICKY_COOKIE load balancing method falls back to Round Robin for the first request.
	Method string `pulumi:"method"`
	// (Updatable) The unique name of the whitelist.
	//
	// ** IMPORTANT **
	// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
	Name *string `pulumi:"name"`
}

type PolicyPolicyConfigLoadBalancingMethodArgs

type PolicyPolicyConfigLoadBalancingMethodArgs struct {
	// (Updatable) The domain for which the cookie is set, defaults to WAAS policy domain.
	Domain pulumi.StringPtrInput `pulumi:"domain"`
	// (Updatable) The time for which a browser should keep the cookie in seconds. Empty value will cause the cookie to expire at the end of a browser session.
	ExpirationTimeInSeconds pulumi.IntPtrInput `pulumi:"expirationTimeInSeconds"`
	// (Updatable) Load balancing methods are algorithms used to efficiently distribute traffic among origin servers.
	// * **[IP_HASH](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/IPHashLoadBalancingMethod):** All the incoming requests from the same client IP address should go to the same content origination server. IP_HASH load balancing method uses origin weights when choosing which origin should the hash be assigned to initially.
	// * **[ROUND_ROBIN](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/RoundRobinLoadBalancingMethod):** Forwards requests sequentially to the available origin servers. The first request - to the first origin server, the second request - to the next origin server, and so on. After it sends a request to the last origin server, it starts again with the first origin server. When using weights on origins, Weighted Round Robin assigns more requests to origins with a greater weight. Over a period of time, origins will receive a number of requests in proportion to their weight.
	// * **[STICKY_COOKIE](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/StickyCookieLoadBalancingMethod):** Adds a session cookie to the first response from the origin server and identifies the server that sent the response. The client's next request contains the cookie value, and nginx routes the request to the origin server that responded to the first request. STICKY_COOKIE load balancing method falls back to Round Robin for the first request.
	Method pulumi.StringInput `pulumi:"method"`
	// (Updatable) The unique name of the whitelist.
	//
	// ** IMPORTANT **
	// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
	Name pulumi.StringPtrInput `pulumi:"name"`
}

func (PolicyPolicyConfigLoadBalancingMethodArgs) ElementType

func (PolicyPolicyConfigLoadBalancingMethodArgs) ToPolicyPolicyConfigLoadBalancingMethodOutput

func (i PolicyPolicyConfigLoadBalancingMethodArgs) ToPolicyPolicyConfigLoadBalancingMethodOutput() PolicyPolicyConfigLoadBalancingMethodOutput

func (PolicyPolicyConfigLoadBalancingMethodArgs) ToPolicyPolicyConfigLoadBalancingMethodOutputWithContext

func (i PolicyPolicyConfigLoadBalancingMethodArgs) ToPolicyPolicyConfigLoadBalancingMethodOutputWithContext(ctx context.Context) PolicyPolicyConfigLoadBalancingMethodOutput

func (PolicyPolicyConfigLoadBalancingMethodArgs) ToPolicyPolicyConfigLoadBalancingMethodPtrOutput

func (i PolicyPolicyConfigLoadBalancingMethodArgs) ToPolicyPolicyConfigLoadBalancingMethodPtrOutput() PolicyPolicyConfigLoadBalancingMethodPtrOutput

func (PolicyPolicyConfigLoadBalancingMethodArgs) ToPolicyPolicyConfigLoadBalancingMethodPtrOutputWithContext

func (i PolicyPolicyConfigLoadBalancingMethodArgs) ToPolicyPolicyConfigLoadBalancingMethodPtrOutputWithContext(ctx context.Context) PolicyPolicyConfigLoadBalancingMethodPtrOutput

type PolicyPolicyConfigLoadBalancingMethodInput

type PolicyPolicyConfigLoadBalancingMethodInput interface {
	pulumi.Input

	ToPolicyPolicyConfigLoadBalancingMethodOutput() PolicyPolicyConfigLoadBalancingMethodOutput
	ToPolicyPolicyConfigLoadBalancingMethodOutputWithContext(context.Context) PolicyPolicyConfigLoadBalancingMethodOutput
}

PolicyPolicyConfigLoadBalancingMethodInput is an input type that accepts PolicyPolicyConfigLoadBalancingMethodArgs and PolicyPolicyConfigLoadBalancingMethodOutput values. You can construct a concrete instance of `PolicyPolicyConfigLoadBalancingMethodInput` via:

PolicyPolicyConfigLoadBalancingMethodArgs{...}

type PolicyPolicyConfigLoadBalancingMethodOutput

type PolicyPolicyConfigLoadBalancingMethodOutput struct{ *pulumi.OutputState }

func (PolicyPolicyConfigLoadBalancingMethodOutput) Domain

(Updatable) The domain for which the cookie is set, defaults to WAAS policy domain.

func (PolicyPolicyConfigLoadBalancingMethodOutput) ElementType

func (PolicyPolicyConfigLoadBalancingMethodOutput) ExpirationTimeInSeconds

(Updatable) The time for which a browser should keep the cookie in seconds. Empty value will cause the cookie to expire at the end of a browser session.

func (PolicyPolicyConfigLoadBalancingMethodOutput) Method

(Updatable) Load balancing methods are algorithms used to efficiently distribute traffic among origin servers. * **[IP_HASH](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/IPHashLoadBalancingMethod):** All the incoming requests from the same client IP address should go to the same content origination server. IP_HASH load balancing method uses origin weights when choosing which origin should the hash be assigned to initially. * **[ROUND_ROBIN](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/RoundRobinLoadBalancingMethod):** Forwards requests sequentially to the available origin servers. The first request - to the first origin server, the second request - to the next origin server, and so on. After it sends a request to the last origin server, it starts again with the first origin server. When using weights on origins, Weighted Round Robin assigns more requests to origins with a greater weight. Over a period of time, origins will receive a number of requests in proportion to their weight. * **[STICKY_COOKIE](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/StickyCookieLoadBalancingMethod):** Adds a session cookie to the first response from the origin server and identifies the server that sent the response. The client's next request contains the cookie value, and nginx routes the request to the origin server that responded to the first request. STICKY_COOKIE load balancing method falls back to Round Robin for the first request.

func (PolicyPolicyConfigLoadBalancingMethodOutput) Name

(Updatable) The unique name of the whitelist.

** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

func (PolicyPolicyConfigLoadBalancingMethodOutput) ToPolicyPolicyConfigLoadBalancingMethodOutput

func (o PolicyPolicyConfigLoadBalancingMethodOutput) ToPolicyPolicyConfigLoadBalancingMethodOutput() PolicyPolicyConfigLoadBalancingMethodOutput

func (PolicyPolicyConfigLoadBalancingMethodOutput) ToPolicyPolicyConfigLoadBalancingMethodOutputWithContext

func (o PolicyPolicyConfigLoadBalancingMethodOutput) ToPolicyPolicyConfigLoadBalancingMethodOutputWithContext(ctx context.Context) PolicyPolicyConfigLoadBalancingMethodOutput

func (PolicyPolicyConfigLoadBalancingMethodOutput) ToPolicyPolicyConfigLoadBalancingMethodPtrOutput

func (o PolicyPolicyConfigLoadBalancingMethodOutput) ToPolicyPolicyConfigLoadBalancingMethodPtrOutput() PolicyPolicyConfigLoadBalancingMethodPtrOutput

func (PolicyPolicyConfigLoadBalancingMethodOutput) ToPolicyPolicyConfigLoadBalancingMethodPtrOutputWithContext

func (o PolicyPolicyConfigLoadBalancingMethodOutput) ToPolicyPolicyConfigLoadBalancingMethodPtrOutputWithContext(ctx context.Context) PolicyPolicyConfigLoadBalancingMethodPtrOutput

type PolicyPolicyConfigLoadBalancingMethodPtrInput

type PolicyPolicyConfigLoadBalancingMethodPtrInput interface {
	pulumi.Input

	ToPolicyPolicyConfigLoadBalancingMethodPtrOutput() PolicyPolicyConfigLoadBalancingMethodPtrOutput
	ToPolicyPolicyConfigLoadBalancingMethodPtrOutputWithContext(context.Context) PolicyPolicyConfigLoadBalancingMethodPtrOutput
}

PolicyPolicyConfigLoadBalancingMethodPtrInput is an input type that accepts PolicyPolicyConfigLoadBalancingMethodArgs, PolicyPolicyConfigLoadBalancingMethodPtr and PolicyPolicyConfigLoadBalancingMethodPtrOutput values. You can construct a concrete instance of `PolicyPolicyConfigLoadBalancingMethodPtrInput` via:

        PolicyPolicyConfigLoadBalancingMethodArgs{...}

or:

        nil

type PolicyPolicyConfigLoadBalancingMethodPtrOutput

type PolicyPolicyConfigLoadBalancingMethodPtrOutput struct{ *pulumi.OutputState }

func (PolicyPolicyConfigLoadBalancingMethodPtrOutput) Domain

(Updatable) The domain for which the cookie is set, defaults to WAAS policy domain.

func (PolicyPolicyConfigLoadBalancingMethodPtrOutput) Elem

func (PolicyPolicyConfigLoadBalancingMethodPtrOutput) ElementType

func (PolicyPolicyConfigLoadBalancingMethodPtrOutput) ExpirationTimeInSeconds

(Updatable) The time for which a browser should keep the cookie in seconds. Empty value will cause the cookie to expire at the end of a browser session.

func (PolicyPolicyConfigLoadBalancingMethodPtrOutput) Method

(Updatable) Load balancing methods are algorithms used to efficiently distribute traffic among origin servers. * **[IP_HASH](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/IPHashLoadBalancingMethod):** All the incoming requests from the same client IP address should go to the same content origination server. IP_HASH load balancing method uses origin weights when choosing which origin should the hash be assigned to initially. * **[ROUND_ROBIN](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/RoundRobinLoadBalancingMethod):** Forwards requests sequentially to the available origin servers. The first request - to the first origin server, the second request - to the next origin server, and so on. After it sends a request to the last origin server, it starts again with the first origin server. When using weights on origins, Weighted Round Robin assigns more requests to origins with a greater weight. Over a period of time, origins will receive a number of requests in proportion to their weight. * **[STICKY_COOKIE](https://www.terraform.io/iaas/api/#/en/waas/latest/datatypes/StickyCookieLoadBalancingMethod):** Adds a session cookie to the first response from the origin server and identifies the server that sent the response. The client's next request contains the cookie value, and nginx routes the request to the origin server that responded to the first request. STICKY_COOKIE load balancing method falls back to Round Robin for the first request.

func (PolicyPolicyConfigLoadBalancingMethodPtrOutput) Name

(Updatable) The unique name of the whitelist.

** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

func (PolicyPolicyConfigLoadBalancingMethodPtrOutput) ToPolicyPolicyConfigLoadBalancingMethodPtrOutput

func (o PolicyPolicyConfigLoadBalancingMethodPtrOutput) ToPolicyPolicyConfigLoadBalancingMethodPtrOutput() PolicyPolicyConfigLoadBalancingMethodPtrOutput

func (PolicyPolicyConfigLoadBalancingMethodPtrOutput) ToPolicyPolicyConfigLoadBalancingMethodPtrOutputWithContext

func (o PolicyPolicyConfigLoadBalancingMethodPtrOutput) ToPolicyPolicyConfigLoadBalancingMethodPtrOutputWithContext(ctx context.Context) PolicyPolicyConfigLoadBalancingMethodPtrOutput

type PolicyPolicyConfigOutput

type PolicyPolicyConfigOutput struct{ *pulumi.OutputState }

func (PolicyPolicyConfigOutput) CertificateId

(Updatable) The OCID of the SSL certificate to use if HTTPS is supported.

func (PolicyPolicyConfigOutput) CipherGroup

(Updatable) The set cipher group for the configured TLS protocol. This sets the configuration for the TLS connections between clients and edge nodes only. * **DEFAULT:** Cipher group supports TLS 1.0, TLS 1.1, TLS 1.2, TLS 1.3 protocols. It has the following ciphers enabled: `ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:!DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA`

func (PolicyPolicyConfigOutput) ClientAddressHeader

func (o PolicyPolicyConfigOutput) ClientAddressHeader() pulumi.StringPtrOutput

(Updatable) Specifies an HTTP header name which is treated as the connecting client's IP address. Applicable only if `isBehindCdn` is enabled.

The edge node reads this header and its value and sets the client IP address as specified. It does not create the header if the header is not present in the request. If the header is not present, the connecting IP address will be used as the client's true IP address. It uses the last IP address in the header's value as the true IP address.

Example: `X-Client-Ip: 11.1.1.1, 13.3.3.3`

In the case of multiple headers with the same name, only the first header will be used. It is assumed that CDN sets the correct client IP address to prevent spoofing. * **X_FORWARDED_FOR:** Corresponds to `X-Forwarded-For` header name. * **X_CLIENT_IP:** Corresponds to `X-Client-Ip` header name. * **X_REAL_IP:** Corresponds to `X-Real-Ip` header name. * **CLIENT_IP:** Corresponds to `Client-Ip` header name. * **TRUE_CLIENT_IP:** Corresponds to `True-Client-Ip` header name.

func (PolicyPolicyConfigOutput) ElementType

func (PolicyPolicyConfigOutput) ElementType() reflect.Type

func (PolicyPolicyConfigOutput) HealthChecks

(Updatable) Health checks monitor the status of your origin servers and only route traffic to the origins that pass the health check. If the health check fails, origin is automatically removed from the load balancing. There is roughly one health check per EDGE POP per period. Any checks that pass will be reported as "healthy".

func (PolicyPolicyConfigOutput) IsBehindCdn

(Updatable) Enabling `isBehindCdn` allows for the collection of IP addresses from client requests if the WAF is connected to a CDN.

func (PolicyPolicyConfigOutput) IsCacheControlRespected

func (o PolicyPolicyConfigOutput) IsCacheControlRespected() pulumi.BoolPtrOutput

(Updatable) Enable or disable automatic content caching based on the response `cache-control` header. This feature enables the origin to act as a proxy cache. Caching is usually defined using `cache-control` header. For example `cache-control: max-age=120` means that the returned resource is valid for 120 seconds. Caching rules will overwrite this setting.

func (PolicyPolicyConfigOutput) IsHttpsEnabled

func (o PolicyPolicyConfigOutput) IsHttpsEnabled() pulumi.BoolPtrOutput

(Updatable) Enable or disable HTTPS support. If true, a `certificateId` is required. If unspecified, defaults to `false`.

func (PolicyPolicyConfigOutput) IsHttpsForced

func (o PolicyPolicyConfigOutput) IsHttpsForced() pulumi.BoolPtrOutput

(Updatable) Force HTTP to HTTPS redirection. If unspecified, defaults to `false`.

func (PolicyPolicyConfigOutput) IsOriginCompressionEnabled

func (o PolicyPolicyConfigOutput) IsOriginCompressionEnabled() pulumi.BoolPtrOutput

(Updatable) Enable or disable GZIP compression of origin responses. If enabled, the header `Accept-Encoding: gzip` is sent to origin, otherwise, the empty `Accept-Encoding:` header is used.

func (PolicyPolicyConfigOutput) IsResponseBufferingEnabled

func (o PolicyPolicyConfigOutput) IsResponseBufferingEnabled() pulumi.BoolPtrOutput

(Updatable) Enable or disable buffering of responses from the origin. Buffering improves overall stability in case of network issues, but slightly increases Time To First Byte.

func (PolicyPolicyConfigOutput) IsSniEnabled

(Updatable) SNI stands for Server Name Indication and is an extension of the TLS protocol. It indicates which hostname is being contacted by the browser at the beginning of the 'handshake'-process. This allows a server to connect multiple SSL Certificates to one IP address and port.

func (PolicyPolicyConfigOutput) LoadBalancingMethod

(Updatable) An object that represents a load balancing method and its properties.

func (PolicyPolicyConfigOutput) TlsProtocols

(Updatable) A list of allowed TLS protocols. Only applicable when HTTPS support is enabled. The TLS protocol is negotiated while the request is connecting and the most recent protocol supported by both the edge node and client browser will be selected. If no such version exists, the connection will be aborted. * **TLS_V1:** corresponds to TLS 1.0 specification. * **TLS_V1_1:** corresponds to TLS 1.1 specification. * **TLS_V1_2:** corresponds to TLS 1.2 specification. * **TLS_V1_3:** corresponds to TLS 1.3 specification.

Enabled TLS protocols must go in a row. For example if `TLS_v1_1` and `TLS_V1_3` are enabled, `TLS_V1_2` must be enabled too.

func (PolicyPolicyConfigOutput) ToPolicyPolicyConfigOutput

func (o PolicyPolicyConfigOutput) ToPolicyPolicyConfigOutput() PolicyPolicyConfigOutput

func (PolicyPolicyConfigOutput) ToPolicyPolicyConfigOutputWithContext

func (o PolicyPolicyConfigOutput) ToPolicyPolicyConfigOutputWithContext(ctx context.Context) PolicyPolicyConfigOutput

func (PolicyPolicyConfigOutput) ToPolicyPolicyConfigPtrOutput

func (o PolicyPolicyConfigOutput) ToPolicyPolicyConfigPtrOutput() PolicyPolicyConfigPtrOutput

func (PolicyPolicyConfigOutput) ToPolicyPolicyConfigPtrOutputWithContext

func (o PolicyPolicyConfigOutput) ToPolicyPolicyConfigPtrOutputWithContext(ctx context.Context) PolicyPolicyConfigPtrOutput

func (PolicyPolicyConfigOutput) WebsocketPathPrefixes

func (o PolicyPolicyConfigOutput) WebsocketPathPrefixes() pulumi.StringArrayOutput

(Updatable) ModSecurity is not capable to inspect WebSockets. Therefore paths specified here have WAF disabled if Connection request header from the client has the value Upgrade (case insensitive matching) and Upgrade request header has the value websocket (case insensitive matching). Paths matches if the concatenation of request URL path and query starts with the contents of the one of `websocketPathPrefixes` array value. In All other cases challenges, like JSC, HIC and etc., remain active.

type PolicyPolicyConfigPtrInput

type PolicyPolicyConfigPtrInput interface {
	pulumi.Input

	ToPolicyPolicyConfigPtrOutput() PolicyPolicyConfigPtrOutput
	ToPolicyPolicyConfigPtrOutputWithContext(context.Context) PolicyPolicyConfigPtrOutput
}

PolicyPolicyConfigPtrInput is an input type that accepts PolicyPolicyConfigArgs, PolicyPolicyConfigPtr and PolicyPolicyConfigPtrOutput values. You can construct a concrete instance of `PolicyPolicyConfigPtrInput` via:

        PolicyPolicyConfigArgs{...}

or:

        nil

type PolicyPolicyConfigPtrOutput

type PolicyPolicyConfigPtrOutput struct{ *pulumi.OutputState }

func (PolicyPolicyConfigPtrOutput) CertificateId

(Updatable) The OCID of the SSL certificate to use if HTTPS is supported.

func (PolicyPolicyConfigPtrOutput) CipherGroup

(Updatable) The set cipher group for the configured TLS protocol. This sets the configuration for the TLS connections between clients and edge nodes only. * **DEFAULT:** Cipher group supports TLS 1.0, TLS 1.1, TLS 1.2, TLS 1.3 protocols. It has the following ciphers enabled: `ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:!DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA`

func (PolicyPolicyConfigPtrOutput) ClientAddressHeader

func (o PolicyPolicyConfigPtrOutput) ClientAddressHeader() pulumi.StringPtrOutput

(Updatable) Specifies an HTTP header name which is treated as the connecting client's IP address. Applicable only if `isBehindCdn` is enabled.

The edge node reads this header and its value and sets the client IP address as specified. It does not create the header if the header is not present in the request. If the header is not present, the connecting IP address will be used as the client's true IP address. It uses the last IP address in the header's value as the true IP address.

Example: `X-Client-Ip: 11.1.1.1, 13.3.3.3`

In the case of multiple headers with the same name, only the first header will be used. It is assumed that CDN sets the correct client IP address to prevent spoofing. * **X_FORWARDED_FOR:** Corresponds to `X-Forwarded-For` header name. * **X_CLIENT_IP:** Corresponds to `X-Client-Ip` header name. * **X_REAL_IP:** Corresponds to `X-Real-Ip` header name. * **CLIENT_IP:** Corresponds to `Client-Ip` header name. * **TRUE_CLIENT_IP:** Corresponds to `True-Client-Ip` header name.

func (PolicyPolicyConfigPtrOutput) Elem

func (PolicyPolicyConfigPtrOutput) ElementType

func (PolicyPolicyConfigPtrOutput) HealthChecks

(Updatable) Health checks monitor the status of your origin servers and only route traffic to the origins that pass the health check. If the health check fails, origin is automatically removed from the load balancing. There is roughly one health check per EDGE POP per period. Any checks that pass will be reported as "healthy".

func (PolicyPolicyConfigPtrOutput) IsBehindCdn

(Updatable) Enabling `isBehindCdn` allows for the collection of IP addresses from client requests if the WAF is connected to a CDN.

func (PolicyPolicyConfigPtrOutput) IsCacheControlRespected

func (o PolicyPolicyConfigPtrOutput) IsCacheControlRespected() pulumi.BoolPtrOutput

(Updatable) Enable or disable automatic content caching based on the response `cache-control` header. This feature enables the origin to act as a proxy cache. Caching is usually defined using `cache-control` header. For example `cache-control: max-age=120` means that the returned resource is valid for 120 seconds. Caching rules will overwrite this setting.

func (PolicyPolicyConfigPtrOutput) IsHttpsEnabled

(Updatable) Enable or disable HTTPS support. If true, a `certificateId` is required. If unspecified, defaults to `false`.

func (PolicyPolicyConfigPtrOutput) IsHttpsForced

(Updatable) Force HTTP to HTTPS redirection. If unspecified, defaults to `false`.

func (PolicyPolicyConfigPtrOutput) IsOriginCompressionEnabled

func (o PolicyPolicyConfigPtrOutput) IsOriginCompressionEnabled() pulumi.BoolPtrOutput

(Updatable) Enable or disable GZIP compression of origin responses. If enabled, the header `Accept-Encoding: gzip` is sent to origin, otherwise, the empty `Accept-Encoding:` header is used.

func (PolicyPolicyConfigPtrOutput) IsResponseBufferingEnabled

func (o PolicyPolicyConfigPtrOutput) IsResponseBufferingEnabled() pulumi.BoolPtrOutput

(Updatable) Enable or disable buffering of responses from the origin. Buffering improves overall stability in case of network issues, but slightly increases Time To First Byte.

func (PolicyPolicyConfigPtrOutput) IsSniEnabled

(Updatable) SNI stands for Server Name Indication and is an extension of the TLS protocol. It indicates which hostname is being contacted by the browser at the beginning of the 'handshake'-process. This allows a server to connect multiple SSL Certificates to one IP address and port.

func (PolicyPolicyConfigPtrOutput) LoadBalancingMethod

(Updatable) An object that represents a load balancing method and its properties.

func (PolicyPolicyConfigPtrOutput) TlsProtocols

(Updatable) A list of allowed TLS protocols. Only applicable when HTTPS support is enabled. The TLS protocol is negotiated while the request is connecting and the most recent protocol supported by both the edge node and client browser will be selected. If no such version exists, the connection will be aborted. * **TLS_V1:** corresponds to TLS 1.0 specification. * **TLS_V1_1:** corresponds to TLS 1.1 specification. * **TLS_V1_2:** corresponds to TLS 1.2 specification. * **TLS_V1_3:** corresponds to TLS 1.3 specification.

Enabled TLS protocols must go in a row. For example if `TLS_v1_1` and `TLS_V1_3` are enabled, `TLS_V1_2` must be enabled too.

func (PolicyPolicyConfigPtrOutput) ToPolicyPolicyConfigPtrOutput

func (o PolicyPolicyConfigPtrOutput) ToPolicyPolicyConfigPtrOutput() PolicyPolicyConfigPtrOutput

func (PolicyPolicyConfigPtrOutput) ToPolicyPolicyConfigPtrOutputWithContext

func (o PolicyPolicyConfigPtrOutput) ToPolicyPolicyConfigPtrOutputWithContext(ctx context.Context) PolicyPolicyConfigPtrOutput

func (PolicyPolicyConfigPtrOutput) WebsocketPathPrefixes

func (o PolicyPolicyConfigPtrOutput) WebsocketPathPrefixes() pulumi.StringArrayOutput

(Updatable) ModSecurity is not capable to inspect WebSockets. Therefore paths specified here have WAF disabled if Connection request header from the client has the value Upgrade (case insensitive matching) and Upgrade request header has the value websocket (case insensitive matching). Paths matches if the concatenation of request URL path and query starts with the contents of the one of `websocketPathPrefixes` array value. In All other cases challenges, like JSC, HIC and etc., remain active.

type PolicyState

type PolicyState struct {
	// (Updatable) An array of additional domains for the specified web application.
	AdditionalDomains pulumi.StringArrayInput
	// The CNAME record to add to your DNS configuration to route traffic for the domain, and all additional domains, through the WAF.
	Cname pulumi.StringPtrInput
	// (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment in which to create the WAAS policy.
	CompartmentId pulumi.StringPtrInput
	// (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Operations.CostCenter": "42"}`
	DefinedTags pulumi.MapInput
	// (Updatable) A user-friendly name for the WAAS policy. The name can be changed and does not need to be unique.
	DisplayName pulumi.StringPtrInput
	// (Updatable) The domain for which the cookie is set, defaults to WAAS policy domain.
	Domain pulumi.StringPtrInput
	// (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Department": "Finance"}`
	FreeformTags pulumi.MapInput
	// (Updatable) The map of origin groups and their keys used to associate origins to the `wafConfig`. Origin groups allow you to apply weights to groups of origins for load balancing purposes. Origins with higher weights will receive larger proportions of client requests. To add additional origins to your WAAS policy, update the `origins` field of a `UpdateWaasPolicy` request.
	OriginGroups PolicyOriginGroupArrayInput
	// (Updatable) A map of host to origin for the web application. The key should be a customer friendly name for the host, ex. primary, secondary, etc.
	Origins PolicyOriginArrayInput
	// (Updatable) The configuration details for the WAAS policy.
	PolicyConfig PolicyPolicyConfigPtrInput
	// The current lifecycle state of the WAAS policy.
	State pulumi.StringPtrInput
	// The date and time the policy was created, expressed in RFC 3339 timestamp format.
	TimeCreated pulumi.StringPtrInput
	// (Updatable) The Web Application Firewall configuration for the WAAS policy creation.
	WafConfig PolicyWafConfigPtrInput
}

func (PolicyState) ElementType

func (PolicyState) ElementType() reflect.Type

type PolicyWafConfig

type PolicyWafConfig struct {
	// (Updatable) The access rules applied to the Web Application Firewall. Access rules allow custom content access policies to be defined and `ALLOW`, `DETECT`, or `BLOCK` actions to be taken on a request when specified criteria are met.
	AccessRules []PolicyWafConfigAccessRule `pulumi:"accessRules"`
	// (Updatable) The settings used to limit the number of requests from an IP address.
	AddressRateLimiting *PolicyWafConfigAddressRateLimiting `pulumi:"addressRateLimiting"`
	// (Updatable) A list of caching rules applied to the web application.
	CachingRules []PolicyWafConfigCachingRule `pulumi:"cachingRules"`
	// (Updatable) A list of CAPTCHA challenge settings. CAPTCHAs challenge requests to ensure a human is attempting to reach the specified URL and not a bot.
	Captchas []PolicyWafConfigCaptcha `pulumi:"captchas"`
	// (Updatable) A list of the custom protection rule OCIDs and their actions.
	CustomProtectionRules []PolicyWafConfigCustomProtectionRule `pulumi:"customProtectionRules"`
	// (Updatable) The device fingerprint challenge settings. Blocks bots based on unique device fingerprint information.
	DeviceFingerprintChallenge *PolicyWafConfigDeviceFingerprintChallenge `pulumi:"deviceFingerprintChallenge"`
	// (Updatable) The human interaction challenge settings. Detects natural human interactions such as mouse movements, time on site, and page scrolling to identify bots.
	HumanInteractionChallenge *PolicyWafConfigHumanInteractionChallenge `pulumi:"humanInteractionChallenge"`
	// (Updatable) The JavaScript challenge settings. Blocks bots by challenging requests from browsers that have no JavaScript support.
	JsChallenge *PolicyWafConfigJsChallenge `pulumi:"jsChallenge"`
	// (Updatable) The key in the map of origins referencing the origin used for the Web Application Firewall. The origin must already be included in `Origins`. Required when creating the `WafConfig` resource, but is not required upon updating the configuration.
	Origin *string `pulumi:"origin"`
	// (Updatable) The map of origin groups and their keys used to associate origins to the `wafConfig`. Origin groups allow you to apply weights to groups of origins for load balancing purposes. Origins with higher weights will receive larger proportions of client requests. To add additional origins to your WAAS policy, update the `origins` field of a `UpdateWaasPolicy` request.
	OriginGroups []string `pulumi:"originGroups"`
	// (Updatable) The settings applied to protection rules.
	ProtectionSettings *PolicyWafConfigProtectionSettings `pulumi:"protectionSettings"`
	// (Updatable) A list of IP addresses that bypass the Web Application Firewall.
	Whitelists []PolicyWafConfigWhitelist `pulumi:"whitelists"`
}

type PolicyWafConfigAccessRule

type PolicyWafConfigAccessRule struct {
	// (Updatable) The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.
	Action string `pulumi:"action"`
	// (Updatable) If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.
	BlockAction *string `pulumi:"blockAction"`
	// (Updatable) The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.
	BlockErrorPageCode *string `pulumi:"blockErrorPageCode"`
	// (Updatable) The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`
	BlockErrorPageDescription *string `pulumi:"blockErrorPageDescription"`
	// (Updatable) The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'
	BlockErrorPageMessage *string `pulumi:"blockErrorPageMessage"`
	// (Updatable) The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.
	BlockResponseCode *int `pulumi:"blockResponseCode"`
	// (Updatable) The list of challenges to bypass when `action` is set to `BYPASS`. If unspecified or empty, all challenges are bypassed.
	// * **JS_CHALLENGE:** Bypasses JavaScript Challenge.
	// * **DEVICE_FINGERPRINT_CHALLENGE:** Bypasses Device Fingerprint Challenge.
	// * **HUMAN_INTERACTION_CHALLENGE:** Bypasses Human Interaction Challenge.
	// * **CAPTCHA:** Bypasses CAPTCHA Challenge.
	BypassChallenges []string `pulumi:"bypassChallenges"`
	// (Updatable) The text to show in the footer when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, default to `Enter the letters and numbers as they are shown in image above`.
	CaptchaFooter *string `pulumi:"captchaFooter"`
	// (Updatable) The text to show in the header when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `We have detected an increased number of attempts to access this webapp. To help us keep this webapp secure, please let us know that you are not a robot by entering the text from captcha below.`
	CaptchaHeader *string `pulumi:"captchaHeader"`
	// (Updatable) The text to show on the label of the CAPTCHA challenge submit button when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Yes, I am human`.
	CaptchaSubmitLabel *string `pulumi:"captchaSubmitLabel"`
	// (Updatable) The title used when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Are you human?`
	CaptchaTitle *string `pulumi:"captchaTitle"`
	// (Updatable) When defined, the JavaScript Challenge would be applied only for the requests that matched all the listed conditions.
	Criterias []PolicyWafConfigAccessRuleCriteria `pulumi:"criterias"`
	// (Updatable) The unique name of the whitelist.
	//
	// ** IMPORTANT **
	// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
	Name string `pulumi:"name"`
	// (Updatable) The response status code to return when `action` is set to `REDIRECT`.
	// * **MOVED_PERMANENTLY:** Used for designating the permanent movement of a page (numerical code - 301).
	// * **FOUND:** Used for designating the temporary movement of a page (numerical code - 302).
	RedirectResponseCode *string `pulumi:"redirectResponseCode"`
	// (Updatable) The target to which the request should be redirected, represented as a URI reference. Required when `action` is `REDIRECT`.
	RedirectUrl *string `pulumi:"redirectUrl"`
	// (Updatable) An object that represents an action to apply to an HTTP response headers if all rule criteria will be matched regardless of `action` value.
	ResponseHeaderManipulations []PolicyWafConfigAccessRuleResponseHeaderManipulation `pulumi:"responseHeaderManipulations"`
}

type PolicyWafConfigAccessRuleArgs

type PolicyWafConfigAccessRuleArgs struct {
	// (Updatable) The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.
	Action pulumi.StringInput `pulumi:"action"`
	// (Updatable) If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.
	BlockAction pulumi.StringPtrInput `pulumi:"blockAction"`
	// (Updatable) The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.
	BlockErrorPageCode pulumi.StringPtrInput `pulumi:"blockErrorPageCode"`
	// (Updatable) The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`
	BlockErrorPageDescription pulumi.StringPtrInput `pulumi:"blockErrorPageDescription"`
	// (Updatable) The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'
	BlockErrorPageMessage pulumi.StringPtrInput `pulumi:"blockErrorPageMessage"`
	// (Updatable) The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.
	BlockResponseCode pulumi.IntPtrInput `pulumi:"blockResponseCode"`
	// (Updatable) The list of challenges to bypass when `action` is set to `BYPASS`. If unspecified or empty, all challenges are bypassed.
	// * **JS_CHALLENGE:** Bypasses JavaScript Challenge.
	// * **DEVICE_FINGERPRINT_CHALLENGE:** Bypasses Device Fingerprint Challenge.
	// * **HUMAN_INTERACTION_CHALLENGE:** Bypasses Human Interaction Challenge.
	// * **CAPTCHA:** Bypasses CAPTCHA Challenge.
	BypassChallenges pulumi.StringArrayInput `pulumi:"bypassChallenges"`
	// (Updatable) The text to show in the footer when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, default to `Enter the letters and numbers as they are shown in image above`.
	CaptchaFooter pulumi.StringPtrInput `pulumi:"captchaFooter"`
	// (Updatable) The text to show in the header when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `We have detected an increased number of attempts to access this webapp. To help us keep this webapp secure, please let us know that you are not a robot by entering the text from captcha below.`
	CaptchaHeader pulumi.StringPtrInput `pulumi:"captchaHeader"`
	// (Updatable) The text to show on the label of the CAPTCHA challenge submit button when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Yes, I am human`.
	CaptchaSubmitLabel pulumi.StringPtrInput `pulumi:"captchaSubmitLabel"`
	// (Updatable) The title used when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Are you human?`
	CaptchaTitle pulumi.StringPtrInput `pulumi:"captchaTitle"`
	// (Updatable) When defined, the JavaScript Challenge would be applied only for the requests that matched all the listed conditions.
	Criterias PolicyWafConfigAccessRuleCriteriaArrayInput `pulumi:"criterias"`
	// (Updatable) The unique name of the whitelist.
	//
	// ** IMPORTANT **
	// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
	Name pulumi.StringInput `pulumi:"name"`
	// (Updatable) The response status code to return when `action` is set to `REDIRECT`.
	// * **MOVED_PERMANENTLY:** Used for designating the permanent movement of a page (numerical code - 301).
	// * **FOUND:** Used for designating the temporary movement of a page (numerical code - 302).
	RedirectResponseCode pulumi.StringPtrInput `pulumi:"redirectResponseCode"`
	// (Updatable) The target to which the request should be redirected, represented as a URI reference. Required when `action` is `REDIRECT`.
	RedirectUrl pulumi.StringPtrInput `pulumi:"redirectUrl"`
	// (Updatable) An object that represents an action to apply to an HTTP response headers if all rule criteria will be matched regardless of `action` value.
	ResponseHeaderManipulations PolicyWafConfigAccessRuleResponseHeaderManipulationArrayInput `pulumi:"responseHeaderManipulations"`
}

func (PolicyWafConfigAccessRuleArgs) ElementType

func (PolicyWafConfigAccessRuleArgs) ToPolicyWafConfigAccessRuleOutput

func (i PolicyWafConfigAccessRuleArgs) ToPolicyWafConfigAccessRuleOutput() PolicyWafConfigAccessRuleOutput

func (PolicyWafConfigAccessRuleArgs) ToPolicyWafConfigAccessRuleOutputWithContext

func (i PolicyWafConfigAccessRuleArgs) ToPolicyWafConfigAccessRuleOutputWithContext(ctx context.Context) PolicyWafConfigAccessRuleOutput

type PolicyWafConfigAccessRuleArray

type PolicyWafConfigAccessRuleArray []PolicyWafConfigAccessRuleInput

func (PolicyWafConfigAccessRuleArray) ElementType

func (PolicyWafConfigAccessRuleArray) ToPolicyWafConfigAccessRuleArrayOutput

func (i PolicyWafConfigAccessRuleArray) ToPolicyWafConfigAccessRuleArrayOutput() PolicyWafConfigAccessRuleArrayOutput

func (PolicyWafConfigAccessRuleArray) ToPolicyWafConfigAccessRuleArrayOutputWithContext

func (i PolicyWafConfigAccessRuleArray) ToPolicyWafConfigAccessRuleArrayOutputWithContext(ctx context.Context) PolicyWafConfigAccessRuleArrayOutput

type PolicyWafConfigAccessRuleArrayInput

type PolicyWafConfigAccessRuleArrayInput interface {
	pulumi.Input

	ToPolicyWafConfigAccessRuleArrayOutput() PolicyWafConfigAccessRuleArrayOutput
	ToPolicyWafConfigAccessRuleArrayOutputWithContext(context.Context) PolicyWafConfigAccessRuleArrayOutput
}

PolicyWafConfigAccessRuleArrayInput is an input type that accepts PolicyWafConfigAccessRuleArray and PolicyWafConfigAccessRuleArrayOutput values. You can construct a concrete instance of `PolicyWafConfigAccessRuleArrayInput` via:

PolicyWafConfigAccessRuleArray{ PolicyWafConfigAccessRuleArgs{...} }

type PolicyWafConfigAccessRuleArrayOutput

type PolicyWafConfigAccessRuleArrayOutput struct{ *pulumi.OutputState }

func (PolicyWafConfigAccessRuleArrayOutput) ElementType

func (PolicyWafConfigAccessRuleArrayOutput) Index

func (PolicyWafConfigAccessRuleArrayOutput) ToPolicyWafConfigAccessRuleArrayOutput

func (o PolicyWafConfigAccessRuleArrayOutput) ToPolicyWafConfigAccessRuleArrayOutput() PolicyWafConfigAccessRuleArrayOutput

func (PolicyWafConfigAccessRuleArrayOutput) ToPolicyWafConfigAccessRuleArrayOutputWithContext

func (o PolicyWafConfigAccessRuleArrayOutput) ToPolicyWafConfigAccessRuleArrayOutputWithContext(ctx context.Context) PolicyWafConfigAccessRuleArrayOutput

type PolicyWafConfigAccessRuleCriteria

type PolicyWafConfigAccessRuleCriteria struct {
	// (Updatable) The criteria the access rule and JavaScript Challenge uses to determine if action should be taken on a request.
	// * **URL_IS:** Matches if the concatenation of request URL path and query is identical to the contents of the `value` field. URL must start with a `/`.
	// * **URL_IS_NOT:** Matches if the concatenation of request URL path and query is not identical to the contents of the `value` field. URL must start with a `/`.
	// * **URL_STARTS_WITH:** Matches if the concatenation of request URL path and query starts with the contents of the `value` field. URL must start with a `/`.
	// * **URL_PART_ENDS_WITH:** Matches if the concatenation of request URL path and query ends with the contents of the `value` field.
	// * **URL_PART_CONTAINS:** Matches if the concatenation of request URL path and query contains the contents of the `value` field.
	// * **URL_REGEX:** Matches if the concatenation of request URL path and query is described by the regular expression in the value field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org).
	// * **URL_DOES_NOT_MATCH_REGEX:** Matches if the concatenation of request URL path and query is not described by the regular expression in the `value` field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org).
	// * **URL_DOES_NOT_START_WITH:** Matches if the concatenation of request URL path and query does not start with the contents of the `value` field.
	// * **URL_PART_DOES_NOT_CONTAIN:** Matches if the concatenation of request URL path and query does not contain the contents of the `value` field.
	// * **URL_PART_DOES_NOT_END_WITH:** Matches if the concatenation of request URL path and query does not end with the contents of the `value` field.
	// * **IP_IS:** Matches if the request originates from one of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30"
	// * **IP_IS_NOT:** Matches if the request does not originate from any of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30"
	// * **IP_IN_LIST:** Matches if the request originates from one of the IP addresses contained in the referenced address list. The `value` in this case is OCID of the address list.
	// * **IP_NOT_IN_LIST:** Matches if the request does not originate from any IP address contained in the referenced address list. The `value` field in this case is OCID of the address list.
	// * **HTTP_HEADER_CONTAINS:** The HTTP_HEADER_CONTAINS criteria is defined using a compound value separated by a colon: a header field name and a header field value. `host:test.example.com` is an example of a criteria value where `host` is the header field name and `test.example.com` is the header field value. A request matches when the header field name is a case insensitive match and the header field value is a case insensitive, substring match. *Example:* With a criteria value of `host:test.example.com`, where `host` is the name of the field and `test.example.com` is the value of the host field, a request with the header values, `Host: www.test.example.com` will match, where as a request with header values of `host: www.example.com` or `host: test.sub.example.com` will not match.
	// * **HTTP_METHOD_IS:** Matches if the request method is identical to one of the values listed in field. The `value` in this case is string with one or multiple HTTP methods separated by new line symbol \n The list of available methods: `GET`, `HEAD`, `POST`, `PUT`, `DELETE`, `CONNECT`, `OPTIONS`, `TRACE`, `PATCH`
	//
	// *Example:* "GET\nPOST"
	// * **HTTP_METHOD_IS_NOT:** Matches if the request is not identical to any of the contents of the `value` field. The `value` in this case is string with one or multiple HTTP methods separated by new line symbol \n The list of available methods: `GET`, `HEAD`, `POST`, `PUT`, `DELETE`, `CONNECT`, `OPTIONS`, `TRACE`, `PATCH`
	//
	// *Example:* "GET\nPOST"
	// * **COUNTRY_IS:** Matches if the request originates from one of countries in the `value` field. The `value` in this case is string with one or multiple countries separated by new line symbol \n Country codes are in ISO 3166-1 alpha-2 format. For a list of codes, see [ISO's website](https://www.iso.org/obp/ui/#search/code/). *Example:* "AL\nDZ\nAM"
	// * **COUNTRY_IS_NOT:** Matches if the request does not originate from any of countries in the `value` field. The `value` in this case is string with one or multiple countries separated by new line symbol \n Country codes are in ISO 3166-1 alpha-2 format. For a list of codes, see [ISO's website](https://www.iso.org/obp/ui/#search/code/). *Example:* "AL\nDZ\nAM"
	// * **USER_AGENT_IS:** Matches if the requesting user agent is identical to the contents of the `value` field. *Example:* `Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:35.0) Gecko/20100101 Firefox/35.0`
	// * **USER_AGENT_IS_NOT:** Matches if the requesting user agent is not identical to the contents of the `value` field. *Example:* `Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:35.0) Gecko/20100101 Firefox/35.0`
	Condition string `pulumi:"condition"`
	// (Updatable) When enabled, the condition will be matched with case-sensitive rules.
	IsCaseSensitive *bool `pulumi:"isCaseSensitive"`
	// (Updatable) The value of the header.
	Value string `pulumi:"value"`
}

type PolicyWafConfigAccessRuleCriteriaArgs

type PolicyWafConfigAccessRuleCriteriaArgs struct {
	// (Updatable) The criteria the access rule and JavaScript Challenge uses to determine if action should be taken on a request.
	// * **URL_IS:** Matches if the concatenation of request URL path and query is identical to the contents of the `value` field. URL must start with a `/`.
	// * **URL_IS_NOT:** Matches if the concatenation of request URL path and query is not identical to the contents of the `value` field. URL must start with a `/`.
	// * **URL_STARTS_WITH:** Matches if the concatenation of request URL path and query starts with the contents of the `value` field. URL must start with a `/`.
	// * **URL_PART_ENDS_WITH:** Matches if the concatenation of request URL path and query ends with the contents of the `value` field.
	// * **URL_PART_CONTAINS:** Matches if the concatenation of request URL path and query contains the contents of the `value` field.
	// * **URL_REGEX:** Matches if the concatenation of request URL path and query is described by the regular expression in the value field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org).
	// * **URL_DOES_NOT_MATCH_REGEX:** Matches if the concatenation of request URL path and query is not described by the regular expression in the `value` field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org).
	// * **URL_DOES_NOT_START_WITH:** Matches if the concatenation of request URL path and query does not start with the contents of the `value` field.
	// * **URL_PART_DOES_NOT_CONTAIN:** Matches if the concatenation of request URL path and query does not contain the contents of the `value` field.
	// * **URL_PART_DOES_NOT_END_WITH:** Matches if the concatenation of request URL path and query does not end with the contents of the `value` field.
	// * **IP_IS:** Matches if the request originates from one of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30"
	// * **IP_IS_NOT:** Matches if the request does not originate from any of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30"
	// * **IP_IN_LIST:** Matches if the request originates from one of the IP addresses contained in the referenced address list. The `value` in this case is OCID of the address list.
	// * **IP_NOT_IN_LIST:** Matches if the request does not originate from any IP address contained in the referenced address list. The `value` field in this case is OCID of the address list.
	// * **HTTP_HEADER_CONTAINS:** The HTTP_HEADER_CONTAINS criteria is defined using a compound value separated by a colon: a header field name and a header field value. `host:test.example.com` is an example of a criteria value where `host` is the header field name and `test.example.com` is the header field value. A request matches when the header field name is a case insensitive match and the header field value is a case insensitive, substring match. *Example:* With a criteria value of `host:test.example.com`, where `host` is the name of the field and `test.example.com` is the value of the host field, a request with the header values, `Host: www.test.example.com` will match, where as a request with header values of `host: www.example.com` or `host: test.sub.example.com` will not match.
	// * **HTTP_METHOD_IS:** Matches if the request method is identical to one of the values listed in field. The `value` in this case is string with one or multiple HTTP methods separated by new line symbol \n The list of available methods: `GET`, `HEAD`, `POST`, `PUT`, `DELETE`, `CONNECT`, `OPTIONS`, `TRACE`, `PATCH`
	//
	// *Example:* "GET\nPOST"
	// * **HTTP_METHOD_IS_NOT:** Matches if the request is not identical to any of the contents of the `value` field. The `value` in this case is string with one or multiple HTTP methods separated by new line symbol \n The list of available methods: `GET`, `HEAD`, `POST`, `PUT`, `DELETE`, `CONNECT`, `OPTIONS`, `TRACE`, `PATCH`
	//
	// *Example:* "GET\nPOST"
	// * **COUNTRY_IS:** Matches if the request originates from one of countries in the `value` field. The `value` in this case is string with one or multiple countries separated by new line symbol \n Country codes are in ISO 3166-1 alpha-2 format. For a list of codes, see [ISO's website](https://www.iso.org/obp/ui/#search/code/). *Example:* "AL\nDZ\nAM"
	// * **COUNTRY_IS_NOT:** Matches if the request does not originate from any of countries in the `value` field. The `value` in this case is string with one or multiple countries separated by new line symbol \n Country codes are in ISO 3166-1 alpha-2 format. For a list of codes, see [ISO's website](https://www.iso.org/obp/ui/#search/code/). *Example:* "AL\nDZ\nAM"
	// * **USER_AGENT_IS:** Matches if the requesting user agent is identical to the contents of the `value` field. *Example:* `Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:35.0) Gecko/20100101 Firefox/35.0`
	// * **USER_AGENT_IS_NOT:** Matches if the requesting user agent is not identical to the contents of the `value` field. *Example:* `Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:35.0) Gecko/20100101 Firefox/35.0`
	Condition pulumi.StringInput `pulumi:"condition"`
	// (Updatable) When enabled, the condition will be matched with case-sensitive rules.
	IsCaseSensitive pulumi.BoolPtrInput `pulumi:"isCaseSensitive"`
	// (Updatable) The value of the header.
	Value pulumi.StringInput `pulumi:"value"`
}

func (PolicyWafConfigAccessRuleCriteriaArgs) ElementType

func (PolicyWafConfigAccessRuleCriteriaArgs) ToPolicyWafConfigAccessRuleCriteriaOutput

func (i PolicyWafConfigAccessRuleCriteriaArgs) ToPolicyWafConfigAccessRuleCriteriaOutput() PolicyWafConfigAccessRuleCriteriaOutput

func (PolicyWafConfigAccessRuleCriteriaArgs) ToPolicyWafConfigAccessRuleCriteriaOutputWithContext

func (i PolicyWafConfigAccessRuleCriteriaArgs) ToPolicyWafConfigAccessRuleCriteriaOutputWithContext(ctx context.Context) PolicyWafConfigAccessRuleCriteriaOutput

type PolicyWafConfigAccessRuleCriteriaArray

type PolicyWafConfigAccessRuleCriteriaArray []PolicyWafConfigAccessRuleCriteriaInput

func (PolicyWafConfigAccessRuleCriteriaArray) ElementType

func (PolicyWafConfigAccessRuleCriteriaArray) ToPolicyWafConfigAccessRuleCriteriaArrayOutput

func (i PolicyWafConfigAccessRuleCriteriaArray) ToPolicyWafConfigAccessRuleCriteriaArrayOutput() PolicyWafConfigAccessRuleCriteriaArrayOutput

func (PolicyWafConfigAccessRuleCriteriaArray) ToPolicyWafConfigAccessRuleCriteriaArrayOutputWithContext

func (i PolicyWafConfigAccessRuleCriteriaArray) ToPolicyWafConfigAccessRuleCriteriaArrayOutputWithContext(ctx context.Context) PolicyWafConfigAccessRuleCriteriaArrayOutput

type PolicyWafConfigAccessRuleCriteriaArrayInput

type PolicyWafConfigAccessRuleCriteriaArrayInput interface {
	pulumi.Input

	ToPolicyWafConfigAccessRuleCriteriaArrayOutput() PolicyWafConfigAccessRuleCriteriaArrayOutput
	ToPolicyWafConfigAccessRuleCriteriaArrayOutputWithContext(context.Context) PolicyWafConfigAccessRuleCriteriaArrayOutput
}

PolicyWafConfigAccessRuleCriteriaArrayInput is an input type that accepts PolicyWafConfigAccessRuleCriteriaArray and PolicyWafConfigAccessRuleCriteriaArrayOutput values. You can construct a concrete instance of `PolicyWafConfigAccessRuleCriteriaArrayInput` via:

PolicyWafConfigAccessRuleCriteriaArray{ PolicyWafConfigAccessRuleCriteriaArgs{...} }

type PolicyWafConfigAccessRuleCriteriaArrayOutput

type PolicyWafConfigAccessRuleCriteriaArrayOutput struct{ *pulumi.OutputState }

func (PolicyWafConfigAccessRuleCriteriaArrayOutput) ElementType

func (PolicyWafConfigAccessRuleCriteriaArrayOutput) Index

func (PolicyWafConfigAccessRuleCriteriaArrayOutput) ToPolicyWafConfigAccessRuleCriteriaArrayOutput

func (o PolicyWafConfigAccessRuleCriteriaArrayOutput) ToPolicyWafConfigAccessRuleCriteriaArrayOutput() PolicyWafConfigAccessRuleCriteriaArrayOutput

func (PolicyWafConfigAccessRuleCriteriaArrayOutput) ToPolicyWafConfigAccessRuleCriteriaArrayOutputWithContext

func (o PolicyWafConfigAccessRuleCriteriaArrayOutput) ToPolicyWafConfigAccessRuleCriteriaArrayOutputWithContext(ctx context.Context) PolicyWafConfigAccessRuleCriteriaArrayOutput

type PolicyWafConfigAccessRuleCriteriaInput

type PolicyWafConfigAccessRuleCriteriaInput interface {
	pulumi.Input

	ToPolicyWafConfigAccessRuleCriteriaOutput() PolicyWafConfigAccessRuleCriteriaOutput
	ToPolicyWafConfigAccessRuleCriteriaOutputWithContext(context.Context) PolicyWafConfigAccessRuleCriteriaOutput
}

PolicyWafConfigAccessRuleCriteriaInput is an input type that accepts PolicyWafConfigAccessRuleCriteriaArgs and PolicyWafConfigAccessRuleCriteriaOutput values. You can construct a concrete instance of `PolicyWafConfigAccessRuleCriteriaInput` via:

PolicyWafConfigAccessRuleCriteriaArgs{...}

type PolicyWafConfigAccessRuleCriteriaOutput

type PolicyWafConfigAccessRuleCriteriaOutput struct{ *pulumi.OutputState }

func (PolicyWafConfigAccessRuleCriteriaOutput) Condition

(Updatable) The criteria the access rule and JavaScript Challenge uses to determine if action should be taken on a request. * **URL_IS:** Matches if the concatenation of request URL path and query is identical to the contents of the `value` field. URL must start with a `/`. * **URL_IS_NOT:** Matches if the concatenation of request URL path and query is not identical to the contents of the `value` field. URL must start with a `/`. * **URL_STARTS_WITH:** Matches if the concatenation of request URL path and query starts with the contents of the `value` field. URL must start with a `/`. * **URL_PART_ENDS_WITH:** Matches if the concatenation of request URL path and query ends with the contents of the `value` field. * **URL_PART_CONTAINS:** Matches if the concatenation of request URL path and query contains the contents of the `value` field. * **URL_REGEX:** Matches if the concatenation of request URL path and query is described by the regular expression in the value field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org). * **URL_DOES_NOT_MATCH_REGEX:** Matches if the concatenation of request URL path and query is not described by the regular expression in the `value` field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org). * **URL_DOES_NOT_START_WITH:** Matches if the concatenation of request URL path and query does not start with the contents of the `value` field. * **URL_PART_DOES_NOT_CONTAIN:** Matches if the concatenation of request URL path and query does not contain the contents of the `value` field. * **URL_PART_DOES_NOT_END_WITH:** Matches if the concatenation of request URL path and query does not end with the contents of the `value` field. * **IP_IS:** Matches if the request originates from one of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30" * **IP_IS_NOT:** Matches if the request does not originate from any of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30" * **IP_IN_LIST:** Matches if the request originates from one of the IP addresses contained in the referenced address list. The `value` in this case is OCID of the address list. * **IP_NOT_IN_LIST:** Matches if the request does not originate from any IP address contained in the referenced address list. The `value` field in this case is OCID of the address list. * **HTTP_HEADER_CONTAINS:** The HTTP_HEADER_CONTAINS criteria is defined using a compound value separated by a colon: a header field name and a header field value. `host:test.example.com` is an example of a criteria value where `host` is the header field name and `test.example.com` is the header field value. A request matches when the header field name is a case insensitive match and the header field value is a case insensitive, substring match. *Example:* With a criteria value of `host:test.example.com`, where `host` is the name of the field and `test.example.com` is the value of the host field, a request with the header values, `Host: www.test.example.com` will match, where as a request with header values of `host: www.example.com` or `host: test.sub.example.com` will not match. * **HTTP_METHOD_IS:** Matches if the request method is identical to one of the values listed in field. The `value` in this case is string with one or multiple HTTP methods separated by new line symbol \n The list of available methods: `GET`, `HEAD`, `POST`, `PUT`, `DELETE`, `CONNECT`, `OPTIONS`, `TRACE`, `PATCH`

*Example:* "GET\nPOST" * **HTTP_METHOD_IS_NOT:** Matches if the request is not identical to any of the contents of the `value` field. The `value` in this case is string with one or multiple HTTP methods separated by new line symbol \n The list of available methods: `GET`, `HEAD`, `POST`, `PUT`, `DELETE`, `CONNECT`, `OPTIONS`, `TRACE`, `PATCH`

*Example:* "GET\nPOST" * **COUNTRY_IS:** Matches if the request originates from one of countries in the `value` field. The `value` in this case is string with one or multiple countries separated by new line symbol \n Country codes are in ISO 3166-1 alpha-2 format. For a list of codes, see [ISO's website](https://www.iso.org/obp/ui/#search/code/). *Example:* "AL\nDZ\nAM" * **COUNTRY_IS_NOT:** Matches if the request does not originate from any of countries in the `value` field. The `value` in this case is string with one or multiple countries separated by new line symbol \n Country codes are in ISO 3166-1 alpha-2 format. For a list of codes, see [ISO's website](https://www.iso.org/obp/ui/#search/code/). *Example:* "AL\nDZ\nAM" * **USER_AGENT_IS:** Matches if the requesting user agent is identical to the contents of the `value` field. *Example:* `Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:35.0) Gecko/20100101 Firefox/35.0` * **USER_AGENT_IS_NOT:** Matches if the requesting user agent is not identical to the contents of the `value` field. *Example:* `Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:35.0) Gecko/20100101 Firefox/35.0`

func (PolicyWafConfigAccessRuleCriteriaOutput) ElementType

func (PolicyWafConfigAccessRuleCriteriaOutput) IsCaseSensitive

(Updatable) When enabled, the condition will be matched with case-sensitive rules.

func (PolicyWafConfigAccessRuleCriteriaOutput) ToPolicyWafConfigAccessRuleCriteriaOutput

func (o PolicyWafConfigAccessRuleCriteriaOutput) ToPolicyWafConfigAccessRuleCriteriaOutput() PolicyWafConfigAccessRuleCriteriaOutput

func (PolicyWafConfigAccessRuleCriteriaOutput) ToPolicyWafConfigAccessRuleCriteriaOutputWithContext

func (o PolicyWafConfigAccessRuleCriteriaOutput) ToPolicyWafConfigAccessRuleCriteriaOutputWithContext(ctx context.Context) PolicyWafConfigAccessRuleCriteriaOutput

func (PolicyWafConfigAccessRuleCriteriaOutput) Value

(Updatable) The value of the header.

type PolicyWafConfigAccessRuleInput

type PolicyWafConfigAccessRuleInput interface {
	pulumi.Input

	ToPolicyWafConfigAccessRuleOutput() PolicyWafConfigAccessRuleOutput
	ToPolicyWafConfigAccessRuleOutputWithContext(context.Context) PolicyWafConfigAccessRuleOutput
}

PolicyWafConfigAccessRuleInput is an input type that accepts PolicyWafConfigAccessRuleArgs and PolicyWafConfigAccessRuleOutput values. You can construct a concrete instance of `PolicyWafConfigAccessRuleInput` via:

PolicyWafConfigAccessRuleArgs{...}

type PolicyWafConfigAccessRuleOutput

type PolicyWafConfigAccessRuleOutput struct{ *pulumi.OutputState }

func (PolicyWafConfigAccessRuleOutput) Action

(Updatable) The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.

func (PolicyWafConfigAccessRuleOutput) BlockAction

(Updatable) If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.

func (PolicyWafConfigAccessRuleOutput) BlockErrorPageCode

(Updatable) The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.

func (PolicyWafConfigAccessRuleOutput) BlockErrorPageDescription

func (o PolicyWafConfigAccessRuleOutput) BlockErrorPageDescription() pulumi.StringPtrOutput

(Updatable) The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`

func (PolicyWafConfigAccessRuleOutput) BlockErrorPageMessage

func (o PolicyWafConfigAccessRuleOutput) BlockErrorPageMessage() pulumi.StringPtrOutput

(Updatable) The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'

func (PolicyWafConfigAccessRuleOutput) BlockResponseCode

func (o PolicyWafConfigAccessRuleOutput) BlockResponseCode() pulumi.IntPtrOutput

(Updatable) The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.

func (PolicyWafConfigAccessRuleOutput) BypassChallenges

(Updatable) The list of challenges to bypass when `action` is set to `BYPASS`. If unspecified or empty, all challenges are bypassed. * **JS_CHALLENGE:** Bypasses JavaScript Challenge. * **DEVICE_FINGERPRINT_CHALLENGE:** Bypasses Device Fingerprint Challenge. * **HUMAN_INTERACTION_CHALLENGE:** Bypasses Human Interaction Challenge. * **CAPTCHA:** Bypasses CAPTCHA Challenge.

func (PolicyWafConfigAccessRuleOutput) CaptchaFooter

(Updatable) The text to show in the footer when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, default to `Enter the letters and numbers as they are shown in image above`.

func (PolicyWafConfigAccessRuleOutput) CaptchaHeader

(Updatable) The text to show in the header when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `We have detected an increased number of attempts to access this webapp. To help us keep this webapp secure, please let us know that you are not a robot by entering the text from captcha below.`

func (PolicyWafConfigAccessRuleOutput) CaptchaSubmitLabel

(Updatable) The text to show on the label of the CAPTCHA challenge submit button when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Yes, I am human`.

func (PolicyWafConfigAccessRuleOutput) CaptchaTitle

(Updatable) The title used when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Are you human?`

func (PolicyWafConfigAccessRuleOutput) Criterias

(Updatable) When defined, the JavaScript Challenge would be applied only for the requests that matched all the listed conditions.

func (PolicyWafConfigAccessRuleOutput) ElementType

func (PolicyWafConfigAccessRuleOutput) Name

(Updatable) The unique name of the whitelist.

** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

func (PolicyWafConfigAccessRuleOutput) RedirectResponseCode

func (o PolicyWafConfigAccessRuleOutput) RedirectResponseCode() pulumi.StringPtrOutput

(Updatable) The response status code to return when `action` is set to `REDIRECT`. * **MOVED_PERMANENTLY:** Used for designating the permanent movement of a page (numerical code - 301). * **FOUND:** Used for designating the temporary movement of a page (numerical code - 302).

func (PolicyWafConfigAccessRuleOutput) RedirectUrl

(Updatable) The target to which the request should be redirected, represented as a URI reference. Required when `action` is `REDIRECT`.

func (PolicyWafConfigAccessRuleOutput) ResponseHeaderManipulations

(Updatable) An object that represents an action to apply to an HTTP response headers if all rule criteria will be matched regardless of `action` value.

func (PolicyWafConfigAccessRuleOutput) ToPolicyWafConfigAccessRuleOutput

func (o PolicyWafConfigAccessRuleOutput) ToPolicyWafConfigAccessRuleOutput() PolicyWafConfigAccessRuleOutput

func (PolicyWafConfigAccessRuleOutput) ToPolicyWafConfigAccessRuleOutputWithContext

func (o PolicyWafConfigAccessRuleOutput) ToPolicyWafConfigAccessRuleOutputWithContext(ctx context.Context) PolicyWafConfigAccessRuleOutput

type PolicyWafConfigAccessRuleResponseHeaderManipulation

type PolicyWafConfigAccessRuleResponseHeaderManipulation struct {
	// (Updatable) The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.
	Action string `pulumi:"action"`
	// (Updatable) A header field name that conforms to RFC 7230.  Example: `exampleHeaderName`
	Header string `pulumi:"header"`
	// (Updatable) The value of the header.
	Value *string `pulumi:"value"`
}

type PolicyWafConfigAccessRuleResponseHeaderManipulationArgs

type PolicyWafConfigAccessRuleResponseHeaderManipulationArgs struct {
	// (Updatable) The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.
	Action pulumi.StringInput `pulumi:"action"`
	// (Updatable) A header field name that conforms to RFC 7230.  Example: `exampleHeaderName`
	Header pulumi.StringInput `pulumi:"header"`
	// (Updatable) The value of the header.
	Value pulumi.StringPtrInput `pulumi:"value"`
}

func (PolicyWafConfigAccessRuleResponseHeaderManipulationArgs) ElementType

func (PolicyWafConfigAccessRuleResponseHeaderManipulationArgs) ToPolicyWafConfigAccessRuleResponseHeaderManipulationOutput

func (PolicyWafConfigAccessRuleResponseHeaderManipulationArgs) ToPolicyWafConfigAccessRuleResponseHeaderManipulationOutputWithContext

func (i PolicyWafConfigAccessRuleResponseHeaderManipulationArgs) ToPolicyWafConfigAccessRuleResponseHeaderManipulationOutputWithContext(ctx context.Context) PolicyWafConfigAccessRuleResponseHeaderManipulationOutput

type PolicyWafConfigAccessRuleResponseHeaderManipulationArray

type PolicyWafConfigAccessRuleResponseHeaderManipulationArray []PolicyWafConfigAccessRuleResponseHeaderManipulationInput

func (PolicyWafConfigAccessRuleResponseHeaderManipulationArray) ElementType

func (PolicyWafConfigAccessRuleResponseHeaderManipulationArray) ToPolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutput

func (i PolicyWafConfigAccessRuleResponseHeaderManipulationArray) ToPolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutput() PolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutput

func (PolicyWafConfigAccessRuleResponseHeaderManipulationArray) ToPolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutputWithContext

func (i PolicyWafConfigAccessRuleResponseHeaderManipulationArray) ToPolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutputWithContext(ctx context.Context) PolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutput

type PolicyWafConfigAccessRuleResponseHeaderManipulationArrayInput

type PolicyWafConfigAccessRuleResponseHeaderManipulationArrayInput interface {
	pulumi.Input

	ToPolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutput() PolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutput
	ToPolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutputWithContext(context.Context) PolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutput
}

PolicyWafConfigAccessRuleResponseHeaderManipulationArrayInput is an input type that accepts PolicyWafConfigAccessRuleResponseHeaderManipulationArray and PolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutput values. You can construct a concrete instance of `PolicyWafConfigAccessRuleResponseHeaderManipulationArrayInput` via:

PolicyWafConfigAccessRuleResponseHeaderManipulationArray{ PolicyWafConfigAccessRuleResponseHeaderManipulationArgs{...} }

type PolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutput

type PolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutput struct{ *pulumi.OutputState }

func (PolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutput) ElementType

func (PolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutput) Index

func (PolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutput) ToPolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutput

func (PolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutput) ToPolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutputWithContext

func (o PolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutput) ToPolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutputWithContext(ctx context.Context) PolicyWafConfigAccessRuleResponseHeaderManipulationArrayOutput

type PolicyWafConfigAccessRuleResponseHeaderManipulationInput

type PolicyWafConfigAccessRuleResponseHeaderManipulationInput interface {
	pulumi.Input

	ToPolicyWafConfigAccessRuleResponseHeaderManipulationOutput() PolicyWafConfigAccessRuleResponseHeaderManipulationOutput
	ToPolicyWafConfigAccessRuleResponseHeaderManipulationOutputWithContext(context.Context) PolicyWafConfigAccessRuleResponseHeaderManipulationOutput
}

PolicyWafConfigAccessRuleResponseHeaderManipulationInput is an input type that accepts PolicyWafConfigAccessRuleResponseHeaderManipulationArgs and PolicyWafConfigAccessRuleResponseHeaderManipulationOutput values. You can construct a concrete instance of `PolicyWafConfigAccessRuleResponseHeaderManipulationInput` via:

PolicyWafConfigAccessRuleResponseHeaderManipulationArgs{...}

type PolicyWafConfigAccessRuleResponseHeaderManipulationOutput

type PolicyWafConfigAccessRuleResponseHeaderManipulationOutput struct{ *pulumi.OutputState }

func (PolicyWafConfigAccessRuleResponseHeaderManipulationOutput) Action

(Updatable) The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.

func (PolicyWafConfigAccessRuleResponseHeaderManipulationOutput) ElementType

func (PolicyWafConfigAccessRuleResponseHeaderManipulationOutput) Header

(Updatable) A header field name that conforms to RFC 7230. Example: `exampleHeaderName`

func (PolicyWafConfigAccessRuleResponseHeaderManipulationOutput) ToPolicyWafConfigAccessRuleResponseHeaderManipulationOutput

func (PolicyWafConfigAccessRuleResponseHeaderManipulationOutput) ToPolicyWafConfigAccessRuleResponseHeaderManipulationOutputWithContext

func (o PolicyWafConfigAccessRuleResponseHeaderManipulationOutput) ToPolicyWafConfigAccessRuleResponseHeaderManipulationOutputWithContext(ctx context.Context) PolicyWafConfigAccessRuleResponseHeaderManipulationOutput

func (PolicyWafConfigAccessRuleResponseHeaderManipulationOutput) Value

(Updatable) The value of the header.

type PolicyWafConfigAddressRateLimiting

type PolicyWafConfigAddressRateLimiting struct {
	// (Updatable) The number of allowed requests per second from one IP address. If unspecified, defaults to `1`.
	AllowedRatePerAddress *int `pulumi:"allowedRatePerAddress"`
	// (Updatable) The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.
	BlockResponseCode *int `pulumi:"blockResponseCode"`
	// (Updatable) Enables or disables the JavaScript challenge Web Application Firewall feature.
	IsEnabled bool `pulumi:"isEnabled"`
	// (Updatable) The maximum number of requests allowed to be queued before subsequent requests are dropped. If unspecified, defaults to `10`.
	MaxDelayedCountPerAddress *int `pulumi:"maxDelayedCountPerAddress"`
}

type PolicyWafConfigAddressRateLimitingArgs

type PolicyWafConfigAddressRateLimitingArgs struct {
	// (Updatable) The number of allowed requests per second from one IP address. If unspecified, defaults to `1`.
	AllowedRatePerAddress pulumi.IntPtrInput `pulumi:"allowedRatePerAddress"`
	// (Updatable) The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.
	BlockResponseCode pulumi.IntPtrInput `pulumi:"blockResponseCode"`
	// (Updatable) Enables or disables the JavaScript challenge Web Application Firewall feature.
	IsEnabled pulumi.BoolInput `pulumi:"isEnabled"`
	// (Updatable) The maximum number of requests allowed to be queued before subsequent requests are dropped. If unspecified, defaults to `10`.
	MaxDelayedCountPerAddress pulumi.IntPtrInput `pulumi:"maxDelayedCountPerAddress"`
}

func (PolicyWafConfigAddressRateLimitingArgs) ElementType

func (PolicyWafConfigAddressRateLimitingArgs) ToPolicyWafConfigAddressRateLimitingOutput

func (i PolicyWafConfigAddressRateLimitingArgs) ToPolicyWafConfigAddressRateLimitingOutput() PolicyWafConfigAddressRateLimitingOutput

func (PolicyWafConfigAddressRateLimitingArgs) ToPolicyWafConfigAddressRateLimitingOutputWithContext

func (i PolicyWafConfigAddressRateLimitingArgs) ToPolicyWafConfigAddressRateLimitingOutputWithContext(ctx context.Context) PolicyWafConfigAddressRateLimitingOutput

func (PolicyWafConfigAddressRateLimitingArgs) ToPolicyWafConfigAddressRateLimitingPtrOutput

func (i PolicyWafConfigAddressRateLimitingArgs) ToPolicyWafConfigAddressRateLimitingPtrOutput() PolicyWafConfigAddressRateLimitingPtrOutput

func (PolicyWafConfigAddressRateLimitingArgs) ToPolicyWafConfigAddressRateLimitingPtrOutputWithContext

func (i PolicyWafConfigAddressRateLimitingArgs) ToPolicyWafConfigAddressRateLimitingPtrOutputWithContext(ctx context.Context) PolicyWafConfigAddressRateLimitingPtrOutput

type PolicyWafConfigAddressRateLimitingInput

type PolicyWafConfigAddressRateLimitingInput interface {
	pulumi.Input

	ToPolicyWafConfigAddressRateLimitingOutput() PolicyWafConfigAddressRateLimitingOutput
	ToPolicyWafConfigAddressRateLimitingOutputWithContext(context.Context) PolicyWafConfigAddressRateLimitingOutput
}

PolicyWafConfigAddressRateLimitingInput is an input type that accepts PolicyWafConfigAddressRateLimitingArgs and PolicyWafConfigAddressRateLimitingOutput values. You can construct a concrete instance of `PolicyWafConfigAddressRateLimitingInput` via:

PolicyWafConfigAddressRateLimitingArgs{...}

type PolicyWafConfigAddressRateLimitingOutput

type PolicyWafConfigAddressRateLimitingOutput struct{ *pulumi.OutputState }

func (PolicyWafConfigAddressRateLimitingOutput) AllowedRatePerAddress

(Updatable) The number of allowed requests per second from one IP address. If unspecified, defaults to `1`.

func (PolicyWafConfigAddressRateLimitingOutput) BlockResponseCode

(Updatable) The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.

func (PolicyWafConfigAddressRateLimitingOutput) ElementType

func (PolicyWafConfigAddressRateLimitingOutput) IsEnabled

(Updatable) Enables or disables the JavaScript challenge Web Application Firewall feature.

func (PolicyWafConfigAddressRateLimitingOutput) MaxDelayedCountPerAddress

func (o PolicyWafConfigAddressRateLimitingOutput) MaxDelayedCountPerAddress() pulumi.IntPtrOutput

(Updatable) The maximum number of requests allowed to be queued before subsequent requests are dropped. If unspecified, defaults to `10`.

func (PolicyWafConfigAddressRateLimitingOutput) ToPolicyWafConfigAddressRateLimitingOutput

func (o PolicyWafConfigAddressRateLimitingOutput) ToPolicyWafConfigAddressRateLimitingOutput() PolicyWafConfigAddressRateLimitingOutput

func (PolicyWafConfigAddressRateLimitingOutput) ToPolicyWafConfigAddressRateLimitingOutputWithContext

func (o PolicyWafConfigAddressRateLimitingOutput) ToPolicyWafConfigAddressRateLimitingOutputWithContext(ctx context.Context) PolicyWafConfigAddressRateLimitingOutput

func (PolicyWafConfigAddressRateLimitingOutput) ToPolicyWafConfigAddressRateLimitingPtrOutput

func (o PolicyWafConfigAddressRateLimitingOutput) ToPolicyWafConfigAddressRateLimitingPtrOutput() PolicyWafConfigAddressRateLimitingPtrOutput

func (PolicyWafConfigAddressRateLimitingOutput) ToPolicyWafConfigAddressRateLimitingPtrOutputWithContext

func (o PolicyWafConfigAddressRateLimitingOutput) ToPolicyWafConfigAddressRateLimitingPtrOutputWithContext(ctx context.Context) PolicyWafConfigAddressRateLimitingPtrOutput

type PolicyWafConfigAddressRateLimitingPtrInput

type PolicyWafConfigAddressRateLimitingPtrInput interface {
	pulumi.Input

	ToPolicyWafConfigAddressRateLimitingPtrOutput() PolicyWafConfigAddressRateLimitingPtrOutput
	ToPolicyWafConfigAddressRateLimitingPtrOutputWithContext(context.Context) PolicyWafConfigAddressRateLimitingPtrOutput
}

PolicyWafConfigAddressRateLimitingPtrInput is an input type that accepts PolicyWafConfigAddressRateLimitingArgs, PolicyWafConfigAddressRateLimitingPtr and PolicyWafConfigAddressRateLimitingPtrOutput values. You can construct a concrete instance of `PolicyWafConfigAddressRateLimitingPtrInput` via:

        PolicyWafConfigAddressRateLimitingArgs{...}

or:

        nil

type PolicyWafConfigAddressRateLimitingPtrOutput

type PolicyWafConfigAddressRateLimitingPtrOutput struct{ *pulumi.OutputState }

func (PolicyWafConfigAddressRateLimitingPtrOutput) AllowedRatePerAddress

(Updatable) The number of allowed requests per second from one IP address. If unspecified, defaults to `1`.

func (PolicyWafConfigAddressRateLimitingPtrOutput) BlockResponseCode

(Updatable) The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.

func (PolicyWafConfigAddressRateLimitingPtrOutput) Elem

func (PolicyWafConfigAddressRateLimitingPtrOutput) ElementType

func (PolicyWafConfigAddressRateLimitingPtrOutput) IsEnabled

(Updatable) Enables or disables the JavaScript challenge Web Application Firewall feature.

func (PolicyWafConfigAddressRateLimitingPtrOutput) MaxDelayedCountPerAddress

func (o PolicyWafConfigAddressRateLimitingPtrOutput) MaxDelayedCountPerAddress() pulumi.IntPtrOutput

(Updatable) The maximum number of requests allowed to be queued before subsequent requests are dropped. If unspecified, defaults to `10`.

func (PolicyWafConfigAddressRateLimitingPtrOutput) ToPolicyWafConfigAddressRateLimitingPtrOutput

func (o PolicyWafConfigAddressRateLimitingPtrOutput) ToPolicyWafConfigAddressRateLimitingPtrOutput() PolicyWafConfigAddressRateLimitingPtrOutput

func (PolicyWafConfigAddressRateLimitingPtrOutput) ToPolicyWafConfigAddressRateLimitingPtrOutputWithContext

func (o PolicyWafConfigAddressRateLimitingPtrOutput) ToPolicyWafConfigAddressRateLimitingPtrOutputWithContext(ctx context.Context) PolicyWafConfigAddressRateLimitingPtrOutput

type PolicyWafConfigArgs

type PolicyWafConfigArgs struct {
	// (Updatable) The access rules applied to the Web Application Firewall. Access rules allow custom content access policies to be defined and `ALLOW`, `DETECT`, or `BLOCK` actions to be taken on a request when specified criteria are met.
	AccessRules PolicyWafConfigAccessRuleArrayInput `pulumi:"accessRules"`
	// (Updatable) The settings used to limit the number of requests from an IP address.
	AddressRateLimiting PolicyWafConfigAddressRateLimitingPtrInput `pulumi:"addressRateLimiting"`
	// (Updatable) A list of caching rules applied to the web application.
	CachingRules PolicyWafConfigCachingRuleArrayInput `pulumi:"cachingRules"`
	// (Updatable) A list of CAPTCHA challenge settings. CAPTCHAs challenge requests to ensure a human is attempting to reach the specified URL and not a bot.
	Captchas PolicyWafConfigCaptchaArrayInput `pulumi:"captchas"`
	// (Updatable) A list of the custom protection rule OCIDs and their actions.
	CustomProtectionRules PolicyWafConfigCustomProtectionRuleArrayInput `pulumi:"customProtectionRules"`
	// (Updatable) The device fingerprint challenge settings. Blocks bots based on unique device fingerprint information.
	DeviceFingerprintChallenge PolicyWafConfigDeviceFingerprintChallengePtrInput `pulumi:"deviceFingerprintChallenge"`
	// (Updatable) The human interaction challenge settings. Detects natural human interactions such as mouse movements, time on site, and page scrolling to identify bots.
	HumanInteractionChallenge PolicyWafConfigHumanInteractionChallengePtrInput `pulumi:"humanInteractionChallenge"`
	// (Updatable) The JavaScript challenge settings. Blocks bots by challenging requests from browsers that have no JavaScript support.
	JsChallenge PolicyWafConfigJsChallengePtrInput `pulumi:"jsChallenge"`
	// (Updatable) The key in the map of origins referencing the origin used for the Web Application Firewall. The origin must already be included in `Origins`. Required when creating the `WafConfig` resource, but is not required upon updating the configuration.
	Origin pulumi.StringPtrInput `pulumi:"origin"`
	// (Updatable) The map of origin groups and their keys used to associate origins to the `wafConfig`. Origin groups allow you to apply weights to groups of origins for load balancing purposes. Origins with higher weights will receive larger proportions of client requests. To add additional origins to your WAAS policy, update the `origins` field of a `UpdateWaasPolicy` request.
	OriginGroups pulumi.StringArrayInput `pulumi:"originGroups"`
	// (Updatable) The settings applied to protection rules.
	ProtectionSettings PolicyWafConfigProtectionSettingsPtrInput `pulumi:"protectionSettings"`
	// (Updatable) A list of IP addresses that bypass the Web Application Firewall.
	Whitelists PolicyWafConfigWhitelistArrayInput `pulumi:"whitelists"`
}

func (PolicyWafConfigArgs) ElementType

func (PolicyWafConfigArgs) ElementType() reflect.Type

func (PolicyWafConfigArgs) ToPolicyWafConfigOutput

func (i PolicyWafConfigArgs) ToPolicyWafConfigOutput() PolicyWafConfigOutput

func (PolicyWafConfigArgs) ToPolicyWafConfigOutputWithContext

func (i PolicyWafConfigArgs) ToPolicyWafConfigOutputWithContext(ctx context.Context) PolicyWafConfigOutput

func (PolicyWafConfigArgs) ToPolicyWafConfigPtrOutput

func (i PolicyWafConfigArgs) ToPolicyWafConfigPtrOutput() PolicyWafConfigPtrOutput

func (PolicyWafConfigArgs) ToPolicyWafConfigPtrOutputWithContext

func (i PolicyWafConfigArgs) ToPolicyWafConfigPtrOutputWithContext(ctx context.Context) PolicyWafConfigPtrOutput

type PolicyWafConfigCachingRule

type PolicyWafConfigCachingRule struct {
	// (Updatable) The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.
	Action string `pulumi:"action"`
	// (Updatable) The duration to cache content for the caching rule, specified in ISO 8601 extended format. Supported units: seconds, minutes, hours, days, weeks, months. The maximum value that can be set for any unit is `99`. Mixing of multiple units is not supported. Only applies when the `action` is set to `CACHE`. Example: `PT1H`
	CachingDuration *string `pulumi:"cachingDuration"`
	// (Updatable) The duration to cache content in the user's browser, specified in ISO 8601 extended format. Supported units: seconds, minutes, hours, days, weeks, months. The maximum value that can be set for any unit is `99`. Mixing of multiple units is not supported. Only applies when the `action` is set to `CACHE`. Example: `PT1H`
	ClientCachingDuration *string `pulumi:"clientCachingDuration"`
	// (Updatable) When defined, the JavaScript Challenge would be applied only for the requests that matched all the listed conditions.
	Criterias []PolicyWafConfigCachingRuleCriteria `pulumi:"criterias"`
	// (Updatable) Enables or disables client caching. Browsers use the `Cache-Control` header value for caching content locally in the browser. This setting overrides the addition of a `Cache-Control` header in responses.
	IsClientCachingEnabled *bool `pulumi:"isClientCachingEnabled"`
	// (Updatable) The unique key for the caching rule.
	Key *string `pulumi:"key"`
	// (Updatable) The unique name of the whitelist.
	//
	// ** IMPORTANT **
	// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
	Name string `pulumi:"name"`
}

type PolicyWafConfigCachingRuleArgs

type PolicyWafConfigCachingRuleArgs struct {
	// (Updatable) The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.
	Action pulumi.StringInput `pulumi:"action"`
	// (Updatable) The duration to cache content for the caching rule, specified in ISO 8601 extended format. Supported units: seconds, minutes, hours, days, weeks, months. The maximum value that can be set for any unit is `99`. Mixing of multiple units is not supported. Only applies when the `action` is set to `CACHE`. Example: `PT1H`
	CachingDuration pulumi.StringPtrInput `pulumi:"cachingDuration"`
	// (Updatable) The duration to cache content in the user's browser, specified in ISO 8601 extended format. Supported units: seconds, minutes, hours, days, weeks, months. The maximum value that can be set for any unit is `99`. Mixing of multiple units is not supported. Only applies when the `action` is set to `CACHE`. Example: `PT1H`
	ClientCachingDuration pulumi.StringPtrInput `pulumi:"clientCachingDuration"`
	// (Updatable) When defined, the JavaScript Challenge would be applied only for the requests that matched all the listed conditions.
	Criterias PolicyWafConfigCachingRuleCriteriaArrayInput `pulumi:"criterias"`
	// (Updatable) Enables or disables client caching. Browsers use the `Cache-Control` header value for caching content locally in the browser. This setting overrides the addition of a `Cache-Control` header in responses.
	IsClientCachingEnabled pulumi.BoolPtrInput `pulumi:"isClientCachingEnabled"`
	// (Updatable) The unique key for the caching rule.
	Key pulumi.StringPtrInput `pulumi:"key"`
	// (Updatable) The unique name of the whitelist.
	//
	// ** IMPORTANT **
	// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
	Name pulumi.StringInput `pulumi:"name"`
}

func (PolicyWafConfigCachingRuleArgs) ElementType

func (PolicyWafConfigCachingRuleArgs) ToPolicyWafConfigCachingRuleOutput

func (i PolicyWafConfigCachingRuleArgs) ToPolicyWafConfigCachingRuleOutput() PolicyWafConfigCachingRuleOutput

func (PolicyWafConfigCachingRuleArgs) ToPolicyWafConfigCachingRuleOutputWithContext

func (i PolicyWafConfigCachingRuleArgs) ToPolicyWafConfigCachingRuleOutputWithContext(ctx context.Context) PolicyWafConfigCachingRuleOutput

type PolicyWafConfigCachingRuleArray

type PolicyWafConfigCachingRuleArray []PolicyWafConfigCachingRuleInput

func (PolicyWafConfigCachingRuleArray) ElementType

func (PolicyWafConfigCachingRuleArray) ToPolicyWafConfigCachingRuleArrayOutput

func (i PolicyWafConfigCachingRuleArray) ToPolicyWafConfigCachingRuleArrayOutput() PolicyWafConfigCachingRuleArrayOutput

func (PolicyWafConfigCachingRuleArray) ToPolicyWafConfigCachingRuleArrayOutputWithContext

func (i PolicyWafConfigCachingRuleArray) ToPolicyWafConfigCachingRuleArrayOutputWithContext(ctx context.Context) PolicyWafConfigCachingRuleArrayOutput

type PolicyWafConfigCachingRuleArrayInput

type PolicyWafConfigCachingRuleArrayInput interface {
	pulumi.Input

	ToPolicyWafConfigCachingRuleArrayOutput() PolicyWafConfigCachingRuleArrayOutput
	ToPolicyWafConfigCachingRuleArrayOutputWithContext(context.Context) PolicyWafConfigCachingRuleArrayOutput
}

PolicyWafConfigCachingRuleArrayInput is an input type that accepts PolicyWafConfigCachingRuleArray and PolicyWafConfigCachingRuleArrayOutput values. You can construct a concrete instance of `PolicyWafConfigCachingRuleArrayInput` via:

PolicyWafConfigCachingRuleArray{ PolicyWafConfigCachingRuleArgs{...} }

type PolicyWafConfigCachingRuleArrayOutput

type PolicyWafConfigCachingRuleArrayOutput struct{ *pulumi.OutputState }

func (PolicyWafConfigCachingRuleArrayOutput) ElementType

func (PolicyWafConfigCachingRuleArrayOutput) Index

func (PolicyWafConfigCachingRuleArrayOutput) ToPolicyWafConfigCachingRuleArrayOutput

func (o PolicyWafConfigCachingRuleArrayOutput) ToPolicyWafConfigCachingRuleArrayOutput() PolicyWafConfigCachingRuleArrayOutput

func (PolicyWafConfigCachingRuleArrayOutput) ToPolicyWafConfigCachingRuleArrayOutputWithContext

func (o PolicyWafConfigCachingRuleArrayOutput) ToPolicyWafConfigCachingRuleArrayOutputWithContext(ctx context.Context) PolicyWafConfigCachingRuleArrayOutput

type PolicyWafConfigCachingRuleCriteria

type PolicyWafConfigCachingRuleCriteria struct {
	// (Updatable) The criteria the access rule and JavaScript Challenge uses to determine if action should be taken on a request.
	// * **URL_IS:** Matches if the concatenation of request URL path and query is identical to the contents of the `value` field. URL must start with a `/`.
	// * **URL_IS_NOT:** Matches if the concatenation of request URL path and query is not identical to the contents of the `value` field. URL must start with a `/`.
	// * **URL_STARTS_WITH:** Matches if the concatenation of request URL path and query starts with the contents of the `value` field. URL must start with a `/`.
	// * **URL_PART_ENDS_WITH:** Matches if the concatenation of request URL path and query ends with the contents of the `value` field.
	// * **URL_PART_CONTAINS:** Matches if the concatenation of request URL path and query contains the contents of the `value` field.
	// * **URL_REGEX:** Matches if the concatenation of request URL path and query is described by the regular expression in the value field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org).
	// * **URL_DOES_NOT_MATCH_REGEX:** Matches if the concatenation of request URL path and query is not described by the regular expression in the `value` field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org).
	// * **URL_DOES_NOT_START_WITH:** Matches if the concatenation of request URL path and query does not start with the contents of the `value` field.
	// * **URL_PART_DOES_NOT_CONTAIN:** Matches if the concatenation of request URL path and query does not contain the contents of the `value` field.
	// * **URL_PART_DOES_NOT_END_WITH:** Matches if the concatenation of request URL path and query does not end with the contents of the `value` field.
	// * **IP_IS:** Matches if the request originates from one of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30"
	// * **IP_IS_NOT:** Matches if the request does not originate from any of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30"
	// * **IP_IN_LIST:** Matches if the request originates from one of the IP addresses contained in the referenced address list. The `value` in this case is OCID of the address list.
	// * **IP_NOT_IN_LIST:** Matches if the request does not originate from any IP address contained in the referenced address list. The `value` field in this case is OCID of the address list.
	// * **HTTP_HEADER_CONTAINS:** The HTTP_HEADER_CONTAINS criteria is defined using a compound value separated by a colon: a header field name and a header field value. `host:test.example.com` is an example of a criteria value where `host` is the header field name and `test.example.com` is the header field value. A request matches when the header field name is a case insensitive match and the header field value is a case insensitive, substring match. *Example:* With a criteria value of `host:test.example.com`, where `host` is the name of the field and `test.example.com` is the value of the host field, a request with the header values, `Host: www.test.example.com` will match, where as a request with header values of `host: www.example.com` or `host: test.sub.example.com` will not match.
	// * **HTTP_METHOD_IS:** Matches if the request method is identical to one of the values listed in field. The `value` in this case is string with one or multiple HTTP methods separated by new line symbol \n The list of available methods: `GET`, `HEAD`, `POST`, `PUT`, `DELETE`, `CONNECT`, `OPTIONS`, `TRACE`, `PATCH`
	//
	// *Example:* "GET\nPOST"
	// * **HTTP_METHOD_IS_NOT:** Matches if the request is not identical to any of the contents of the `value` field. The `value` in this case is string with one or multiple HTTP methods separated by new line symbol \n The list of available methods: `GET`, `HEAD`, `POST`, `PUT`, `DELETE`, `CONNECT`, `OPTIONS`, `TRACE`, `PATCH`
	//
	// *Example:* "GET\nPOST"
	// * **COUNTRY_IS:** Matches if the request originates from one of countries in the `value` field. The `value` in this case is string with one or multiple countries separated by new line symbol \n Country codes are in ISO 3166-1 alpha-2 format. For a list of codes, see [ISO's website](https://www.iso.org/obp/ui/#search/code/). *Example:* "AL\nDZ\nAM"
	// * **COUNTRY_IS_NOT:** Matches if the request does not originate from any of countries in the `value` field. The `value` in this case is string with one or multiple countries separated by new line symbol \n Country codes are in ISO 3166-1 alpha-2 format. For a list of codes, see [ISO's website](https://www.iso.org/obp/ui/#search/code/). *Example:* "AL\nDZ\nAM"
	// * **USER_AGENT_IS:** Matches if the requesting user agent is identical to the contents of the `value` field. *Example:* `Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:35.0) Gecko/20100101 Firefox/35.0`
	// * **USER_AGENT_IS_NOT:** Matches if the requesting user agent is not identical to the contents of the `value` field. *Example:* `Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:35.0) Gecko/20100101 Firefox/35.0`
	Condition string `pulumi:"condition"`
	// (Updatable) The value of the header.
	Value string `pulumi:"value"`
}

type PolicyWafConfigCachingRuleCriteriaArgs

type PolicyWafConfigCachingRuleCriteriaArgs struct {
	// (Updatable) The criteria the access rule and JavaScript Challenge uses to determine if action should be taken on a request.
	// * **URL_IS:** Matches if the concatenation of request URL path and query is identical to the contents of the `value` field. URL must start with a `/`.
	// * **URL_IS_NOT:** Matches if the concatenation of request URL path and query is not identical to the contents of the `value` field. URL must start with a `/`.
	// * **URL_STARTS_WITH:** Matches if the concatenation of request URL path and query starts with the contents of the `value` field. URL must start with a `/`.
	// * **URL_PART_ENDS_WITH:** Matches if the concatenation of request URL path and query ends with the contents of the `value` field.
	// * **URL_PART_CONTAINS:** Matches if the concatenation of request URL path and query contains the contents of the `value` field.
	// * **URL_REGEX:** Matches if the concatenation of request URL path and query is described by the regular expression in the value field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org).
	// * **URL_DOES_NOT_MATCH_REGEX:** Matches if the concatenation of request URL path and query is not described by the regular expression in the `value` field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org).
	// * **URL_DOES_NOT_START_WITH:** Matches if the concatenation of request URL path and query does not start with the contents of the `value` field.
	// * **URL_PART_DOES_NOT_CONTAIN:** Matches if the concatenation of request URL path and query does not contain the contents of the `value` field.
	// * **URL_PART_DOES_NOT_END_WITH:** Matches if the concatenation of request URL path and query does not end with the contents of the `value` field.
	// * **IP_IS:** Matches if the request originates from one of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30"
	// * **IP_IS_NOT:** Matches if the request does not originate from any of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30"
	// * **IP_IN_LIST:** Matches if the request originates from one of the IP addresses contained in the referenced address list. The `value` in this case is OCID of the address list.
	// * **IP_NOT_IN_LIST:** Matches if the request does not originate from any IP address contained in the referenced address list. The `value` field in this case is OCID of the address list.
	// * **HTTP_HEADER_CONTAINS:** The HTTP_HEADER_CONTAINS criteria is defined using a compound value separated by a colon: a header field name and a header field value. `host:test.example.com` is an example of a criteria value where `host` is the header field name and `test.example.com` is the header field value. A request matches when the header field name is a case insensitive match and the header field value is a case insensitive, substring match. *Example:* With a criteria value of `host:test.example.com`, where `host` is the name of the field and `test.example.com` is the value of the host field, a request with the header values, `Host: www.test.example.com` will match, where as a request with header values of `host: www.example.com` or `host: test.sub.example.com` will not match.
	// * **HTTP_METHOD_IS:** Matches if the request method is identical to one of the values listed in field. The `value` in this case is string with one or multiple HTTP methods separated by new line symbol \n The list of available methods: `GET`, `HEAD`, `POST`, `PUT`, `DELETE`, `CONNECT`, `OPTIONS`, `TRACE`, `PATCH`
	//
	// *Example:* "GET\nPOST"
	// * **HTTP_METHOD_IS_NOT:** Matches if the request is not identical to any of the contents of the `value` field. The `value` in this case is string with one or multiple HTTP methods separated by new line symbol \n The list of available methods: `GET`, `HEAD`, `POST`, `PUT`, `DELETE`, `CONNECT`, `OPTIONS`, `TRACE`, `PATCH`
	//
	// *Example:* "GET\nPOST"
	// * **COUNTRY_IS:** Matches if the request originates from one of countries in the `value` field. The `value` in this case is string with one or multiple countries separated by new line symbol \n Country codes are in ISO 3166-1 alpha-2 format. For a list of codes, see [ISO's website](https://www.iso.org/obp/ui/#search/code/). *Example:* "AL\nDZ\nAM"
	// * **COUNTRY_IS_NOT:** Matches if the request does not originate from any of countries in the `value` field. The `value` in this case is string with one or multiple countries separated by new line symbol \n Country codes are in ISO 3166-1 alpha-2 format. For a list of codes, see [ISO's website](https://www.iso.org/obp/ui/#search/code/). *Example:* "AL\nDZ\nAM"
	// * **USER_AGENT_IS:** Matches if the requesting user agent is identical to the contents of the `value` field. *Example:* `Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:35.0) Gecko/20100101 Firefox/35.0`
	// * **USER_AGENT_IS_NOT:** Matches if the requesting user agent is not identical to the contents of the `value` field. *Example:* `Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:35.0) Gecko/20100101 Firefox/35.0`
	Condition pulumi.StringInput `pulumi:"condition"`
	// (Updatable) The value of the header.
	Value pulumi.StringInput `pulumi:"value"`
}

func (PolicyWafConfigCachingRuleCriteriaArgs) ElementType

func (PolicyWafConfigCachingRuleCriteriaArgs) ToPolicyWafConfigCachingRuleCriteriaOutput

func (i PolicyWafConfigCachingRuleCriteriaArgs) ToPolicyWafConfigCachingRuleCriteriaOutput() PolicyWafConfigCachingRuleCriteriaOutput

func (PolicyWafConfigCachingRuleCriteriaArgs) ToPolicyWafConfigCachingRuleCriteriaOutputWithContext

func (i PolicyWafConfigCachingRuleCriteriaArgs) ToPolicyWafConfigCachingRuleCriteriaOutputWithContext(ctx context.Context) PolicyWafConfigCachingRuleCriteriaOutput

type PolicyWafConfigCachingRuleCriteriaArray

type PolicyWafConfigCachingRuleCriteriaArray []PolicyWafConfigCachingRuleCriteriaInput

func (PolicyWafConfigCachingRuleCriteriaArray) ElementType

func (PolicyWafConfigCachingRuleCriteriaArray) ToPolicyWafConfigCachingRuleCriteriaArrayOutput

func (i PolicyWafConfigCachingRuleCriteriaArray) ToPolicyWafConfigCachingRuleCriteriaArrayOutput() PolicyWafConfigCachingRuleCriteriaArrayOutput

func (PolicyWafConfigCachingRuleCriteriaArray) ToPolicyWafConfigCachingRuleCriteriaArrayOutputWithContext

func (i PolicyWafConfigCachingRuleCriteriaArray) ToPolicyWafConfigCachingRuleCriteriaArrayOutputWithContext(ctx context.Context) PolicyWafConfigCachingRuleCriteriaArrayOutput

type PolicyWafConfigCachingRuleCriteriaArrayInput

type PolicyWafConfigCachingRuleCriteriaArrayInput interface {
	pulumi.Input

	ToPolicyWafConfigCachingRuleCriteriaArrayOutput() PolicyWafConfigCachingRuleCriteriaArrayOutput
	ToPolicyWafConfigCachingRuleCriteriaArrayOutputWithContext(context.Context) PolicyWafConfigCachingRuleCriteriaArrayOutput
}

PolicyWafConfigCachingRuleCriteriaArrayInput is an input type that accepts PolicyWafConfigCachingRuleCriteriaArray and PolicyWafConfigCachingRuleCriteriaArrayOutput values. You can construct a concrete instance of `PolicyWafConfigCachingRuleCriteriaArrayInput` via:

PolicyWafConfigCachingRuleCriteriaArray{ PolicyWafConfigCachingRuleCriteriaArgs{...} }

type PolicyWafConfigCachingRuleCriteriaArrayOutput

type PolicyWafConfigCachingRuleCriteriaArrayOutput struct{ *pulumi.OutputState }

func (PolicyWafConfigCachingRuleCriteriaArrayOutput) ElementType

func (PolicyWafConfigCachingRuleCriteriaArrayOutput) Index

func (PolicyWafConfigCachingRuleCriteriaArrayOutput) ToPolicyWafConfigCachingRuleCriteriaArrayOutput

func (o PolicyWafConfigCachingRuleCriteriaArrayOutput) ToPolicyWafConfigCachingRuleCriteriaArrayOutput() PolicyWafConfigCachingRuleCriteriaArrayOutput

func (PolicyWafConfigCachingRuleCriteriaArrayOutput) ToPolicyWafConfigCachingRuleCriteriaArrayOutputWithContext

func (o PolicyWafConfigCachingRuleCriteriaArrayOutput) ToPolicyWafConfigCachingRuleCriteriaArrayOutputWithContext(ctx context.Context) PolicyWafConfigCachingRuleCriteriaArrayOutput

type PolicyWafConfigCachingRuleCriteriaInput

type PolicyWafConfigCachingRuleCriteriaInput interface {
	pulumi.Input

	ToPolicyWafConfigCachingRuleCriteriaOutput() PolicyWafConfigCachingRuleCriteriaOutput
	ToPolicyWafConfigCachingRuleCriteriaOutputWithContext(context.Context) PolicyWafConfigCachingRuleCriteriaOutput
}

PolicyWafConfigCachingRuleCriteriaInput is an input type that accepts PolicyWafConfigCachingRuleCriteriaArgs and PolicyWafConfigCachingRuleCriteriaOutput values. You can construct a concrete instance of `PolicyWafConfigCachingRuleCriteriaInput` via:

PolicyWafConfigCachingRuleCriteriaArgs{...}

type PolicyWafConfigCachingRuleCriteriaOutput

type PolicyWafConfigCachingRuleCriteriaOutput struct{ *pulumi.OutputState }

func (PolicyWafConfigCachingRuleCriteriaOutput) Condition

(Updatable) The criteria the access rule and JavaScript Challenge uses to determine if action should be taken on a request. * **URL_IS:** Matches if the concatenation of request URL path and query is identical to the contents of the `value` field. URL must start with a `/`. * **URL_IS_NOT:** Matches if the concatenation of request URL path and query is not identical to the contents of the `value` field. URL must start with a `/`. * **URL_STARTS_WITH:** Matches if the concatenation of request URL path and query starts with the contents of the `value` field. URL must start with a `/`. * **URL_PART_ENDS_WITH:** Matches if the concatenation of request URL path and query ends with the contents of the `value` field. * **URL_PART_CONTAINS:** Matches if the concatenation of request URL path and query contains the contents of the `value` field. * **URL_REGEX:** Matches if the concatenation of request URL path and query is described by the regular expression in the value field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org). * **URL_DOES_NOT_MATCH_REGEX:** Matches if the concatenation of request URL path and query is not described by the regular expression in the `value` field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org). * **URL_DOES_NOT_START_WITH:** Matches if the concatenation of request URL path and query does not start with the contents of the `value` field. * **URL_PART_DOES_NOT_CONTAIN:** Matches if the concatenation of request URL path and query does not contain the contents of the `value` field. * **URL_PART_DOES_NOT_END_WITH:** Matches if the concatenation of request URL path and query does not end with the contents of the `value` field. * **IP_IS:** Matches if the request originates from one of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30" * **IP_IS_NOT:** Matches if the request does not originate from any of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30" * **IP_IN_LIST:** Matches if the request originates from one of the IP addresses contained in the referenced address list. The `value` in this case is OCID of the address list. * **IP_NOT_IN_LIST:** Matches if the request does not originate from any IP address contained in the referenced address list. The `value` field in this case is OCID of the address list. * **HTTP_HEADER_CONTAINS:** The HTTP_HEADER_CONTAINS criteria is defined using a compound value separated by a colon: a header field name and a header field value. `host:test.example.com` is an example of a criteria value where `host` is the header field name and `test.example.com` is the header field value. A request matches when the header field name is a case insensitive match and the header field value is a case insensitive, substring match. *Example:* With a criteria value of `host:test.example.com`, where `host` is the name of the field and `test.example.com` is the value of the host field, a request with the header values, `Host: www.test.example.com` will match, where as a request with header values of `host: www.example.com` or `host: test.sub.example.com` will not match. * **HTTP_METHOD_IS:** Matches if the request method is identical to one of the values listed in field. The `value` in this case is string with one or multiple HTTP methods separated by new line symbol \n The list of available methods: `GET`, `HEAD`, `POST`, `PUT`, `DELETE`, `CONNECT`, `OPTIONS`, `TRACE`, `PATCH`

*Example:* "GET\nPOST" * **HTTP_METHOD_IS_NOT:** Matches if the request is not identical to any of the contents of the `value` field. The `value` in this case is string with one or multiple HTTP methods separated by new line symbol \n The list of available methods: `GET`, `HEAD`, `POST`, `PUT`, `DELETE`, `CONNECT`, `OPTIONS`, `TRACE`, `PATCH`

*Example:* "GET\nPOST" * **COUNTRY_IS:** Matches if the request originates from one of countries in the `value` field. The `value` in this case is string with one or multiple countries separated by new line symbol \n Country codes are in ISO 3166-1 alpha-2 format. For a list of codes, see [ISO's website](https://www.iso.org/obp/ui/#search/code/). *Example:* "AL\nDZ\nAM" * **COUNTRY_IS_NOT:** Matches if the request does not originate from any of countries in the `value` field. The `value` in this case is string with one or multiple countries separated by new line symbol \n Country codes are in ISO 3166-1 alpha-2 format. For a list of codes, see [ISO's website](https://www.iso.org/obp/ui/#search/code/). *Example:* "AL\nDZ\nAM" * **USER_AGENT_IS:** Matches if the requesting user agent is identical to the contents of the `value` field. *Example:* `Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:35.0) Gecko/20100101 Firefox/35.0` * **USER_AGENT_IS_NOT:** Matches if the requesting user agent is not identical to the contents of the `value` field. *Example:* `Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:35.0) Gecko/20100101 Firefox/35.0`

func (PolicyWafConfigCachingRuleCriteriaOutput) ElementType

func (PolicyWafConfigCachingRuleCriteriaOutput) ToPolicyWafConfigCachingRuleCriteriaOutput

func (o PolicyWafConfigCachingRuleCriteriaOutput) ToPolicyWafConfigCachingRuleCriteriaOutput() PolicyWafConfigCachingRuleCriteriaOutput

func (PolicyWafConfigCachingRuleCriteriaOutput) ToPolicyWafConfigCachingRuleCriteriaOutputWithContext

func (o PolicyWafConfigCachingRuleCriteriaOutput) ToPolicyWafConfigCachingRuleCriteriaOutputWithContext(ctx context.Context) PolicyWafConfigCachingRuleCriteriaOutput

func (PolicyWafConfigCachingRuleCriteriaOutput) Value

(Updatable) The value of the header.

type PolicyWafConfigCachingRuleInput

type PolicyWafConfigCachingRuleInput interface {
	pulumi.Input

	ToPolicyWafConfigCachingRuleOutput() PolicyWafConfigCachingRuleOutput
	ToPolicyWafConfigCachingRuleOutputWithContext(context.Context) PolicyWafConfigCachingRuleOutput
}

PolicyWafConfigCachingRuleInput is an input type that accepts PolicyWafConfigCachingRuleArgs and PolicyWafConfigCachingRuleOutput values. You can construct a concrete instance of `PolicyWafConfigCachingRuleInput` via:

PolicyWafConfigCachingRuleArgs{...}

type PolicyWafConfigCachingRuleOutput

type PolicyWafConfigCachingRuleOutput struct{ *pulumi.OutputState }

func (PolicyWafConfigCachingRuleOutput) Action

(Updatable) The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.

func (PolicyWafConfigCachingRuleOutput) CachingDuration

(Updatable) The duration to cache content for the caching rule, specified in ISO 8601 extended format. Supported units: seconds, minutes, hours, days, weeks, months. The maximum value that can be set for any unit is `99`. Mixing of multiple units is not supported. Only applies when the `action` is set to `CACHE`. Example: `PT1H`

func (PolicyWafConfigCachingRuleOutput) ClientCachingDuration

func (o PolicyWafConfigCachingRuleOutput) ClientCachingDuration() pulumi.StringPtrOutput

(Updatable) The duration to cache content in the user's browser, specified in ISO 8601 extended format. Supported units: seconds, minutes, hours, days, weeks, months. The maximum value that can be set for any unit is `99`. Mixing of multiple units is not supported. Only applies when the `action` is set to `CACHE`. Example: `PT1H`

func (PolicyWafConfigCachingRuleOutput) Criterias

(Updatable) When defined, the JavaScript Challenge would be applied only for the requests that matched all the listed conditions.

func (PolicyWafConfigCachingRuleOutput) ElementType

func (PolicyWafConfigCachingRuleOutput) IsClientCachingEnabled

func (o PolicyWafConfigCachingRuleOutput) IsClientCachingEnabled() pulumi.BoolPtrOutput

(Updatable) Enables or disables client caching. Browsers use the `Cache-Control` header value for caching content locally in the browser. This setting overrides the addition of a `Cache-Control` header in responses.

func (PolicyWafConfigCachingRuleOutput) Key

(Updatable) The unique key for the caching rule.

func (PolicyWafConfigCachingRuleOutput) Name

(Updatable) The unique name of the whitelist.

** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

func (PolicyWafConfigCachingRuleOutput) ToPolicyWafConfigCachingRuleOutput

func (o PolicyWafConfigCachingRuleOutput) ToPolicyWafConfigCachingRuleOutput() PolicyWafConfigCachingRuleOutput

func (PolicyWafConfigCachingRuleOutput) ToPolicyWafConfigCachingRuleOutputWithContext

func (o PolicyWafConfigCachingRuleOutput) ToPolicyWafConfigCachingRuleOutputWithContext(ctx context.Context) PolicyWafConfigCachingRuleOutput

type PolicyWafConfigCaptcha

type PolicyWafConfigCaptcha struct {
	// (Updatable) The text to show when incorrect CAPTCHA text is entered. If unspecified, defaults to `The CAPTCHA was incorrect. Try again.`
	FailureMessage string `pulumi:"failureMessage"`
	// (Updatable) The text to show in the footer when showing a CAPTCHA challenge. If unspecified, defaults to 'Enter the letters and numbers as they are shown in the image above.'
	FooterText *string `pulumi:"footerText"`
	// (Updatable) The text to show in the header when showing a CAPTCHA challenge. If unspecified, defaults to 'We have detected an increased number of attempts to access this website. To help us keep this site secure, please let us know that you are not a robot by entering the text from the image below.'
	HeaderText *string `pulumi:"headerText"`
	// (Updatable) The amount of time before the CAPTCHA expires, in seconds. If unspecified, defaults to `300`.
	SessionExpirationInSeconds int `pulumi:"sessionExpirationInSeconds"`
	// (Updatable) The text to show on the label of the CAPTCHA challenge submit button. If unspecified, defaults to `Yes, I am human`.
	SubmitLabel string `pulumi:"submitLabel"`
	// (Updatable) The title used when displaying a CAPTCHA challenge. If unspecified, defaults to `Are you human?`
	Title string `pulumi:"title"`
	// (Updatable) The unique URL path at which to show the CAPTCHA challenge.
	Url string `pulumi:"url"`
}

type PolicyWafConfigCaptchaArgs

type PolicyWafConfigCaptchaArgs struct {
	// (Updatable) The text to show when incorrect CAPTCHA text is entered. If unspecified, defaults to `The CAPTCHA was incorrect. Try again.`
	FailureMessage pulumi.StringInput `pulumi:"failureMessage"`
	// (Updatable) The text to show in the footer when showing a CAPTCHA challenge. If unspecified, defaults to 'Enter the letters and numbers as they are shown in the image above.'
	FooterText pulumi.StringPtrInput `pulumi:"footerText"`
	// (Updatable) The text to show in the header when showing a CAPTCHA challenge. If unspecified, defaults to 'We have detected an increased number of attempts to access this website. To help us keep this site secure, please let us know that you are not a robot by entering the text from the image below.'
	HeaderText pulumi.StringPtrInput `pulumi:"headerText"`
	// (Updatable) The amount of time before the CAPTCHA expires, in seconds. If unspecified, defaults to `300`.
	SessionExpirationInSeconds pulumi.IntInput `pulumi:"sessionExpirationInSeconds"`
	// (Updatable) The text to show on the label of the CAPTCHA challenge submit button. If unspecified, defaults to `Yes, I am human`.
	SubmitLabel pulumi.StringInput `pulumi:"submitLabel"`
	// (Updatable) The title used when displaying a CAPTCHA challenge. If unspecified, defaults to `Are you human?`
	Title pulumi.StringInput `pulumi:"title"`
	// (Updatable) The unique URL path at which to show the CAPTCHA challenge.
	Url pulumi.StringInput `pulumi:"url"`
}

func (PolicyWafConfigCaptchaArgs) ElementType

func (PolicyWafConfigCaptchaArgs) ElementType() reflect.Type

func (PolicyWafConfigCaptchaArgs) ToPolicyWafConfigCaptchaOutput

func (i PolicyWafConfigCaptchaArgs) ToPolicyWafConfigCaptchaOutput() PolicyWafConfigCaptchaOutput

func (PolicyWafConfigCaptchaArgs) ToPolicyWafConfigCaptchaOutputWithContext

func (i PolicyWafConfigCaptchaArgs) ToPolicyWafConfigCaptchaOutputWithContext(ctx context.Context) PolicyWafConfigCaptchaOutput

type PolicyWafConfigCaptchaArray

type PolicyWafConfigCaptchaArray []PolicyWafConfigCaptchaInput

func (PolicyWafConfigCaptchaArray) ElementType

func (PolicyWafConfigCaptchaArray) ToPolicyWafConfigCaptchaArrayOutput

func (i PolicyWafConfigCaptchaArray) ToPolicyWafConfigCaptchaArrayOutput() PolicyWafConfigCaptchaArrayOutput

func (PolicyWafConfigCaptchaArray) ToPolicyWafConfigCaptchaArrayOutputWithContext

func (i PolicyWafConfigCaptchaArray) ToPolicyWafConfigCaptchaArrayOutputWithContext(ctx context.Context) PolicyWafConfigCaptchaArrayOutput

type PolicyWafConfigCaptchaArrayInput

type PolicyWafConfigCaptchaArrayInput interface {
	pulumi.Input

	ToPolicyWafConfigCaptchaArrayOutput() PolicyWafConfigCaptchaArrayOutput
	ToPolicyWafConfigCaptchaArrayOutputWithContext(context.Context) PolicyWafConfigCaptchaArrayOutput
}

PolicyWafConfigCaptchaArrayInput is an input type that accepts PolicyWafConfigCaptchaArray and PolicyWafConfigCaptchaArrayOutput values. You can construct a concrete instance of `PolicyWafConfigCaptchaArrayInput` via:

PolicyWafConfigCaptchaArray{ PolicyWafConfigCaptchaArgs{...} }

type PolicyWafConfigCaptchaArrayOutput

type PolicyWafConfigCaptchaArrayOutput struct{ *pulumi.OutputState }

func (PolicyWafConfigCaptchaArrayOutput) ElementType

func (PolicyWafConfigCaptchaArrayOutput) Index

func (PolicyWafConfigCaptchaArrayOutput) ToPolicyWafConfigCaptchaArrayOutput

func (o PolicyWafConfigCaptchaArrayOutput) ToPolicyWafConfigCaptchaArrayOutput() PolicyWafConfigCaptchaArrayOutput

func (PolicyWafConfigCaptchaArrayOutput) ToPolicyWafConfigCaptchaArrayOutputWithContext

func (o PolicyWafConfigCaptchaArrayOutput) ToPolicyWafConfigCaptchaArrayOutputWithContext(ctx context.Context) PolicyWafConfigCaptchaArrayOutput

type PolicyWafConfigCaptchaInput

type PolicyWafConfigCaptchaInput interface {
	pulumi.Input

	ToPolicyWafConfigCaptchaOutput() PolicyWafConfigCaptchaOutput
	ToPolicyWafConfigCaptchaOutputWithContext(context.Context) PolicyWafConfigCaptchaOutput
}

PolicyWafConfigCaptchaInput is an input type that accepts PolicyWafConfigCaptchaArgs and PolicyWafConfigCaptchaOutput values. You can construct a concrete instance of `PolicyWafConfigCaptchaInput` via:

PolicyWafConfigCaptchaArgs{...}

type PolicyWafConfigCaptchaOutput

type PolicyWafConfigCaptchaOutput struct{ *pulumi.OutputState }

func (PolicyWafConfigCaptchaOutput) ElementType

func (PolicyWafConfigCaptchaOutput) FailureMessage

(Updatable) The text to show when incorrect CAPTCHA text is entered. If unspecified, defaults to `The CAPTCHA was incorrect. Try again.`

func (PolicyWafConfigCaptchaOutput) FooterText

(Updatable) The text to show in the footer when showing a CAPTCHA challenge. If unspecified, defaults to 'Enter the letters and numbers as they are shown in the image above.'

func (PolicyWafConfigCaptchaOutput) HeaderText

(Updatable) The text to show in the header when showing a CAPTCHA challenge. If unspecified, defaults to 'We have detected an increased number of attempts to access this website. To help us keep this site secure, please let us know that you are not a robot by entering the text from the image below.'

func (PolicyWafConfigCaptchaOutput) SessionExpirationInSeconds

func (o PolicyWafConfigCaptchaOutput) SessionExpirationInSeconds() pulumi.IntOutput

(Updatable) The amount of time before the CAPTCHA expires, in seconds. If unspecified, defaults to `300`.

func (PolicyWafConfigCaptchaOutput) SubmitLabel

(Updatable) The text to show on the label of the CAPTCHA challenge submit button. If unspecified, defaults to `Yes, I am human`.

func (PolicyWafConfigCaptchaOutput) Title

(Updatable) The title used when displaying a CAPTCHA challenge. If unspecified, defaults to `Are you human?`

func (PolicyWafConfigCaptchaOutput) ToPolicyWafConfigCaptchaOutput

func (o PolicyWafConfigCaptchaOutput) ToPolicyWafConfigCaptchaOutput() PolicyWafConfigCaptchaOutput

func (PolicyWafConfigCaptchaOutput) ToPolicyWafConfigCaptchaOutputWithContext

func (o PolicyWafConfigCaptchaOutput) ToPolicyWafConfigCaptchaOutputWithContext(ctx context.Context) PolicyWafConfigCaptchaOutput

func (PolicyWafConfigCaptchaOutput) Url

(Updatable) The unique URL path at which to show the CAPTCHA challenge.

type PolicyWafConfigCustomProtectionRule

type PolicyWafConfigCustomProtectionRule struct {
	// (Updatable) The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.
	Action *string `pulumi:"action"`
	// (Updatable) An array of The target property of a request that would allow it to bypass the protection rule. For example, when `target` is `REQUEST_COOKIE_NAMES`, the list may include names of cookies to exclude from the protection rule. When the target is `ARGS`, the list may include strings of URL query parameters and values from form-urlencoded XML, JSON, AMP, or POST payloads to exclude from the protection rule. `Exclusions` properties must not contain whitespace, comma or |. **Note:** If protection rules have been enabled that utilize the `maxArgumentCount` or `maxTotalNameLengthOfArguments` properties, and the `target` property has been set to `ARGS`, it is important that the `exclusions` properties be defined to honor those protection rule settings in a consistent manner.
	Exclusions []PolicyWafConfigCustomProtectionRuleExclusion `pulumi:"exclusions"`
	// (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the custom protection rule.
	Id *string `pulumi:"id"`
}

type PolicyWafConfigCustomProtectionRuleArgs

type PolicyWafConfigCustomProtectionRuleArgs struct {
	// (Updatable) The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.
	Action pulumi.StringPtrInput `pulumi:"action"`
	// (Updatable) An array of The target property of a request that would allow it to bypass the protection rule. For example, when `target` is `REQUEST_COOKIE_NAMES`, the list may include names of cookies to exclude from the protection rule. When the target is `ARGS`, the list may include strings of URL query parameters and values from form-urlencoded XML, JSON, AMP, or POST payloads to exclude from the protection rule. `Exclusions` properties must not contain whitespace, comma or |. **Note:** If protection rules have been enabled that utilize the `maxArgumentCount` or `maxTotalNameLengthOfArguments` properties, and the `target` property has been set to `ARGS`, it is important that the `exclusions` properties be defined to honor those protection rule settings in a consistent manner.
	Exclusions PolicyWafConfigCustomProtectionRuleExclusionArrayInput `pulumi:"exclusions"`
	// (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the custom protection rule.
	Id pulumi.StringPtrInput `pulumi:"id"`
}

func (PolicyWafConfigCustomProtectionRuleArgs) ElementType

func (PolicyWafConfigCustomProtectionRuleArgs) ToPolicyWafConfigCustomProtectionRuleOutput

func (i PolicyWafConfigCustomProtectionRuleArgs) ToPolicyWafConfigCustomProtectionRuleOutput() PolicyWafConfigCustomProtectionRuleOutput

func (PolicyWafConfigCustomProtectionRuleArgs) ToPolicyWafConfigCustomProtectionRuleOutputWithContext

func (i PolicyWafConfigCustomProtectionRuleArgs) ToPolicyWafConfigCustomProtectionRuleOutputWithContext(ctx context.Context) PolicyWafConfigCustomProtectionRuleOutput

type PolicyWafConfigCustomProtectionRuleArray

type PolicyWafConfigCustomProtectionRuleArray []PolicyWafConfigCustomProtectionRuleInput

func (PolicyWafConfigCustomProtectionRuleArray) ElementType

func (PolicyWafConfigCustomProtectionRuleArray) ToPolicyWafConfigCustomProtectionRuleArrayOutput

func (i PolicyWafConfigCustomProtectionRuleArray) ToPolicyWafConfigCustomProtectionRuleArrayOutput() PolicyWafConfigCustomProtectionRuleArrayOutput

func (PolicyWafConfigCustomProtectionRuleArray) ToPolicyWafConfigCustomProtectionRuleArrayOutputWithContext

func (i PolicyWafConfigCustomProtectionRuleArray) ToPolicyWafConfigCustomProtectionRuleArrayOutputWithContext(ctx context.Context) PolicyWafConfigCustomProtectionRuleArrayOutput

type PolicyWafConfigCustomProtectionRuleArrayInput

type PolicyWafConfigCustomProtectionRuleArrayInput interface {
	pulumi.Input

	ToPolicyWafConfigCustomProtectionRuleArrayOutput() PolicyWafConfigCustomProtectionRuleArrayOutput
	ToPolicyWafConfigCustomProtectionRuleArrayOutputWithContext(context.Context) PolicyWafConfigCustomProtectionRuleArrayOutput
}

PolicyWafConfigCustomProtectionRuleArrayInput is an input type that accepts PolicyWafConfigCustomProtectionRuleArray and PolicyWafConfigCustomProtectionRuleArrayOutput values. You can construct a concrete instance of `PolicyWafConfigCustomProtectionRuleArrayInput` via:

PolicyWafConfigCustomProtectionRuleArray{ PolicyWafConfigCustomProtectionRuleArgs{...} }

type PolicyWafConfigCustomProtectionRuleArrayOutput

type PolicyWafConfigCustomProtectionRuleArrayOutput struct{ *pulumi.OutputState }

func (PolicyWafConfigCustomProtectionRuleArrayOutput) ElementType

func (PolicyWafConfigCustomProtectionRuleArrayOutput) Index

func (PolicyWafConfigCustomProtectionRuleArrayOutput) ToPolicyWafConfigCustomProtectionRuleArrayOutput

func (o PolicyWafConfigCustomProtectionRuleArrayOutput) ToPolicyWafConfigCustomProtectionRuleArrayOutput() PolicyWafConfigCustomProtectionRuleArrayOutput

func (PolicyWafConfigCustomProtectionRuleArrayOutput) ToPolicyWafConfigCustomProtectionRuleArrayOutputWithContext

func (o PolicyWafConfigCustomProtectionRuleArrayOutput) ToPolicyWafConfigCustomProtectionRuleArrayOutputWithContext(ctx context.Context) PolicyWafConfigCustomProtectionRuleArrayOutput

type PolicyWafConfigCustomProtectionRuleExclusion

type PolicyWafConfigCustomProtectionRuleExclusion struct {
	// (Updatable) An array of The target property of a request that would allow it to bypass the protection rule. For example, when `target` is `REQUEST_COOKIE_NAMES`, the list may include names of cookies to exclude from the protection rule. When the target is `ARGS`, the list may include strings of URL query parameters and values from form-urlencoded XML, JSON, AMP, or POST payloads to exclude from the protection rule. `Exclusions` properties must not contain whitespace, comma or |. **Note:** If protection rules have been enabled that utilize the `maxArgumentCount` or `maxTotalNameLengthOfArguments` properties, and the `target` property has been set to `ARGS`, it is important that the `exclusions` properties be defined to honor those protection rule settings in a consistent manner.
	Exclusions []string `pulumi:"exclusions"`
	// (Updatable) The target of the exclusion.
	Target *string `pulumi:"target"`
}

type PolicyWafConfigCustomProtectionRuleExclusionArgs

type PolicyWafConfigCustomProtectionRuleExclusionArgs struct {
	// (Updatable) An array of The target property of a request that would allow it to bypass the protection rule. For example, when `target` is `REQUEST_COOKIE_NAMES`, the list may include names of cookies to exclude from the protection rule. When the target is `ARGS`, the list may include strings of URL query parameters and values from form-urlencoded XML, JSON, AMP, or POST payloads to exclude from the protection rule. `Exclusions` properties must not contain whitespace, comma or |. **Note:** If protection rules have been enabled that utilize the `maxArgumentCount` or `maxTotalNameLengthOfArguments` properties, and the `target` property has been set to `ARGS`, it is important that the `exclusions` properties be defined to honor those protection rule settings in a consistent manner.
	Exclusions pulumi.StringArrayInput `pulumi:"exclusions"`
	// (Updatable) The target of the exclusion.
	Target pulumi.StringPtrInput `pulumi:"target"`
}

func (PolicyWafConfigCustomProtectionRuleExclusionArgs) ElementType

func (PolicyWafConfigCustomProtectionRuleExclusionArgs) ToPolicyWafConfigCustomProtectionRuleExclusionOutput

func (i PolicyWafConfigCustomProtectionRuleExclusionArgs) ToPolicyWafConfigCustomProtectionRuleExclusionOutput() PolicyWafConfigCustomProtectionRuleExclusionOutput

func (PolicyWafConfigCustomProtectionRuleExclusionArgs) ToPolicyWafConfigCustomProtectionRuleExclusionOutputWithContext

func (i PolicyWafConfigCustomProtectionRuleExclusionArgs) ToPolicyWafConfigCustomProtectionRuleExclusionOutputWithContext(ctx context.Context) PolicyWafConfigCustomProtectionRuleExclusionOutput

type PolicyWafConfigCustomProtectionRuleExclusionArray

type PolicyWafConfigCustomProtectionRuleExclusionArray []PolicyWafConfigCustomProtectionRuleExclusionInput

func (PolicyWafConfigCustomProtectionRuleExclusionArray) ElementType

func (PolicyWafConfigCustomProtectionRuleExclusionArray) ToPolicyWafConfigCustomProtectionRuleExclusionArrayOutput

func (i PolicyWafConfigCustomProtectionRuleExclusionArray) ToPolicyWafConfigCustomProtectionRuleExclusionArrayOutput() PolicyWafConfigCustomProtectionRuleExclusionArrayOutput

func (PolicyWafConfigCustomProtectionRuleExclusionArray) ToPolicyWafConfigCustomProtectionRuleExclusionArrayOutputWithContext

func (i PolicyWafConfigCustomProtectionRuleExclusionArray) ToPolicyWafConfigCustomProtectionRuleExclusionArrayOutputWithContext(ctx context.Context) PolicyWafConfigCustomProtectionRuleExclusionArrayOutput

type PolicyWafConfigCustomProtectionRuleExclusionArrayInput

type PolicyWafConfigCustomProtectionRuleExclusionArrayInput interface {
	pulumi.Input

	ToPolicyWafConfigCustomProtectionRuleExclusionArrayOutput() PolicyWafConfigCustomProtectionRuleExclusionArrayOutput
	ToPolicyWafConfigCustomProtectionRuleExclusionArrayOutputWithContext(context.Context) PolicyWafConfigCustomProtectionRuleExclusionArrayOutput
}

PolicyWafConfigCustomProtectionRuleExclusionArrayInput is an input type that accepts PolicyWafConfigCustomProtectionRuleExclusionArray and PolicyWafConfigCustomProtectionRuleExclusionArrayOutput values. You can construct a concrete instance of `PolicyWafConfigCustomProtectionRuleExclusionArrayInput` via:

PolicyWafConfigCustomProtectionRuleExclusionArray{ PolicyWafConfigCustomProtectionRuleExclusionArgs{...} }

type PolicyWafConfigCustomProtectionRuleExclusionArrayOutput

type PolicyWafConfigCustomProtectionRuleExclusionArrayOutput struct{ *pulumi.OutputState }

func (PolicyWafConfigCustomProtectionRuleExclusionArrayOutput) ElementType

func (PolicyWafConfigCustomProtectionRuleExclusionArrayOutput) Index

func (PolicyWafConfigCustomProtectionRuleExclusionArrayOutput) ToPolicyWafConfigCustomProtectionRuleExclusionArrayOutput

func (PolicyWafConfigCustomProtectionRuleExclusionArrayOutput) ToPolicyWafConfigCustomProtectionRuleExclusionArrayOutputWithContext

func (o PolicyWafConfigCustomProtectionRuleExclusionArrayOutput) ToPolicyWafConfigCustomProtectionRuleExclusionArrayOutputWithContext(ctx context.Context) PolicyWafConfigCustomProtectionRuleExclusionArrayOutput

type PolicyWafConfigCustomProtectionRuleExclusionInput

type PolicyWafConfigCustomProtectionRuleExclusionInput interface {
	pulumi.Input

	ToPolicyWafConfigCustomProtectionRuleExclusionOutput() PolicyWafConfigCustomProtectionRuleExclusionOutput
	ToPolicyWafConfigCustomProtectionRuleExclusionOutputWithContext(context.Context) PolicyWafConfigCustomProtectionRuleExclusionOutput
}

PolicyWafConfigCustomProtectionRuleExclusionInput is an input type that accepts PolicyWafConfigCustomProtectionRuleExclusionArgs and PolicyWafConfigCustomProtectionRuleExclusionOutput values. You can construct a concrete instance of `PolicyWafConfigCustomProtectionRuleExclusionInput` via:

PolicyWafConfigCustomProtectionRuleExclusionArgs{...}

type PolicyWafConfigCustomProtectionRuleExclusionOutput

type PolicyWafConfigCustomProtectionRuleExclusionOutput struct{ *pulumi.OutputState }

func (PolicyWafConfigCustomProtectionRuleExclusionOutput) ElementType

func (PolicyWafConfigCustomProtectionRuleExclusionOutput) Exclusions

(Updatable) An array of The target property of a request that would allow it to bypass the protection rule. For example, when `target` is `REQUEST_COOKIE_NAMES`, the list may include names of cookies to exclude from the protection rule. When the target is `ARGS`, the list may include strings of URL query parameters and values from form-urlencoded XML, JSON, AMP, or POST payloads to exclude from the protection rule. `Exclusions` properties must not contain whitespace, comma or |. **Note:** If protection rules have been enabled that utilize the `maxArgumentCount` or `maxTotalNameLengthOfArguments` properties, and the `target` property has been set to `ARGS`, it is important that the `exclusions` properties be defined to honor those protection rule settings in a consistent manner.

func (PolicyWafConfigCustomProtectionRuleExclusionOutput) Target

(Updatable) The target of the exclusion.

func (PolicyWafConfigCustomProtectionRuleExclusionOutput) ToPolicyWafConfigCustomProtectionRuleExclusionOutput

func (o PolicyWafConfigCustomProtectionRuleExclusionOutput) ToPolicyWafConfigCustomProtectionRuleExclusionOutput() PolicyWafConfigCustomProtectionRuleExclusionOutput

func (PolicyWafConfigCustomProtectionRuleExclusionOutput) ToPolicyWafConfigCustomProtectionRuleExclusionOutputWithContext

func (o PolicyWafConfigCustomProtectionRuleExclusionOutput) ToPolicyWafConfigCustomProtectionRuleExclusionOutputWithContext(ctx context.Context) PolicyWafConfigCustomProtectionRuleExclusionOutput

type PolicyWafConfigCustomProtectionRuleInput

type PolicyWafConfigCustomProtectionRuleInput interface {
	pulumi.Input

	ToPolicyWafConfigCustomProtectionRuleOutput() PolicyWafConfigCustomProtectionRuleOutput
	ToPolicyWafConfigCustomProtectionRuleOutputWithContext(context.Context) PolicyWafConfigCustomProtectionRuleOutput
}

PolicyWafConfigCustomProtectionRuleInput is an input type that accepts PolicyWafConfigCustomProtectionRuleArgs and PolicyWafConfigCustomProtectionRuleOutput values. You can construct a concrete instance of `PolicyWafConfigCustomProtectionRuleInput` via:

PolicyWafConfigCustomProtectionRuleArgs{...}

type PolicyWafConfigCustomProtectionRuleOutput

type PolicyWafConfigCustomProtectionRuleOutput struct{ *pulumi.OutputState }

func (PolicyWafConfigCustomProtectionRuleOutput) Action

(Updatable) The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.

func (PolicyWafConfigCustomProtectionRuleOutput) ElementType

func (PolicyWafConfigCustomProtectionRuleOutput) Exclusions

(Updatable) An array of The target property of a request that would allow it to bypass the protection rule. For example, when `target` is `REQUEST_COOKIE_NAMES`, the list may include names of cookies to exclude from the protection rule. When the target is `ARGS`, the list may include strings of URL query parameters and values from form-urlencoded XML, JSON, AMP, or POST payloads to exclude from the protection rule. `Exclusions` properties must not contain whitespace, comma or |. **Note:** If protection rules have been enabled that utilize the `maxArgumentCount` or `maxTotalNameLengthOfArguments` properties, and the `target` property has been set to `ARGS`, it is important that the `exclusions` properties be defined to honor those protection rule settings in a consistent manner.

func (PolicyWafConfigCustomProtectionRuleOutput) Id

(Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the custom protection rule.

func (PolicyWafConfigCustomProtectionRuleOutput) ToPolicyWafConfigCustomProtectionRuleOutput

func (o PolicyWafConfigCustomProtectionRuleOutput) ToPolicyWafConfigCustomProtectionRuleOutput() PolicyWafConfigCustomProtectionRuleOutput

func (PolicyWafConfigCustomProtectionRuleOutput) ToPolicyWafConfigCustomProtectionRuleOutputWithContext

func (o PolicyWafConfigCustomProtectionRuleOutput) ToPolicyWafConfigCustomProtectionRuleOutputWithContext(ctx context.Context) PolicyWafConfigCustomProtectionRuleOutput

type PolicyWafConfigDeviceFingerprintChallenge

type PolicyWafConfigDeviceFingerprintChallenge struct {
	// (Updatable) The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.
	Action *string `pulumi:"action"`
	// (Updatable) The number of seconds between challenges from the same IP address. If unspecified, defaults to `60`.
	ActionExpirationInSeconds *int `pulumi:"actionExpirationInSeconds"`
	// (Updatable) The challenge settings if `action` is set to `BLOCK`.
	ChallengeSettings *PolicyWafConfigDeviceFingerprintChallengeChallengeSettings `pulumi:"challengeSettings"`
	// (Updatable) The number of failed requests before taking action. If unspecified, defaults to `10`.
	FailureThreshold *int `pulumi:"failureThreshold"`
	// (Updatable) The number of seconds before the failure threshold resets. If unspecified, defaults to  `60`.
	FailureThresholdExpirationInSeconds *int `pulumi:"failureThresholdExpirationInSeconds"`
	// (Updatable) Enables or disables the JavaScript challenge Web Application Firewall feature.
	IsEnabled bool `pulumi:"isEnabled"`
	// (Updatable) The maximum number of IP addresses permitted with the same device fingerprint. If unspecified, defaults to `20`.
	MaxAddressCount *int `pulumi:"maxAddressCount"`
	// (Updatable) The number of seconds before the maximum addresses count resets. If unspecified, defaults to `60`.
	MaxAddressCountExpirationInSeconds *int `pulumi:"maxAddressCountExpirationInSeconds"`
}

type PolicyWafConfigDeviceFingerprintChallengeArgs

type PolicyWafConfigDeviceFingerprintChallengeArgs struct {
	// (Updatable) The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.
	Action pulumi.StringPtrInput `pulumi:"action"`
	// (Updatable) The number of seconds between challenges from the same IP address. If unspecified, defaults to `60`.
	ActionExpirationInSeconds pulumi.IntPtrInput `pulumi:"actionExpirationInSeconds"`
	// (Updatable) The challenge settings if `action` is set to `BLOCK`.
	ChallengeSettings PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsPtrInput `pulumi:"challengeSettings"`
	// (Updatable) The number of failed requests before taking action. If unspecified, defaults to `10`.
	FailureThreshold pulumi.IntPtrInput `pulumi:"failureThreshold"`
	// (Updatable) The number of seconds before the failure threshold resets. If unspecified, defaults to  `60`.
	FailureThresholdExpirationInSeconds pulumi.IntPtrInput `pulumi:"failureThresholdExpirationInSeconds"`
	// (Updatable) Enables or disables the JavaScript challenge Web Application Firewall feature.
	IsEnabled pulumi.BoolInput `pulumi:"isEnabled"`
	// (Updatable) The maximum number of IP addresses permitted with the same device fingerprint. If unspecified, defaults to `20`.
	MaxAddressCount pulumi.IntPtrInput `pulumi:"maxAddressCount"`
	// (Updatable) The number of seconds before the maximum addresses count resets. If unspecified, defaults to `60`.
	MaxAddressCountExpirationInSeconds pulumi.IntPtrInput `pulumi:"maxAddressCountExpirationInSeconds"`
}

func (PolicyWafConfigDeviceFingerprintChallengeArgs) ElementType

func (PolicyWafConfigDeviceFingerprintChallengeArgs) ToPolicyWafConfigDeviceFingerprintChallengeOutput

func (i PolicyWafConfigDeviceFingerprintChallengeArgs) ToPolicyWafConfigDeviceFingerprintChallengeOutput() PolicyWafConfigDeviceFingerprintChallengeOutput

func (PolicyWafConfigDeviceFingerprintChallengeArgs) ToPolicyWafConfigDeviceFingerprintChallengeOutputWithContext

func (i PolicyWafConfigDeviceFingerprintChallengeArgs) ToPolicyWafConfigDeviceFingerprintChallengeOutputWithContext(ctx context.Context) PolicyWafConfigDeviceFingerprintChallengeOutput

func (PolicyWafConfigDeviceFingerprintChallengeArgs) ToPolicyWafConfigDeviceFingerprintChallengePtrOutput

func (i PolicyWafConfigDeviceFingerprintChallengeArgs) ToPolicyWafConfigDeviceFingerprintChallengePtrOutput() PolicyWafConfigDeviceFingerprintChallengePtrOutput

func (PolicyWafConfigDeviceFingerprintChallengeArgs) ToPolicyWafConfigDeviceFingerprintChallengePtrOutputWithContext

func (i PolicyWafConfigDeviceFingerprintChallengeArgs) ToPolicyWafConfigDeviceFingerprintChallengePtrOutputWithContext(ctx context.Context) PolicyWafConfigDeviceFingerprintChallengePtrOutput

type PolicyWafConfigDeviceFingerprintChallengeChallengeSettings

type PolicyWafConfigDeviceFingerprintChallengeChallengeSettings struct {
	// (Updatable) If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.
	BlockAction *string `pulumi:"blockAction"`
	// (Updatable) The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.
	BlockErrorPageCode *string `pulumi:"blockErrorPageCode"`
	// (Updatable) The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`
	BlockErrorPageDescription *string `pulumi:"blockErrorPageDescription"`
	// (Updatable) The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'
	BlockErrorPageMessage *string `pulumi:"blockErrorPageMessage"`
	// (Updatable) The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.
	BlockResponseCode *int `pulumi:"blockResponseCode"`
	// (Updatable) The text to show in the footer when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, default to `Enter the letters and numbers as they are shown in image above`.
	CaptchaFooter *string `pulumi:"captchaFooter"`
	// (Updatable) The text to show in the header when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `We have detected an increased number of attempts to access this webapp. To help us keep this webapp secure, please let us know that you are not a robot by entering the text from captcha below.`
	CaptchaHeader *string `pulumi:"captchaHeader"`
	// (Updatable) The text to show on the label of the CAPTCHA challenge submit button when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Yes, I am human`.
	CaptchaSubmitLabel *string `pulumi:"captchaSubmitLabel"`
	// (Updatable) The title used when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Are you human?`
	CaptchaTitle *string `pulumi:"captchaTitle"`
}

type PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsArgs

type PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsArgs struct {
	// (Updatable) If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.
	BlockAction pulumi.StringPtrInput `pulumi:"blockAction"`
	// (Updatable) The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.
	BlockErrorPageCode pulumi.StringPtrInput `pulumi:"blockErrorPageCode"`
	// (Updatable) The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`
	BlockErrorPageDescription pulumi.StringPtrInput `pulumi:"blockErrorPageDescription"`
	// (Updatable) The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'
	BlockErrorPageMessage pulumi.StringPtrInput `pulumi:"blockErrorPageMessage"`
	// (Updatable) The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.
	BlockResponseCode pulumi.IntPtrInput `pulumi:"blockResponseCode"`
	// (Updatable) The text to show in the footer when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, default to `Enter the letters and numbers as they are shown in image above`.
	CaptchaFooter pulumi.StringPtrInput `pulumi:"captchaFooter"`
	// (Updatable) The text to show in the header when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `We have detected an increased number of attempts to access this webapp. To help us keep this webapp secure, please let us know that you are not a robot by entering the text from captcha below.`
	CaptchaHeader pulumi.StringPtrInput `pulumi:"captchaHeader"`
	// (Updatable) The text to show on the label of the CAPTCHA challenge submit button when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Yes, I am human`.
	CaptchaSubmitLabel pulumi.StringPtrInput `pulumi:"captchaSubmitLabel"`
	// (Updatable) The title used when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Are you human?`
	CaptchaTitle pulumi.StringPtrInput `pulumi:"captchaTitle"`
}

func (PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsArgs) ElementType

func (PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsArgs) ToPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput

func (PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsArgs) ToPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutputWithContext

func (i PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsArgs) ToPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutputWithContext(ctx context.Context) PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput

func (PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsArgs) ToPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsPtrOutput

func (PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsArgs) ToPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsPtrOutputWithContext

func (i PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsArgs) ToPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsPtrOutputWithContext(ctx context.Context) PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsPtrOutput

type PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsInput

type PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsInput interface {
	pulumi.Input

	ToPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput() PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput
	ToPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutputWithContext(context.Context) PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput
}

PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsInput is an input type that accepts PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsArgs and PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput values. You can construct a concrete instance of `PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsInput` via:

PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsArgs{...}

type PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput

type PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput struct{ *pulumi.OutputState }

func (PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput) BlockAction

(Updatable) If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.

func (PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput) BlockErrorPageCode

(Updatable) The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.

func (PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput) BlockErrorPageDescription

(Updatable) The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`

func (PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput) BlockErrorPageMessage

(Updatable) The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'

func (PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput) BlockResponseCode

(Updatable) The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.

func (PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput) CaptchaFooter

(Updatable) The text to show in the footer when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, default to `Enter the letters and numbers as they are shown in image above`.

func (PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput) CaptchaHeader

(Updatable) The text to show in the header when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `We have detected an increased number of attempts to access this webapp. To help us keep this webapp secure, please let us know that you are not a robot by entering the text from captcha below.`

func (PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput) CaptchaSubmitLabel

(Updatable) The text to show on the label of the CAPTCHA challenge submit button when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Yes, I am human`.

func (PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput) CaptchaTitle

(Updatable) The title used when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Are you human?`

func (PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput) ElementType

func (PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput) ToPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput

func (PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput) ToPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutputWithContext

func (o PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput) ToPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutputWithContext(ctx context.Context) PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput

func (PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput) ToPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsPtrOutput

func (PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput) ToPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsPtrOutputWithContext

func (o PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutput) ToPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsPtrOutputWithContext(ctx context.Context) PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsPtrOutput

type PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsPtrInput

type PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsPtrInput interface {
	pulumi.Input

	ToPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsPtrOutput() PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsPtrOutput
	ToPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsPtrOutputWithContext(context.Context) PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsPtrOutput
}

PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsPtrInput is an input type that accepts PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsArgs, PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsPtr and PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsPtrOutput values. You can construct a concrete instance of `PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsPtrInput` via:

        PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsArgs{...}

or:

        nil

type PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsPtrOutput

type PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsPtrOutput struct{ *pulumi.OutputState }

func (PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsPtrOutput) BlockAction

(Updatable) If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.

func (PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsPtrOutput) BlockErrorPageCode

(Updatable) The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.

func (PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsPtrOutput) BlockErrorPageDescription

(Updatable) The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`

func (PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsPtrOutput) BlockErrorPageMessage

(Updatable) The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'

func (PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsPtrOutput) BlockResponseCode

(Updatable) The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.

func (PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsPtrOutput) CaptchaFooter

(Updatable) The text to show in the footer when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, default to `Enter the letters and numbers as they are shown in image above`.

func (PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsPtrOutput) CaptchaHeader

(Updatable) The text to show in the header when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `We have detected an increased number of attempts to access this webapp. To help us keep this webapp secure, please let us know that you are not a robot by entering the text from captcha below.`

func (PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsPtrOutput) CaptchaSubmitLabel

(Updatable) The text to show on the label of the CAPTCHA challenge submit button when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Yes, I am human`.

func (PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsPtrOutput) CaptchaTitle

(Updatable) The title used when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Are you human?`

func (PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsPtrOutput) Elem

func (PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsPtrOutput) ElementType

func (PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsPtrOutput) ToPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsPtrOutput

func (PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsPtrOutput) ToPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsPtrOutputWithContext

func (o PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsPtrOutput) ToPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsPtrOutputWithContext(ctx context.Context) PolicyWafConfigDeviceFingerprintChallengeChallengeSettingsPtrOutput

type PolicyWafConfigDeviceFingerprintChallengeInput

type PolicyWafConfigDeviceFingerprintChallengeInput interface {
	pulumi.Input

	ToPolicyWafConfigDeviceFingerprintChallengeOutput() PolicyWafConfigDeviceFingerprintChallengeOutput
	ToPolicyWafConfigDeviceFingerprintChallengeOutputWithContext(context.Context) PolicyWafConfigDeviceFingerprintChallengeOutput
}

PolicyWafConfigDeviceFingerprintChallengeInput is an input type that accepts PolicyWafConfigDeviceFingerprintChallengeArgs and PolicyWafConfigDeviceFingerprintChallengeOutput values. You can construct a concrete instance of `PolicyWafConfigDeviceFingerprintChallengeInput` via:

PolicyWafConfigDeviceFingerprintChallengeArgs{...}

type PolicyWafConfigDeviceFingerprintChallengeOutput

type PolicyWafConfigDeviceFingerprintChallengeOutput struct{ *pulumi.OutputState }

func (PolicyWafConfigDeviceFingerprintChallengeOutput) Action

(Updatable) The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.

func (PolicyWafConfigDeviceFingerprintChallengeOutput) ActionExpirationInSeconds

(Updatable) The number of seconds between challenges from the same IP address. If unspecified, defaults to `60`.

func (PolicyWafConfigDeviceFingerprintChallengeOutput) ChallengeSettings

(Updatable) The challenge settings if `action` is set to `BLOCK`.

func (PolicyWafConfigDeviceFingerprintChallengeOutput) ElementType

func (PolicyWafConfigDeviceFingerprintChallengeOutput) FailureThreshold

(Updatable) The number of failed requests before taking action. If unspecified, defaults to `10`.

func (PolicyWafConfigDeviceFingerprintChallengeOutput) FailureThresholdExpirationInSeconds

func (o PolicyWafConfigDeviceFingerprintChallengeOutput) FailureThresholdExpirationInSeconds() pulumi.IntPtrOutput

(Updatable) The number of seconds before the failure threshold resets. If unspecified, defaults to `60`.

func (PolicyWafConfigDeviceFingerprintChallengeOutput) IsEnabled

(Updatable) Enables or disables the JavaScript challenge Web Application Firewall feature.

func (PolicyWafConfigDeviceFingerprintChallengeOutput) MaxAddressCount

(Updatable) The maximum number of IP addresses permitted with the same device fingerprint. If unspecified, defaults to `20`.

func (PolicyWafConfigDeviceFingerprintChallengeOutput) MaxAddressCountExpirationInSeconds

func (o PolicyWafConfigDeviceFingerprintChallengeOutput) MaxAddressCountExpirationInSeconds() pulumi.IntPtrOutput

(Updatable) The number of seconds before the maximum addresses count resets. If unspecified, defaults to `60`.

func (PolicyWafConfigDeviceFingerprintChallengeOutput) ToPolicyWafConfigDeviceFingerprintChallengeOutput

func (o PolicyWafConfigDeviceFingerprintChallengeOutput) ToPolicyWafConfigDeviceFingerprintChallengeOutput() PolicyWafConfigDeviceFingerprintChallengeOutput

func (PolicyWafConfigDeviceFingerprintChallengeOutput) ToPolicyWafConfigDeviceFingerprintChallengeOutputWithContext

func (o PolicyWafConfigDeviceFingerprintChallengeOutput) ToPolicyWafConfigDeviceFingerprintChallengeOutputWithContext(ctx context.Context) PolicyWafConfigDeviceFingerprintChallengeOutput

func (PolicyWafConfigDeviceFingerprintChallengeOutput) ToPolicyWafConfigDeviceFingerprintChallengePtrOutput

func (o PolicyWafConfigDeviceFingerprintChallengeOutput) ToPolicyWafConfigDeviceFingerprintChallengePtrOutput() PolicyWafConfigDeviceFingerprintChallengePtrOutput

func (PolicyWafConfigDeviceFingerprintChallengeOutput) ToPolicyWafConfigDeviceFingerprintChallengePtrOutputWithContext

func (o PolicyWafConfigDeviceFingerprintChallengeOutput) ToPolicyWafConfigDeviceFingerprintChallengePtrOutputWithContext(ctx context.Context) PolicyWafConfigDeviceFingerprintChallengePtrOutput

type PolicyWafConfigDeviceFingerprintChallengePtrInput

type PolicyWafConfigDeviceFingerprintChallengePtrInput interface {
	pulumi.Input

	ToPolicyWafConfigDeviceFingerprintChallengePtrOutput() PolicyWafConfigDeviceFingerprintChallengePtrOutput
	ToPolicyWafConfigDeviceFingerprintChallengePtrOutputWithContext(context.Context) PolicyWafConfigDeviceFingerprintChallengePtrOutput
}

PolicyWafConfigDeviceFingerprintChallengePtrInput is an input type that accepts PolicyWafConfigDeviceFingerprintChallengeArgs, PolicyWafConfigDeviceFingerprintChallengePtr and PolicyWafConfigDeviceFingerprintChallengePtrOutput values. You can construct a concrete instance of `PolicyWafConfigDeviceFingerprintChallengePtrInput` via:

        PolicyWafConfigDeviceFingerprintChallengeArgs{...}

or:

        nil

type PolicyWafConfigDeviceFingerprintChallengePtrOutput

type PolicyWafConfigDeviceFingerprintChallengePtrOutput struct{ *pulumi.OutputState }

func (PolicyWafConfigDeviceFingerprintChallengePtrOutput) Action

(Updatable) The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.

func (PolicyWafConfigDeviceFingerprintChallengePtrOutput) ActionExpirationInSeconds

(Updatable) The number of seconds between challenges from the same IP address. If unspecified, defaults to `60`.

func (PolicyWafConfigDeviceFingerprintChallengePtrOutput) ChallengeSettings

(Updatable) The challenge settings if `action` is set to `BLOCK`.

func (PolicyWafConfigDeviceFingerprintChallengePtrOutput) Elem

func (PolicyWafConfigDeviceFingerprintChallengePtrOutput) ElementType

func (PolicyWafConfigDeviceFingerprintChallengePtrOutput) FailureThreshold

(Updatable) The number of failed requests before taking action. If unspecified, defaults to `10`.

func (PolicyWafConfigDeviceFingerprintChallengePtrOutput) FailureThresholdExpirationInSeconds

func (o PolicyWafConfigDeviceFingerprintChallengePtrOutput) FailureThresholdExpirationInSeconds() pulumi.IntPtrOutput

(Updatable) The number of seconds before the failure threshold resets. If unspecified, defaults to `60`.

func (PolicyWafConfigDeviceFingerprintChallengePtrOutput) IsEnabled

(Updatable) Enables or disables the JavaScript challenge Web Application Firewall feature.

func (PolicyWafConfigDeviceFingerprintChallengePtrOutput) MaxAddressCount

(Updatable) The maximum number of IP addresses permitted with the same device fingerprint. If unspecified, defaults to `20`.

func (PolicyWafConfigDeviceFingerprintChallengePtrOutput) MaxAddressCountExpirationInSeconds

func (o PolicyWafConfigDeviceFingerprintChallengePtrOutput) MaxAddressCountExpirationInSeconds() pulumi.IntPtrOutput

(Updatable) The number of seconds before the maximum addresses count resets. If unspecified, defaults to `60`.

func (PolicyWafConfigDeviceFingerprintChallengePtrOutput) ToPolicyWafConfigDeviceFingerprintChallengePtrOutput

func (o PolicyWafConfigDeviceFingerprintChallengePtrOutput) ToPolicyWafConfigDeviceFingerprintChallengePtrOutput() PolicyWafConfigDeviceFingerprintChallengePtrOutput

func (PolicyWafConfigDeviceFingerprintChallengePtrOutput) ToPolicyWafConfigDeviceFingerprintChallengePtrOutputWithContext

func (o PolicyWafConfigDeviceFingerprintChallengePtrOutput) ToPolicyWafConfigDeviceFingerprintChallengePtrOutputWithContext(ctx context.Context) PolicyWafConfigDeviceFingerprintChallengePtrOutput

type PolicyWafConfigHumanInteractionChallenge

type PolicyWafConfigHumanInteractionChallenge struct {
	// (Updatable) The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.
	Action *string `pulumi:"action"`
	// (Updatable) The number of seconds between challenges from the same IP address. If unspecified, defaults to `60`.
	ActionExpirationInSeconds *int `pulumi:"actionExpirationInSeconds"`
	// (Updatable) The challenge settings if `action` is set to `BLOCK`.
	ChallengeSettings *PolicyWafConfigHumanInteractionChallengeChallengeSettings `pulumi:"challengeSettings"`
	// (Updatable) The number of failed requests before taking action. If unspecified, defaults to `10`.
	FailureThreshold *int `pulumi:"failureThreshold"`
	// (Updatable) The number of seconds before the failure threshold resets. If unspecified, defaults to  `60`.
	FailureThresholdExpirationInSeconds *int `pulumi:"failureThresholdExpirationInSeconds"`
	// (Updatable) The number of interactions required to pass the challenge. If unspecified, defaults to `3`.
	InteractionThreshold *int `pulumi:"interactionThreshold"`
	// (Updatable) Enables or disables the JavaScript challenge Web Application Firewall feature.
	IsEnabled bool `pulumi:"isEnabled"`
	// (Updatable) When enabled, the user is identified not only by the IP address but also by an unique additional hash, which prevents blocking visitors with shared IP addresses.
	IsNatEnabled *bool `pulumi:"isNatEnabled"`
	// (Updatable) The number of seconds to record the interactions from the user. If unspecified, defaults to `15`.
	RecordingPeriodInSeconds *int `pulumi:"recordingPeriodInSeconds"`
	// (Updatable) Adds an additional HTTP header to requests that fail the challenge before being passed to the origin. Only applicable when the `action` is set to `DETECT`.
	SetHttpHeader *PolicyWafConfigHumanInteractionChallengeSetHttpHeader `pulumi:"setHttpHeader"`
}

type PolicyWafConfigHumanInteractionChallengeArgs

type PolicyWafConfigHumanInteractionChallengeArgs struct {
	// (Updatable) The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.
	Action pulumi.StringPtrInput `pulumi:"action"`
	// (Updatable) The number of seconds between challenges from the same IP address. If unspecified, defaults to `60`.
	ActionExpirationInSeconds pulumi.IntPtrInput `pulumi:"actionExpirationInSeconds"`
	// (Updatable) The challenge settings if `action` is set to `BLOCK`.
	ChallengeSettings PolicyWafConfigHumanInteractionChallengeChallengeSettingsPtrInput `pulumi:"challengeSettings"`
	// (Updatable) The number of failed requests before taking action. If unspecified, defaults to `10`.
	FailureThreshold pulumi.IntPtrInput `pulumi:"failureThreshold"`
	// (Updatable) The number of seconds before the failure threshold resets. If unspecified, defaults to  `60`.
	FailureThresholdExpirationInSeconds pulumi.IntPtrInput `pulumi:"failureThresholdExpirationInSeconds"`
	// (Updatable) The number of interactions required to pass the challenge. If unspecified, defaults to `3`.
	InteractionThreshold pulumi.IntPtrInput `pulumi:"interactionThreshold"`
	// (Updatable) Enables or disables the JavaScript challenge Web Application Firewall feature.
	IsEnabled pulumi.BoolInput `pulumi:"isEnabled"`
	// (Updatable) When enabled, the user is identified not only by the IP address but also by an unique additional hash, which prevents blocking visitors with shared IP addresses.
	IsNatEnabled pulumi.BoolPtrInput `pulumi:"isNatEnabled"`
	// (Updatable) The number of seconds to record the interactions from the user. If unspecified, defaults to `15`.
	RecordingPeriodInSeconds pulumi.IntPtrInput `pulumi:"recordingPeriodInSeconds"`
	// (Updatable) Adds an additional HTTP header to requests that fail the challenge before being passed to the origin. Only applicable when the `action` is set to `DETECT`.
	SetHttpHeader PolicyWafConfigHumanInteractionChallengeSetHttpHeaderPtrInput `pulumi:"setHttpHeader"`
}

func (PolicyWafConfigHumanInteractionChallengeArgs) ElementType

func (PolicyWafConfigHumanInteractionChallengeArgs) ToPolicyWafConfigHumanInteractionChallengeOutput

func (i PolicyWafConfigHumanInteractionChallengeArgs) ToPolicyWafConfigHumanInteractionChallengeOutput() PolicyWafConfigHumanInteractionChallengeOutput

func (PolicyWafConfigHumanInteractionChallengeArgs) ToPolicyWafConfigHumanInteractionChallengeOutputWithContext

func (i PolicyWafConfigHumanInteractionChallengeArgs) ToPolicyWafConfigHumanInteractionChallengeOutputWithContext(ctx context.Context) PolicyWafConfigHumanInteractionChallengeOutput

func (PolicyWafConfigHumanInteractionChallengeArgs) ToPolicyWafConfigHumanInteractionChallengePtrOutput

func (i PolicyWafConfigHumanInteractionChallengeArgs) ToPolicyWafConfigHumanInteractionChallengePtrOutput() PolicyWafConfigHumanInteractionChallengePtrOutput

func (PolicyWafConfigHumanInteractionChallengeArgs) ToPolicyWafConfigHumanInteractionChallengePtrOutputWithContext

func (i PolicyWafConfigHumanInteractionChallengeArgs) ToPolicyWafConfigHumanInteractionChallengePtrOutputWithContext(ctx context.Context) PolicyWafConfigHumanInteractionChallengePtrOutput

type PolicyWafConfigHumanInteractionChallengeChallengeSettings

type PolicyWafConfigHumanInteractionChallengeChallengeSettings struct {
	// (Updatable) If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.
	BlockAction *string `pulumi:"blockAction"`
	// (Updatable) The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.
	BlockErrorPageCode *string `pulumi:"blockErrorPageCode"`
	// (Updatable) The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`
	BlockErrorPageDescription *string `pulumi:"blockErrorPageDescription"`
	// (Updatable) The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'
	BlockErrorPageMessage *string `pulumi:"blockErrorPageMessage"`
	// (Updatable) The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.
	BlockResponseCode *int `pulumi:"blockResponseCode"`
	// (Updatable) The text to show in the footer when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, default to `Enter the letters and numbers as they are shown in image above`.
	CaptchaFooter *string `pulumi:"captchaFooter"`
	// (Updatable) The text to show in the header when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `We have detected an increased number of attempts to access this webapp. To help us keep this webapp secure, please let us know that you are not a robot by entering the text from captcha below.`
	CaptchaHeader *string `pulumi:"captchaHeader"`
	// (Updatable) The text to show on the label of the CAPTCHA challenge submit button when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Yes, I am human`.
	CaptchaSubmitLabel *string `pulumi:"captchaSubmitLabel"`
	// (Updatable) The title used when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Are you human?`
	CaptchaTitle *string `pulumi:"captchaTitle"`
}

type PolicyWafConfigHumanInteractionChallengeChallengeSettingsArgs

type PolicyWafConfigHumanInteractionChallengeChallengeSettingsArgs struct {
	// (Updatable) If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.
	BlockAction pulumi.StringPtrInput `pulumi:"blockAction"`
	// (Updatable) The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.
	BlockErrorPageCode pulumi.StringPtrInput `pulumi:"blockErrorPageCode"`
	// (Updatable) The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`
	BlockErrorPageDescription pulumi.StringPtrInput `pulumi:"blockErrorPageDescription"`
	// (Updatable) The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'
	BlockErrorPageMessage pulumi.StringPtrInput `pulumi:"blockErrorPageMessage"`
	// (Updatable) The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.
	BlockResponseCode pulumi.IntPtrInput `pulumi:"blockResponseCode"`
	// (Updatable) The text to show in the footer when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, default to `Enter the letters and numbers as they are shown in image above`.
	CaptchaFooter pulumi.StringPtrInput `pulumi:"captchaFooter"`
	// (Updatable) The text to show in the header when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `We have detected an increased number of attempts to access this webapp. To help us keep this webapp secure, please let us know that you are not a robot by entering the text from captcha below.`
	CaptchaHeader pulumi.StringPtrInput `pulumi:"captchaHeader"`
	// (Updatable) The text to show on the label of the CAPTCHA challenge submit button when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Yes, I am human`.
	CaptchaSubmitLabel pulumi.StringPtrInput `pulumi:"captchaSubmitLabel"`
	// (Updatable) The title used when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Are you human?`
	CaptchaTitle pulumi.StringPtrInput `pulumi:"captchaTitle"`
}

func (PolicyWafConfigHumanInteractionChallengeChallengeSettingsArgs) ElementType

func (PolicyWafConfigHumanInteractionChallengeChallengeSettingsArgs) ToPolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput

func (PolicyWafConfigHumanInteractionChallengeChallengeSettingsArgs) ToPolicyWafConfigHumanInteractionChallengeChallengeSettingsOutputWithContext

func (i PolicyWafConfigHumanInteractionChallengeChallengeSettingsArgs) ToPolicyWafConfigHumanInteractionChallengeChallengeSettingsOutputWithContext(ctx context.Context) PolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput

func (PolicyWafConfigHumanInteractionChallengeChallengeSettingsArgs) ToPolicyWafConfigHumanInteractionChallengeChallengeSettingsPtrOutput

func (PolicyWafConfigHumanInteractionChallengeChallengeSettingsArgs) ToPolicyWafConfigHumanInteractionChallengeChallengeSettingsPtrOutputWithContext

func (i PolicyWafConfigHumanInteractionChallengeChallengeSettingsArgs) ToPolicyWafConfigHumanInteractionChallengeChallengeSettingsPtrOutputWithContext(ctx context.Context) PolicyWafConfigHumanInteractionChallengeChallengeSettingsPtrOutput

type PolicyWafConfigHumanInteractionChallengeChallengeSettingsInput

type PolicyWafConfigHumanInteractionChallengeChallengeSettingsInput interface {
	pulumi.Input

	ToPolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput() PolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput
	ToPolicyWafConfigHumanInteractionChallengeChallengeSettingsOutputWithContext(context.Context) PolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput
}

PolicyWafConfigHumanInteractionChallengeChallengeSettingsInput is an input type that accepts PolicyWafConfigHumanInteractionChallengeChallengeSettingsArgs and PolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput values. You can construct a concrete instance of `PolicyWafConfigHumanInteractionChallengeChallengeSettingsInput` via:

PolicyWafConfigHumanInteractionChallengeChallengeSettingsArgs{...}

type PolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput

type PolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput struct{ *pulumi.OutputState }

func (PolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput) BlockAction

(Updatable) If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.

func (PolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput) BlockErrorPageCode

(Updatable) The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.

func (PolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput) BlockErrorPageDescription

(Updatable) The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`

func (PolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput) BlockErrorPageMessage

(Updatable) The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'

func (PolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput) BlockResponseCode

(Updatable) The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.

func (PolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput) CaptchaFooter

(Updatable) The text to show in the footer when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, default to `Enter the letters and numbers as they are shown in image above`.

func (PolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput) CaptchaHeader

(Updatable) The text to show in the header when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `We have detected an increased number of attempts to access this webapp. To help us keep this webapp secure, please let us know that you are not a robot by entering the text from captcha below.`

func (PolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput) CaptchaSubmitLabel

(Updatable) The text to show on the label of the CAPTCHA challenge submit button when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Yes, I am human`.

func (PolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput) CaptchaTitle

(Updatable) The title used when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Are you human?`

func (PolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput) ElementType

func (PolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput) ToPolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput

func (PolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput) ToPolicyWafConfigHumanInteractionChallengeChallengeSettingsOutputWithContext

func (o PolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput) ToPolicyWafConfigHumanInteractionChallengeChallengeSettingsOutputWithContext(ctx context.Context) PolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput

func (PolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput) ToPolicyWafConfigHumanInteractionChallengeChallengeSettingsPtrOutput

func (PolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput) ToPolicyWafConfigHumanInteractionChallengeChallengeSettingsPtrOutputWithContext

func (o PolicyWafConfigHumanInteractionChallengeChallengeSettingsOutput) ToPolicyWafConfigHumanInteractionChallengeChallengeSettingsPtrOutputWithContext(ctx context.Context) PolicyWafConfigHumanInteractionChallengeChallengeSettingsPtrOutput

type PolicyWafConfigHumanInteractionChallengeChallengeSettingsPtrInput

type PolicyWafConfigHumanInteractionChallengeChallengeSettingsPtrInput interface {
	pulumi.Input

	ToPolicyWafConfigHumanInteractionChallengeChallengeSettingsPtrOutput() PolicyWafConfigHumanInteractionChallengeChallengeSettingsPtrOutput
	ToPolicyWafConfigHumanInteractionChallengeChallengeSettingsPtrOutputWithContext(context.Context) PolicyWafConfigHumanInteractionChallengeChallengeSettingsPtrOutput
}

PolicyWafConfigHumanInteractionChallengeChallengeSettingsPtrInput is an input type that accepts PolicyWafConfigHumanInteractionChallengeChallengeSettingsArgs, PolicyWafConfigHumanInteractionChallengeChallengeSettingsPtr and PolicyWafConfigHumanInteractionChallengeChallengeSettingsPtrOutput values. You can construct a concrete instance of `PolicyWafConfigHumanInteractionChallengeChallengeSettingsPtrInput` via:

        PolicyWafConfigHumanInteractionChallengeChallengeSettingsArgs{...}

or:

        nil

type PolicyWafConfigHumanInteractionChallengeChallengeSettingsPtrOutput

type PolicyWafConfigHumanInteractionChallengeChallengeSettingsPtrOutput struct{ *pulumi.OutputState }

func (PolicyWafConfigHumanInteractionChallengeChallengeSettingsPtrOutput) BlockAction

(Updatable) If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.

func (PolicyWafConfigHumanInteractionChallengeChallengeSettingsPtrOutput) BlockErrorPageCode

(Updatable) The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.

func (PolicyWafConfigHumanInteractionChallengeChallengeSettingsPtrOutput) BlockErrorPageDescription

(Updatable) The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`

func (PolicyWafConfigHumanInteractionChallengeChallengeSettingsPtrOutput) BlockErrorPageMessage

(Updatable) The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'

func (PolicyWafConfigHumanInteractionChallengeChallengeSettingsPtrOutput) BlockResponseCode

(Updatable) The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.

func (PolicyWafConfigHumanInteractionChallengeChallengeSettingsPtrOutput) CaptchaFooter

(Updatable) The text to show in the footer when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, default to `Enter the letters and numbers as they are shown in image above`.

func (PolicyWafConfigHumanInteractionChallengeChallengeSettingsPtrOutput) CaptchaHeader

(Updatable) The text to show in the header when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `We have detected an increased number of attempts to access this webapp. To help us keep this webapp secure, please let us know that you are not a robot by entering the text from captcha below.`

func (PolicyWafConfigHumanInteractionChallengeChallengeSettingsPtrOutput) CaptchaSubmitLabel

(Updatable) The text to show on the label of the CAPTCHA challenge submit button when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Yes, I am human`.

func (PolicyWafConfigHumanInteractionChallengeChallengeSettingsPtrOutput) CaptchaTitle

(Updatable) The title used when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Are you human?`

func (PolicyWafConfigHumanInteractionChallengeChallengeSettingsPtrOutput) Elem

func (PolicyWafConfigHumanInteractionChallengeChallengeSettingsPtrOutput) ElementType

func (PolicyWafConfigHumanInteractionChallengeChallengeSettingsPtrOutput) ToPolicyWafConfigHumanInteractionChallengeChallengeSettingsPtrOutput

func (PolicyWafConfigHumanInteractionChallengeChallengeSettingsPtrOutput) ToPolicyWafConfigHumanInteractionChallengeChallengeSettingsPtrOutputWithContext

func (o PolicyWafConfigHumanInteractionChallengeChallengeSettingsPtrOutput) ToPolicyWafConfigHumanInteractionChallengeChallengeSettingsPtrOutputWithContext(ctx context.Context) PolicyWafConfigHumanInteractionChallengeChallengeSettingsPtrOutput

type PolicyWafConfigHumanInteractionChallengeInput

type PolicyWafConfigHumanInteractionChallengeInput interface {
	pulumi.Input

	ToPolicyWafConfigHumanInteractionChallengeOutput() PolicyWafConfigHumanInteractionChallengeOutput
	ToPolicyWafConfigHumanInteractionChallengeOutputWithContext(context.Context) PolicyWafConfigHumanInteractionChallengeOutput
}

PolicyWafConfigHumanInteractionChallengeInput is an input type that accepts PolicyWafConfigHumanInteractionChallengeArgs and PolicyWafConfigHumanInteractionChallengeOutput values. You can construct a concrete instance of `PolicyWafConfigHumanInteractionChallengeInput` via:

PolicyWafConfigHumanInteractionChallengeArgs{...}

type PolicyWafConfigHumanInteractionChallengeOutput

type PolicyWafConfigHumanInteractionChallengeOutput struct{ *pulumi.OutputState }

func (PolicyWafConfigHumanInteractionChallengeOutput) Action

(Updatable) The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.

func (PolicyWafConfigHumanInteractionChallengeOutput) ActionExpirationInSeconds

(Updatable) The number of seconds between challenges from the same IP address. If unspecified, defaults to `60`.

func (PolicyWafConfigHumanInteractionChallengeOutput) ChallengeSettings

(Updatable) The challenge settings if `action` is set to `BLOCK`.

func (PolicyWafConfigHumanInteractionChallengeOutput) ElementType

func (PolicyWafConfigHumanInteractionChallengeOutput) FailureThreshold

(Updatable) The number of failed requests before taking action. If unspecified, defaults to `10`.

func (PolicyWafConfigHumanInteractionChallengeOutput) FailureThresholdExpirationInSeconds

func (o PolicyWafConfigHumanInteractionChallengeOutput) FailureThresholdExpirationInSeconds() pulumi.IntPtrOutput

(Updatable) The number of seconds before the failure threshold resets. If unspecified, defaults to `60`.

func (PolicyWafConfigHumanInteractionChallengeOutput) InteractionThreshold

(Updatable) The number of interactions required to pass the challenge. If unspecified, defaults to `3`.

func (PolicyWafConfigHumanInteractionChallengeOutput) IsEnabled

(Updatable) Enables or disables the JavaScript challenge Web Application Firewall feature.

func (PolicyWafConfigHumanInteractionChallengeOutput) IsNatEnabled

(Updatable) When enabled, the user is identified not only by the IP address but also by an unique additional hash, which prevents blocking visitors with shared IP addresses.

func (PolicyWafConfigHumanInteractionChallengeOutput) RecordingPeriodInSeconds

(Updatable) The number of seconds to record the interactions from the user. If unspecified, defaults to `15`.

func (PolicyWafConfigHumanInteractionChallengeOutput) SetHttpHeader

(Updatable) Adds an additional HTTP header to requests that fail the challenge before being passed to the origin. Only applicable when the `action` is set to `DETECT`.

func (PolicyWafConfigHumanInteractionChallengeOutput) ToPolicyWafConfigHumanInteractionChallengeOutput

func (o PolicyWafConfigHumanInteractionChallengeOutput) ToPolicyWafConfigHumanInteractionChallengeOutput() PolicyWafConfigHumanInteractionChallengeOutput

func (PolicyWafConfigHumanInteractionChallengeOutput) ToPolicyWafConfigHumanInteractionChallengeOutputWithContext

func (o PolicyWafConfigHumanInteractionChallengeOutput) ToPolicyWafConfigHumanInteractionChallengeOutputWithContext(ctx context.Context) PolicyWafConfigHumanInteractionChallengeOutput

func (PolicyWafConfigHumanInteractionChallengeOutput) ToPolicyWafConfigHumanInteractionChallengePtrOutput

func (o PolicyWafConfigHumanInteractionChallengeOutput) ToPolicyWafConfigHumanInteractionChallengePtrOutput() PolicyWafConfigHumanInteractionChallengePtrOutput

func (PolicyWafConfigHumanInteractionChallengeOutput) ToPolicyWafConfigHumanInteractionChallengePtrOutputWithContext

func (o PolicyWafConfigHumanInteractionChallengeOutput) ToPolicyWafConfigHumanInteractionChallengePtrOutputWithContext(ctx context.Context) PolicyWafConfigHumanInteractionChallengePtrOutput

type PolicyWafConfigHumanInteractionChallengePtrInput

type PolicyWafConfigHumanInteractionChallengePtrInput interface {
	pulumi.Input

	ToPolicyWafConfigHumanInteractionChallengePtrOutput() PolicyWafConfigHumanInteractionChallengePtrOutput
	ToPolicyWafConfigHumanInteractionChallengePtrOutputWithContext(context.Context) PolicyWafConfigHumanInteractionChallengePtrOutput
}

PolicyWafConfigHumanInteractionChallengePtrInput is an input type that accepts PolicyWafConfigHumanInteractionChallengeArgs, PolicyWafConfigHumanInteractionChallengePtr and PolicyWafConfigHumanInteractionChallengePtrOutput values. You can construct a concrete instance of `PolicyWafConfigHumanInteractionChallengePtrInput` via:

        PolicyWafConfigHumanInteractionChallengeArgs{...}

or:

        nil

type PolicyWafConfigHumanInteractionChallengePtrOutput

type PolicyWafConfigHumanInteractionChallengePtrOutput struct{ *pulumi.OutputState }

func (PolicyWafConfigHumanInteractionChallengePtrOutput) Action

(Updatable) The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.

func (PolicyWafConfigHumanInteractionChallengePtrOutput) ActionExpirationInSeconds

(Updatable) The number of seconds between challenges from the same IP address. If unspecified, defaults to `60`.

func (PolicyWafConfigHumanInteractionChallengePtrOutput) ChallengeSettings

(Updatable) The challenge settings if `action` is set to `BLOCK`.

func (PolicyWafConfigHumanInteractionChallengePtrOutput) Elem

func (PolicyWafConfigHumanInteractionChallengePtrOutput) ElementType

func (PolicyWafConfigHumanInteractionChallengePtrOutput) FailureThreshold

(Updatable) The number of failed requests before taking action. If unspecified, defaults to `10`.

func (PolicyWafConfigHumanInteractionChallengePtrOutput) FailureThresholdExpirationInSeconds

func (o PolicyWafConfigHumanInteractionChallengePtrOutput) FailureThresholdExpirationInSeconds() pulumi.IntPtrOutput

(Updatable) The number of seconds before the failure threshold resets. If unspecified, defaults to `60`.

func (PolicyWafConfigHumanInteractionChallengePtrOutput) InteractionThreshold

(Updatable) The number of interactions required to pass the challenge. If unspecified, defaults to `3`.

func (PolicyWafConfigHumanInteractionChallengePtrOutput) IsEnabled

(Updatable) Enables or disables the JavaScript challenge Web Application Firewall feature.

func (PolicyWafConfigHumanInteractionChallengePtrOutput) IsNatEnabled

(Updatable) When enabled, the user is identified not only by the IP address but also by an unique additional hash, which prevents blocking visitors with shared IP addresses.

func (PolicyWafConfigHumanInteractionChallengePtrOutput) RecordingPeriodInSeconds

(Updatable) The number of seconds to record the interactions from the user. If unspecified, defaults to `15`.

func (PolicyWafConfigHumanInteractionChallengePtrOutput) SetHttpHeader

(Updatable) Adds an additional HTTP header to requests that fail the challenge before being passed to the origin. Only applicable when the `action` is set to `DETECT`.

func (PolicyWafConfigHumanInteractionChallengePtrOutput) ToPolicyWafConfigHumanInteractionChallengePtrOutput

func (o PolicyWafConfigHumanInteractionChallengePtrOutput) ToPolicyWafConfigHumanInteractionChallengePtrOutput() PolicyWafConfigHumanInteractionChallengePtrOutput

func (PolicyWafConfigHumanInteractionChallengePtrOutput) ToPolicyWafConfigHumanInteractionChallengePtrOutputWithContext

func (o PolicyWafConfigHumanInteractionChallengePtrOutput) ToPolicyWafConfigHumanInteractionChallengePtrOutputWithContext(ctx context.Context) PolicyWafConfigHumanInteractionChallengePtrOutput

type PolicyWafConfigHumanInteractionChallengeSetHttpHeader

type PolicyWafConfigHumanInteractionChallengeSetHttpHeader struct {
	// (Updatable) The unique name of the whitelist.
	//
	// ** IMPORTANT **
	// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
	Name string `pulumi:"name"`
	// (Updatable) The value of the header.
	Value string `pulumi:"value"`
}

type PolicyWafConfigHumanInteractionChallengeSetHttpHeaderArgs

type PolicyWafConfigHumanInteractionChallengeSetHttpHeaderArgs struct {
	// (Updatable) The unique name of the whitelist.
	//
	// ** IMPORTANT **
	// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
	Name pulumi.StringInput `pulumi:"name"`
	// (Updatable) The value of the header.
	Value pulumi.StringInput `pulumi:"value"`
}

func (PolicyWafConfigHumanInteractionChallengeSetHttpHeaderArgs) ElementType

func (PolicyWafConfigHumanInteractionChallengeSetHttpHeaderArgs) ToPolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput

func (PolicyWafConfigHumanInteractionChallengeSetHttpHeaderArgs) ToPolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutputWithContext

func (i PolicyWafConfigHumanInteractionChallengeSetHttpHeaderArgs) ToPolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutputWithContext(ctx context.Context) PolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput

func (PolicyWafConfigHumanInteractionChallengeSetHttpHeaderArgs) ToPolicyWafConfigHumanInteractionChallengeSetHttpHeaderPtrOutput

func (PolicyWafConfigHumanInteractionChallengeSetHttpHeaderArgs) ToPolicyWafConfigHumanInteractionChallengeSetHttpHeaderPtrOutputWithContext

func (i PolicyWafConfigHumanInteractionChallengeSetHttpHeaderArgs) ToPolicyWafConfigHumanInteractionChallengeSetHttpHeaderPtrOutputWithContext(ctx context.Context) PolicyWafConfigHumanInteractionChallengeSetHttpHeaderPtrOutput

type PolicyWafConfigHumanInteractionChallengeSetHttpHeaderInput

type PolicyWafConfigHumanInteractionChallengeSetHttpHeaderInput interface {
	pulumi.Input

	ToPolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput() PolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput
	ToPolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutputWithContext(context.Context) PolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput
}

PolicyWafConfigHumanInteractionChallengeSetHttpHeaderInput is an input type that accepts PolicyWafConfigHumanInteractionChallengeSetHttpHeaderArgs and PolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput values. You can construct a concrete instance of `PolicyWafConfigHumanInteractionChallengeSetHttpHeaderInput` via:

PolicyWafConfigHumanInteractionChallengeSetHttpHeaderArgs{...}

type PolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput

type PolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput struct{ *pulumi.OutputState }

func (PolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput) ElementType

func (PolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput) Name

(Updatable) The unique name of the whitelist.

** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

func (PolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput) ToPolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput

func (PolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput) ToPolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutputWithContext

func (o PolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput) ToPolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutputWithContext(ctx context.Context) PolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput

func (PolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput) ToPolicyWafConfigHumanInteractionChallengeSetHttpHeaderPtrOutput

func (PolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput) ToPolicyWafConfigHumanInteractionChallengeSetHttpHeaderPtrOutputWithContext

func (o PolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput) ToPolicyWafConfigHumanInteractionChallengeSetHttpHeaderPtrOutputWithContext(ctx context.Context) PolicyWafConfigHumanInteractionChallengeSetHttpHeaderPtrOutput

func (PolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutput) Value

(Updatable) The value of the header.

type PolicyWafConfigHumanInteractionChallengeSetHttpHeaderPtrInput

type PolicyWafConfigHumanInteractionChallengeSetHttpHeaderPtrInput interface {
	pulumi.Input

	ToPolicyWafConfigHumanInteractionChallengeSetHttpHeaderPtrOutput() PolicyWafConfigHumanInteractionChallengeSetHttpHeaderPtrOutput
	ToPolicyWafConfigHumanInteractionChallengeSetHttpHeaderPtrOutputWithContext(context.Context) PolicyWafConfigHumanInteractionChallengeSetHttpHeaderPtrOutput
}

PolicyWafConfigHumanInteractionChallengeSetHttpHeaderPtrInput is an input type that accepts PolicyWafConfigHumanInteractionChallengeSetHttpHeaderArgs, PolicyWafConfigHumanInteractionChallengeSetHttpHeaderPtr and PolicyWafConfigHumanInteractionChallengeSetHttpHeaderPtrOutput values. You can construct a concrete instance of `PolicyWafConfigHumanInteractionChallengeSetHttpHeaderPtrInput` via:

        PolicyWafConfigHumanInteractionChallengeSetHttpHeaderArgs{...}

or:

        nil

type PolicyWafConfigHumanInteractionChallengeSetHttpHeaderPtrOutput

type PolicyWafConfigHumanInteractionChallengeSetHttpHeaderPtrOutput struct{ *pulumi.OutputState }

func (PolicyWafConfigHumanInteractionChallengeSetHttpHeaderPtrOutput) Elem

func (PolicyWafConfigHumanInteractionChallengeSetHttpHeaderPtrOutput) ElementType

func (PolicyWafConfigHumanInteractionChallengeSetHttpHeaderPtrOutput) Name

(Updatable) The unique name of the whitelist.

** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

func (PolicyWafConfigHumanInteractionChallengeSetHttpHeaderPtrOutput) ToPolicyWafConfigHumanInteractionChallengeSetHttpHeaderPtrOutput

func (PolicyWafConfigHumanInteractionChallengeSetHttpHeaderPtrOutput) ToPolicyWafConfigHumanInteractionChallengeSetHttpHeaderPtrOutputWithContext

func (o PolicyWafConfigHumanInteractionChallengeSetHttpHeaderPtrOutput) ToPolicyWafConfigHumanInteractionChallengeSetHttpHeaderPtrOutputWithContext(ctx context.Context) PolicyWafConfigHumanInteractionChallengeSetHttpHeaderPtrOutput

func (PolicyWafConfigHumanInteractionChallengeSetHttpHeaderPtrOutput) Value

(Updatable) The value of the header.

type PolicyWafConfigInput

type PolicyWafConfigInput interface {
	pulumi.Input

	ToPolicyWafConfigOutput() PolicyWafConfigOutput
	ToPolicyWafConfigOutputWithContext(context.Context) PolicyWafConfigOutput
}

PolicyWafConfigInput is an input type that accepts PolicyWafConfigArgs and PolicyWafConfigOutput values. You can construct a concrete instance of `PolicyWafConfigInput` via:

PolicyWafConfigArgs{...}

type PolicyWafConfigJsChallenge

type PolicyWafConfigJsChallenge struct {
	// (Updatable) The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.
	Action *string `pulumi:"action"`
	// (Updatable) The number of seconds between challenges from the same IP address. If unspecified, defaults to `60`.
	ActionExpirationInSeconds *int `pulumi:"actionExpirationInSeconds"`
	// (Updatable) When enabled, redirect responses from the origin will also be challenged. This will change HTTP 301/302 responses from origin to HTTP 200 with an HTML body containing JavaScript page redirection.
	AreRedirectsChallenged *bool `pulumi:"areRedirectsChallenged"`
	// (Updatable) The challenge settings if `action` is set to `BLOCK`.
	ChallengeSettings *PolicyWafConfigJsChallengeChallengeSettings `pulumi:"challengeSettings"`
	// (Updatable) When defined, the JavaScript Challenge would be applied only for the requests that matched all the listed conditions.
	Criterias []PolicyWafConfigJsChallengeCriteria `pulumi:"criterias"`
	// (Updatable) The number of failed requests before taking action. If unspecified, defaults to `10`.
	FailureThreshold *int `pulumi:"failureThreshold"`
	// (Updatable) Enables or disables the JavaScript challenge Web Application Firewall feature.
	IsEnabled bool `pulumi:"isEnabled"`
	// (Updatable) When enabled, the user is identified not only by the IP address but also by an unique additional hash, which prevents blocking visitors with shared IP addresses.
	IsNatEnabled *bool `pulumi:"isNatEnabled"`
	// (Updatable) Adds an additional HTTP header to requests that fail the challenge before being passed to the origin. Only applicable when the `action` is set to `DETECT`.
	SetHttpHeader *PolicyWafConfigJsChallengeSetHttpHeader `pulumi:"setHttpHeader"`
}

type PolicyWafConfigJsChallengeArgs

type PolicyWafConfigJsChallengeArgs struct {
	// (Updatable) The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.
	Action pulumi.StringPtrInput `pulumi:"action"`
	// (Updatable) The number of seconds between challenges from the same IP address. If unspecified, defaults to `60`.
	ActionExpirationInSeconds pulumi.IntPtrInput `pulumi:"actionExpirationInSeconds"`
	// (Updatable) When enabled, redirect responses from the origin will also be challenged. This will change HTTP 301/302 responses from origin to HTTP 200 with an HTML body containing JavaScript page redirection.
	AreRedirectsChallenged pulumi.BoolPtrInput `pulumi:"areRedirectsChallenged"`
	// (Updatable) The challenge settings if `action` is set to `BLOCK`.
	ChallengeSettings PolicyWafConfigJsChallengeChallengeSettingsPtrInput `pulumi:"challengeSettings"`
	// (Updatable) When defined, the JavaScript Challenge would be applied only for the requests that matched all the listed conditions.
	Criterias PolicyWafConfigJsChallengeCriteriaArrayInput `pulumi:"criterias"`
	// (Updatable) The number of failed requests before taking action. If unspecified, defaults to `10`.
	FailureThreshold pulumi.IntPtrInput `pulumi:"failureThreshold"`
	// (Updatable) Enables or disables the JavaScript challenge Web Application Firewall feature.
	IsEnabled pulumi.BoolInput `pulumi:"isEnabled"`
	// (Updatable) When enabled, the user is identified not only by the IP address but also by an unique additional hash, which prevents blocking visitors with shared IP addresses.
	IsNatEnabled pulumi.BoolPtrInput `pulumi:"isNatEnabled"`
	// (Updatable) Adds an additional HTTP header to requests that fail the challenge before being passed to the origin. Only applicable when the `action` is set to `DETECT`.
	SetHttpHeader PolicyWafConfigJsChallengeSetHttpHeaderPtrInput `pulumi:"setHttpHeader"`
}

func (PolicyWafConfigJsChallengeArgs) ElementType

func (PolicyWafConfigJsChallengeArgs) ToPolicyWafConfigJsChallengeOutput

func (i PolicyWafConfigJsChallengeArgs) ToPolicyWafConfigJsChallengeOutput() PolicyWafConfigJsChallengeOutput

func (PolicyWafConfigJsChallengeArgs) ToPolicyWafConfigJsChallengeOutputWithContext

func (i PolicyWafConfigJsChallengeArgs) ToPolicyWafConfigJsChallengeOutputWithContext(ctx context.Context) PolicyWafConfigJsChallengeOutput

func (PolicyWafConfigJsChallengeArgs) ToPolicyWafConfigJsChallengePtrOutput

func (i PolicyWafConfigJsChallengeArgs) ToPolicyWafConfigJsChallengePtrOutput() PolicyWafConfigJsChallengePtrOutput

func (PolicyWafConfigJsChallengeArgs) ToPolicyWafConfigJsChallengePtrOutputWithContext

func (i PolicyWafConfigJsChallengeArgs) ToPolicyWafConfigJsChallengePtrOutputWithContext(ctx context.Context) PolicyWafConfigJsChallengePtrOutput

type PolicyWafConfigJsChallengeChallengeSettings

type PolicyWafConfigJsChallengeChallengeSettings struct {
	// (Updatable) If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.
	BlockAction *string `pulumi:"blockAction"`
	// (Updatable) The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.
	BlockErrorPageCode *string `pulumi:"blockErrorPageCode"`
	// (Updatable) The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`
	BlockErrorPageDescription *string `pulumi:"blockErrorPageDescription"`
	// (Updatable) The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'
	BlockErrorPageMessage *string `pulumi:"blockErrorPageMessage"`
	// (Updatable) The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.
	BlockResponseCode *int `pulumi:"blockResponseCode"`
	// (Updatable) The text to show in the footer when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, default to `Enter the letters and numbers as they are shown in image above`.
	CaptchaFooter *string `pulumi:"captchaFooter"`
	// (Updatable) The text to show in the header when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `We have detected an increased number of attempts to access this webapp. To help us keep this webapp secure, please let us know that you are not a robot by entering the text from captcha below.`
	CaptchaHeader *string `pulumi:"captchaHeader"`
	// (Updatable) The text to show on the label of the CAPTCHA challenge submit button when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Yes, I am human`.
	CaptchaSubmitLabel *string `pulumi:"captchaSubmitLabel"`
	// (Updatable) The title used when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Are you human?`
	CaptchaTitle *string `pulumi:"captchaTitle"`
}

type PolicyWafConfigJsChallengeChallengeSettingsArgs

type PolicyWafConfigJsChallengeChallengeSettingsArgs struct {
	// (Updatable) If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.
	BlockAction pulumi.StringPtrInput `pulumi:"blockAction"`
	// (Updatable) The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.
	BlockErrorPageCode pulumi.StringPtrInput `pulumi:"blockErrorPageCode"`
	// (Updatable) The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`
	BlockErrorPageDescription pulumi.StringPtrInput `pulumi:"blockErrorPageDescription"`
	// (Updatable) The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'
	BlockErrorPageMessage pulumi.StringPtrInput `pulumi:"blockErrorPageMessage"`
	// (Updatable) The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.
	BlockResponseCode pulumi.IntPtrInput `pulumi:"blockResponseCode"`
	// (Updatable) The text to show in the footer when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, default to `Enter the letters and numbers as they are shown in image above`.
	CaptchaFooter pulumi.StringPtrInput `pulumi:"captchaFooter"`
	// (Updatable) The text to show in the header when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `We have detected an increased number of attempts to access this webapp. To help us keep this webapp secure, please let us know that you are not a robot by entering the text from captcha below.`
	CaptchaHeader pulumi.StringPtrInput `pulumi:"captchaHeader"`
	// (Updatable) The text to show on the label of the CAPTCHA challenge submit button when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Yes, I am human`.
	CaptchaSubmitLabel pulumi.StringPtrInput `pulumi:"captchaSubmitLabel"`
	// (Updatable) The title used when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Are you human?`
	CaptchaTitle pulumi.StringPtrInput `pulumi:"captchaTitle"`
}

func (PolicyWafConfigJsChallengeChallengeSettingsArgs) ElementType

func (PolicyWafConfigJsChallengeChallengeSettingsArgs) ToPolicyWafConfigJsChallengeChallengeSettingsOutput

func (i PolicyWafConfigJsChallengeChallengeSettingsArgs) ToPolicyWafConfigJsChallengeChallengeSettingsOutput() PolicyWafConfigJsChallengeChallengeSettingsOutput

func (PolicyWafConfigJsChallengeChallengeSettingsArgs) ToPolicyWafConfigJsChallengeChallengeSettingsOutputWithContext

func (i PolicyWafConfigJsChallengeChallengeSettingsArgs) ToPolicyWafConfigJsChallengeChallengeSettingsOutputWithContext(ctx context.Context) PolicyWafConfigJsChallengeChallengeSettingsOutput

func (PolicyWafConfigJsChallengeChallengeSettingsArgs) ToPolicyWafConfigJsChallengeChallengeSettingsPtrOutput

func (i PolicyWafConfigJsChallengeChallengeSettingsArgs) ToPolicyWafConfigJsChallengeChallengeSettingsPtrOutput() PolicyWafConfigJsChallengeChallengeSettingsPtrOutput

func (PolicyWafConfigJsChallengeChallengeSettingsArgs) ToPolicyWafConfigJsChallengeChallengeSettingsPtrOutputWithContext

func (i PolicyWafConfigJsChallengeChallengeSettingsArgs) ToPolicyWafConfigJsChallengeChallengeSettingsPtrOutputWithContext(ctx context.Context) PolicyWafConfigJsChallengeChallengeSettingsPtrOutput

type PolicyWafConfigJsChallengeChallengeSettingsInput

type PolicyWafConfigJsChallengeChallengeSettingsInput interface {
	pulumi.Input

	ToPolicyWafConfigJsChallengeChallengeSettingsOutput() PolicyWafConfigJsChallengeChallengeSettingsOutput
	ToPolicyWafConfigJsChallengeChallengeSettingsOutputWithContext(context.Context) PolicyWafConfigJsChallengeChallengeSettingsOutput
}

PolicyWafConfigJsChallengeChallengeSettingsInput is an input type that accepts PolicyWafConfigJsChallengeChallengeSettingsArgs and PolicyWafConfigJsChallengeChallengeSettingsOutput values. You can construct a concrete instance of `PolicyWafConfigJsChallengeChallengeSettingsInput` via:

PolicyWafConfigJsChallengeChallengeSettingsArgs{...}

type PolicyWafConfigJsChallengeChallengeSettingsOutput

type PolicyWafConfigJsChallengeChallengeSettingsOutput struct{ *pulumi.OutputState }

func (PolicyWafConfigJsChallengeChallengeSettingsOutput) BlockAction

(Updatable) If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.

func (PolicyWafConfigJsChallengeChallengeSettingsOutput) BlockErrorPageCode

(Updatable) The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.

func (PolicyWafConfigJsChallengeChallengeSettingsOutput) BlockErrorPageDescription

(Updatable) The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`

func (PolicyWafConfigJsChallengeChallengeSettingsOutput) BlockErrorPageMessage

(Updatable) The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'

func (PolicyWafConfigJsChallengeChallengeSettingsOutput) BlockResponseCode

(Updatable) The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.

func (PolicyWafConfigJsChallengeChallengeSettingsOutput) CaptchaFooter

(Updatable) The text to show in the footer when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, default to `Enter the letters and numbers as they are shown in image above`.

func (PolicyWafConfigJsChallengeChallengeSettingsOutput) CaptchaHeader

(Updatable) The text to show in the header when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `We have detected an increased number of attempts to access this webapp. To help us keep this webapp secure, please let us know that you are not a robot by entering the text from captcha below.`

func (PolicyWafConfigJsChallengeChallengeSettingsOutput) CaptchaSubmitLabel

(Updatable) The text to show on the label of the CAPTCHA challenge submit button when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Yes, I am human`.

func (PolicyWafConfigJsChallengeChallengeSettingsOutput) CaptchaTitle

(Updatable) The title used when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Are you human?`

func (PolicyWafConfigJsChallengeChallengeSettingsOutput) ElementType

func (PolicyWafConfigJsChallengeChallengeSettingsOutput) ToPolicyWafConfigJsChallengeChallengeSettingsOutput

func (o PolicyWafConfigJsChallengeChallengeSettingsOutput) ToPolicyWafConfigJsChallengeChallengeSettingsOutput() PolicyWafConfigJsChallengeChallengeSettingsOutput

func (PolicyWafConfigJsChallengeChallengeSettingsOutput) ToPolicyWafConfigJsChallengeChallengeSettingsOutputWithContext

func (o PolicyWafConfigJsChallengeChallengeSettingsOutput) ToPolicyWafConfigJsChallengeChallengeSettingsOutputWithContext(ctx context.Context) PolicyWafConfigJsChallengeChallengeSettingsOutput

func (PolicyWafConfigJsChallengeChallengeSettingsOutput) ToPolicyWafConfigJsChallengeChallengeSettingsPtrOutput

func (o PolicyWafConfigJsChallengeChallengeSettingsOutput) ToPolicyWafConfigJsChallengeChallengeSettingsPtrOutput() PolicyWafConfigJsChallengeChallengeSettingsPtrOutput

func (PolicyWafConfigJsChallengeChallengeSettingsOutput) ToPolicyWafConfigJsChallengeChallengeSettingsPtrOutputWithContext

func (o PolicyWafConfigJsChallengeChallengeSettingsOutput) ToPolicyWafConfigJsChallengeChallengeSettingsPtrOutputWithContext(ctx context.Context) PolicyWafConfigJsChallengeChallengeSettingsPtrOutput

type PolicyWafConfigJsChallengeChallengeSettingsPtrInput

type PolicyWafConfigJsChallengeChallengeSettingsPtrInput interface {
	pulumi.Input

	ToPolicyWafConfigJsChallengeChallengeSettingsPtrOutput() PolicyWafConfigJsChallengeChallengeSettingsPtrOutput
	ToPolicyWafConfigJsChallengeChallengeSettingsPtrOutputWithContext(context.Context) PolicyWafConfigJsChallengeChallengeSettingsPtrOutput
}

PolicyWafConfigJsChallengeChallengeSettingsPtrInput is an input type that accepts PolicyWafConfigJsChallengeChallengeSettingsArgs, PolicyWafConfigJsChallengeChallengeSettingsPtr and PolicyWafConfigJsChallengeChallengeSettingsPtrOutput values. You can construct a concrete instance of `PolicyWafConfigJsChallengeChallengeSettingsPtrInput` via:

        PolicyWafConfigJsChallengeChallengeSettingsArgs{...}

or:

        nil

type PolicyWafConfigJsChallengeChallengeSettingsPtrOutput

type PolicyWafConfigJsChallengeChallengeSettingsPtrOutput struct{ *pulumi.OutputState }

func (PolicyWafConfigJsChallengeChallengeSettingsPtrOutput) BlockAction

(Updatable) If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.

func (PolicyWafConfigJsChallengeChallengeSettingsPtrOutput) BlockErrorPageCode

(Updatable) The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.

func (PolicyWafConfigJsChallengeChallengeSettingsPtrOutput) BlockErrorPageDescription

(Updatable) The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`

func (PolicyWafConfigJsChallengeChallengeSettingsPtrOutput) BlockErrorPageMessage

(Updatable) The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'

func (PolicyWafConfigJsChallengeChallengeSettingsPtrOutput) BlockResponseCode

(Updatable) The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.

func (PolicyWafConfigJsChallengeChallengeSettingsPtrOutput) CaptchaFooter

(Updatable) The text to show in the footer when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, default to `Enter the letters and numbers as they are shown in image above`.

func (PolicyWafConfigJsChallengeChallengeSettingsPtrOutput) CaptchaHeader

(Updatable) The text to show in the header when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `We have detected an increased number of attempts to access this webapp. To help us keep this webapp secure, please let us know that you are not a robot by entering the text from captcha below.`

func (PolicyWafConfigJsChallengeChallengeSettingsPtrOutput) CaptchaSubmitLabel

(Updatable) The text to show on the label of the CAPTCHA challenge submit button when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Yes, I am human`.

func (PolicyWafConfigJsChallengeChallengeSettingsPtrOutput) CaptchaTitle

(Updatable) The title used when showing a CAPTCHA challenge when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_CAPTCHA`, and the request is blocked. If unspecified, defaults to `Are you human?`

func (PolicyWafConfigJsChallengeChallengeSettingsPtrOutput) Elem

func (PolicyWafConfigJsChallengeChallengeSettingsPtrOutput) ElementType

func (PolicyWafConfigJsChallengeChallengeSettingsPtrOutput) ToPolicyWafConfigJsChallengeChallengeSettingsPtrOutput

func (PolicyWafConfigJsChallengeChallengeSettingsPtrOutput) ToPolicyWafConfigJsChallengeChallengeSettingsPtrOutputWithContext

func (o PolicyWafConfigJsChallengeChallengeSettingsPtrOutput) ToPolicyWafConfigJsChallengeChallengeSettingsPtrOutputWithContext(ctx context.Context) PolicyWafConfigJsChallengeChallengeSettingsPtrOutput

type PolicyWafConfigJsChallengeCriteria

type PolicyWafConfigJsChallengeCriteria struct {
	// (Updatable) The criteria the access rule and JavaScript Challenge uses to determine if action should be taken on a request.
	// * **URL_IS:** Matches if the concatenation of request URL path and query is identical to the contents of the `value` field. URL must start with a `/`.
	// * **URL_IS_NOT:** Matches if the concatenation of request URL path and query is not identical to the contents of the `value` field. URL must start with a `/`.
	// * **URL_STARTS_WITH:** Matches if the concatenation of request URL path and query starts with the contents of the `value` field. URL must start with a `/`.
	// * **URL_PART_ENDS_WITH:** Matches if the concatenation of request URL path and query ends with the contents of the `value` field.
	// * **URL_PART_CONTAINS:** Matches if the concatenation of request URL path and query contains the contents of the `value` field.
	// * **URL_REGEX:** Matches if the concatenation of request URL path and query is described by the regular expression in the value field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org).
	// * **URL_DOES_NOT_MATCH_REGEX:** Matches if the concatenation of request URL path and query is not described by the regular expression in the `value` field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org).
	// * **URL_DOES_NOT_START_WITH:** Matches if the concatenation of request URL path and query does not start with the contents of the `value` field.
	// * **URL_PART_DOES_NOT_CONTAIN:** Matches if the concatenation of request URL path and query does not contain the contents of the `value` field.
	// * **URL_PART_DOES_NOT_END_WITH:** Matches if the concatenation of request URL path and query does not end with the contents of the `value` field.
	// * **IP_IS:** Matches if the request originates from one of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30"
	// * **IP_IS_NOT:** Matches if the request does not originate from any of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30"
	// * **IP_IN_LIST:** Matches if the request originates from one of the IP addresses contained in the referenced address list. The `value` in this case is OCID of the address list.
	// * **IP_NOT_IN_LIST:** Matches if the request does not originate from any IP address contained in the referenced address list. The `value` field in this case is OCID of the address list.
	// * **HTTP_HEADER_CONTAINS:** The HTTP_HEADER_CONTAINS criteria is defined using a compound value separated by a colon: a header field name and a header field value. `host:test.example.com` is an example of a criteria value where `host` is the header field name and `test.example.com` is the header field value. A request matches when the header field name is a case insensitive match and the header field value is a case insensitive, substring match. *Example:* With a criteria value of `host:test.example.com`, where `host` is the name of the field and `test.example.com` is the value of the host field, a request with the header values, `Host: www.test.example.com` will match, where as a request with header values of `host: www.example.com` or `host: test.sub.example.com` will not match.
	// * **HTTP_METHOD_IS:** Matches if the request method is identical to one of the values listed in field. The `value` in this case is string with one or multiple HTTP methods separated by new line symbol \n The list of available methods: `GET`, `HEAD`, `POST`, `PUT`, `DELETE`, `CONNECT`, `OPTIONS`, `TRACE`, `PATCH`
	//
	// *Example:* "GET\nPOST"
	// * **HTTP_METHOD_IS_NOT:** Matches if the request is not identical to any of the contents of the `value` field. The `value` in this case is string with one or multiple HTTP methods separated by new line symbol \n The list of available methods: `GET`, `HEAD`, `POST`, `PUT`, `DELETE`, `CONNECT`, `OPTIONS`, `TRACE`, `PATCH`
	//
	// *Example:* "GET\nPOST"
	// * **COUNTRY_IS:** Matches if the request originates from one of countries in the `value` field. The `value` in this case is string with one or multiple countries separated by new line symbol \n Country codes are in ISO 3166-1 alpha-2 format. For a list of codes, see [ISO's website](https://www.iso.org/obp/ui/#search/code/). *Example:* "AL\nDZ\nAM"
	// * **COUNTRY_IS_NOT:** Matches if the request does not originate from any of countries in the `value` field. The `value` in this case is string with one or multiple countries separated by new line symbol \n Country codes are in ISO 3166-1 alpha-2 format. For a list of codes, see [ISO's website](https://www.iso.org/obp/ui/#search/code/). *Example:* "AL\nDZ\nAM"
	// * **USER_AGENT_IS:** Matches if the requesting user agent is identical to the contents of the `value` field. *Example:* `Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:35.0) Gecko/20100101 Firefox/35.0`
	// * **USER_AGENT_IS_NOT:** Matches if the requesting user agent is not identical to the contents of the `value` field. *Example:* `Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:35.0) Gecko/20100101 Firefox/35.0`
	Condition string `pulumi:"condition"`
	// (Updatable) When enabled, the condition will be matched with case-sensitive rules.
	IsCaseSensitive *bool `pulumi:"isCaseSensitive"`
	// (Updatable) The value of the header.
	Value string `pulumi:"value"`
}

type PolicyWafConfigJsChallengeCriteriaArgs

type PolicyWafConfigJsChallengeCriteriaArgs struct {
	// (Updatable) The criteria the access rule and JavaScript Challenge uses to determine if action should be taken on a request.
	// * **URL_IS:** Matches if the concatenation of request URL path and query is identical to the contents of the `value` field. URL must start with a `/`.
	// * **URL_IS_NOT:** Matches if the concatenation of request URL path and query is not identical to the contents of the `value` field. URL must start with a `/`.
	// * **URL_STARTS_WITH:** Matches if the concatenation of request URL path and query starts with the contents of the `value` field. URL must start with a `/`.
	// * **URL_PART_ENDS_WITH:** Matches if the concatenation of request URL path and query ends with the contents of the `value` field.
	// * **URL_PART_CONTAINS:** Matches if the concatenation of request URL path and query contains the contents of the `value` field.
	// * **URL_REGEX:** Matches if the concatenation of request URL path and query is described by the regular expression in the value field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org).
	// * **URL_DOES_NOT_MATCH_REGEX:** Matches if the concatenation of request URL path and query is not described by the regular expression in the `value` field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org).
	// * **URL_DOES_NOT_START_WITH:** Matches if the concatenation of request URL path and query does not start with the contents of the `value` field.
	// * **URL_PART_DOES_NOT_CONTAIN:** Matches if the concatenation of request URL path and query does not contain the contents of the `value` field.
	// * **URL_PART_DOES_NOT_END_WITH:** Matches if the concatenation of request URL path and query does not end with the contents of the `value` field.
	// * **IP_IS:** Matches if the request originates from one of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30"
	// * **IP_IS_NOT:** Matches if the request does not originate from any of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30"
	// * **IP_IN_LIST:** Matches if the request originates from one of the IP addresses contained in the referenced address list. The `value` in this case is OCID of the address list.
	// * **IP_NOT_IN_LIST:** Matches if the request does not originate from any IP address contained in the referenced address list. The `value` field in this case is OCID of the address list.
	// * **HTTP_HEADER_CONTAINS:** The HTTP_HEADER_CONTAINS criteria is defined using a compound value separated by a colon: a header field name and a header field value. `host:test.example.com` is an example of a criteria value where `host` is the header field name and `test.example.com` is the header field value. A request matches when the header field name is a case insensitive match and the header field value is a case insensitive, substring match. *Example:* With a criteria value of `host:test.example.com`, where `host` is the name of the field and `test.example.com` is the value of the host field, a request with the header values, `Host: www.test.example.com` will match, where as a request with header values of `host: www.example.com` or `host: test.sub.example.com` will not match.
	// * **HTTP_METHOD_IS:** Matches if the request method is identical to one of the values listed in field. The `value` in this case is string with one or multiple HTTP methods separated by new line symbol \n The list of available methods: `GET`, `HEAD`, `POST`, `PUT`, `DELETE`, `CONNECT`, `OPTIONS`, `TRACE`, `PATCH`
	//
	// *Example:* "GET\nPOST"
	// * **HTTP_METHOD_IS_NOT:** Matches if the request is not identical to any of the contents of the `value` field. The `value` in this case is string with one or multiple HTTP methods separated by new line symbol \n The list of available methods: `GET`, `HEAD`, `POST`, `PUT`, `DELETE`, `CONNECT`, `OPTIONS`, `TRACE`, `PATCH`
	//
	// *Example:* "GET\nPOST"
	// * **COUNTRY_IS:** Matches if the request originates from one of countries in the `value` field. The `value` in this case is string with one or multiple countries separated by new line symbol \n Country codes are in ISO 3166-1 alpha-2 format. For a list of codes, see [ISO's website](https://www.iso.org/obp/ui/#search/code/). *Example:* "AL\nDZ\nAM"
	// * **COUNTRY_IS_NOT:** Matches if the request does not originate from any of countries in the `value` field. The `value` in this case is string with one or multiple countries separated by new line symbol \n Country codes are in ISO 3166-1 alpha-2 format. For a list of codes, see [ISO's website](https://www.iso.org/obp/ui/#search/code/). *Example:* "AL\nDZ\nAM"
	// * **USER_AGENT_IS:** Matches if the requesting user agent is identical to the contents of the `value` field. *Example:* `Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:35.0) Gecko/20100101 Firefox/35.0`
	// * **USER_AGENT_IS_NOT:** Matches if the requesting user agent is not identical to the contents of the `value` field. *Example:* `Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:35.0) Gecko/20100101 Firefox/35.0`
	Condition pulumi.StringInput `pulumi:"condition"`
	// (Updatable) When enabled, the condition will be matched with case-sensitive rules.
	IsCaseSensitive pulumi.BoolPtrInput `pulumi:"isCaseSensitive"`
	// (Updatable) The value of the header.
	Value pulumi.StringInput `pulumi:"value"`
}

func (PolicyWafConfigJsChallengeCriteriaArgs) ElementType

func (PolicyWafConfigJsChallengeCriteriaArgs) ToPolicyWafConfigJsChallengeCriteriaOutput

func (i PolicyWafConfigJsChallengeCriteriaArgs) ToPolicyWafConfigJsChallengeCriteriaOutput() PolicyWafConfigJsChallengeCriteriaOutput

func (PolicyWafConfigJsChallengeCriteriaArgs) ToPolicyWafConfigJsChallengeCriteriaOutputWithContext

func (i PolicyWafConfigJsChallengeCriteriaArgs) ToPolicyWafConfigJsChallengeCriteriaOutputWithContext(ctx context.Context) PolicyWafConfigJsChallengeCriteriaOutput

type PolicyWafConfigJsChallengeCriteriaArray

type PolicyWafConfigJsChallengeCriteriaArray []PolicyWafConfigJsChallengeCriteriaInput

func (PolicyWafConfigJsChallengeCriteriaArray) ElementType

func (PolicyWafConfigJsChallengeCriteriaArray) ToPolicyWafConfigJsChallengeCriteriaArrayOutput

func (i PolicyWafConfigJsChallengeCriteriaArray) ToPolicyWafConfigJsChallengeCriteriaArrayOutput() PolicyWafConfigJsChallengeCriteriaArrayOutput

func (PolicyWafConfigJsChallengeCriteriaArray) ToPolicyWafConfigJsChallengeCriteriaArrayOutputWithContext

func (i PolicyWafConfigJsChallengeCriteriaArray) ToPolicyWafConfigJsChallengeCriteriaArrayOutputWithContext(ctx context.Context) PolicyWafConfigJsChallengeCriteriaArrayOutput

type PolicyWafConfigJsChallengeCriteriaArrayInput

type PolicyWafConfigJsChallengeCriteriaArrayInput interface {
	pulumi.Input

	ToPolicyWafConfigJsChallengeCriteriaArrayOutput() PolicyWafConfigJsChallengeCriteriaArrayOutput
	ToPolicyWafConfigJsChallengeCriteriaArrayOutputWithContext(context.Context) PolicyWafConfigJsChallengeCriteriaArrayOutput
}

PolicyWafConfigJsChallengeCriteriaArrayInput is an input type that accepts PolicyWafConfigJsChallengeCriteriaArray and PolicyWafConfigJsChallengeCriteriaArrayOutput values. You can construct a concrete instance of `PolicyWafConfigJsChallengeCriteriaArrayInput` via:

PolicyWafConfigJsChallengeCriteriaArray{ PolicyWafConfigJsChallengeCriteriaArgs{...} }

type PolicyWafConfigJsChallengeCriteriaArrayOutput

type PolicyWafConfigJsChallengeCriteriaArrayOutput struct{ *pulumi.OutputState }

func (PolicyWafConfigJsChallengeCriteriaArrayOutput) ElementType

func (PolicyWafConfigJsChallengeCriteriaArrayOutput) Index

func (PolicyWafConfigJsChallengeCriteriaArrayOutput) ToPolicyWafConfigJsChallengeCriteriaArrayOutput

func (o PolicyWafConfigJsChallengeCriteriaArrayOutput) ToPolicyWafConfigJsChallengeCriteriaArrayOutput() PolicyWafConfigJsChallengeCriteriaArrayOutput

func (PolicyWafConfigJsChallengeCriteriaArrayOutput) ToPolicyWafConfigJsChallengeCriteriaArrayOutputWithContext

func (o PolicyWafConfigJsChallengeCriteriaArrayOutput) ToPolicyWafConfigJsChallengeCriteriaArrayOutputWithContext(ctx context.Context) PolicyWafConfigJsChallengeCriteriaArrayOutput

type PolicyWafConfigJsChallengeCriteriaInput

type PolicyWafConfigJsChallengeCriteriaInput interface {
	pulumi.Input

	ToPolicyWafConfigJsChallengeCriteriaOutput() PolicyWafConfigJsChallengeCriteriaOutput
	ToPolicyWafConfigJsChallengeCriteriaOutputWithContext(context.Context) PolicyWafConfigJsChallengeCriteriaOutput
}

PolicyWafConfigJsChallengeCriteriaInput is an input type that accepts PolicyWafConfigJsChallengeCriteriaArgs and PolicyWafConfigJsChallengeCriteriaOutput values. You can construct a concrete instance of `PolicyWafConfigJsChallengeCriteriaInput` via:

PolicyWafConfigJsChallengeCriteriaArgs{...}

type PolicyWafConfigJsChallengeCriteriaOutput

type PolicyWafConfigJsChallengeCriteriaOutput struct{ *pulumi.OutputState }

func (PolicyWafConfigJsChallengeCriteriaOutput) Condition

(Updatable) The criteria the access rule and JavaScript Challenge uses to determine if action should be taken on a request. * **URL_IS:** Matches if the concatenation of request URL path and query is identical to the contents of the `value` field. URL must start with a `/`. * **URL_IS_NOT:** Matches if the concatenation of request URL path and query is not identical to the contents of the `value` field. URL must start with a `/`. * **URL_STARTS_WITH:** Matches if the concatenation of request URL path and query starts with the contents of the `value` field. URL must start with a `/`. * **URL_PART_ENDS_WITH:** Matches if the concatenation of request URL path and query ends with the contents of the `value` field. * **URL_PART_CONTAINS:** Matches if the concatenation of request URL path and query contains the contents of the `value` field. * **URL_REGEX:** Matches if the concatenation of request URL path and query is described by the regular expression in the value field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org). * **URL_DOES_NOT_MATCH_REGEX:** Matches if the concatenation of request URL path and query is not described by the regular expression in the `value` field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org). * **URL_DOES_NOT_START_WITH:** Matches if the concatenation of request URL path and query does not start with the contents of the `value` field. * **URL_PART_DOES_NOT_CONTAIN:** Matches if the concatenation of request URL path and query does not contain the contents of the `value` field. * **URL_PART_DOES_NOT_END_WITH:** Matches if the concatenation of request URL path and query does not end with the contents of the `value` field. * **IP_IS:** Matches if the request originates from one of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30" * **IP_IS_NOT:** Matches if the request does not originate from any of the IP addresses contained in the defined address list. The `value` in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \n *Example:* "1.1.1.1\n1.1.1.2\n1.2.2.1/30" * **IP_IN_LIST:** Matches if the request originates from one of the IP addresses contained in the referenced address list. The `value` in this case is OCID of the address list. * **IP_NOT_IN_LIST:** Matches if the request does not originate from any IP address contained in the referenced address list. The `value` field in this case is OCID of the address list. * **HTTP_HEADER_CONTAINS:** The HTTP_HEADER_CONTAINS criteria is defined using a compound value separated by a colon: a header field name and a header field value. `host:test.example.com` is an example of a criteria value where `host` is the header field name and `test.example.com` is the header field value. A request matches when the header field name is a case insensitive match and the header field value is a case insensitive, substring match. *Example:* With a criteria value of `host:test.example.com`, where `host` is the name of the field and `test.example.com` is the value of the host field, a request with the header values, `Host: www.test.example.com` will match, where as a request with header values of `host: www.example.com` or `host: test.sub.example.com` will not match. * **HTTP_METHOD_IS:** Matches if the request method is identical to one of the values listed in field. The `value` in this case is string with one or multiple HTTP methods separated by new line symbol \n The list of available methods: `GET`, `HEAD`, `POST`, `PUT`, `DELETE`, `CONNECT`, `OPTIONS`, `TRACE`, `PATCH`

*Example:* "GET\nPOST" * **HTTP_METHOD_IS_NOT:** Matches if the request is not identical to any of the contents of the `value` field. The `value` in this case is string with one or multiple HTTP methods separated by new line symbol \n The list of available methods: `GET`, `HEAD`, `POST`, `PUT`, `DELETE`, `CONNECT`, `OPTIONS`, `TRACE`, `PATCH`

*Example:* "GET\nPOST" * **COUNTRY_IS:** Matches if the request originates from one of countries in the `value` field. The `value` in this case is string with one or multiple countries separated by new line symbol \n Country codes are in ISO 3166-1 alpha-2 format. For a list of codes, see [ISO's website](https://www.iso.org/obp/ui/#search/code/). *Example:* "AL\nDZ\nAM" * **COUNTRY_IS_NOT:** Matches if the request does not originate from any of countries in the `value` field. The `value` in this case is string with one or multiple countries separated by new line symbol \n Country codes are in ISO 3166-1 alpha-2 format. For a list of codes, see [ISO's website](https://www.iso.org/obp/ui/#search/code/). *Example:* "AL\nDZ\nAM" * **USER_AGENT_IS:** Matches if the requesting user agent is identical to the contents of the `value` field. *Example:* `Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:35.0) Gecko/20100101 Firefox/35.0` * **USER_AGENT_IS_NOT:** Matches if the requesting user agent is not identical to the contents of the `value` field. *Example:* `Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:35.0) Gecko/20100101 Firefox/35.0`

func (PolicyWafConfigJsChallengeCriteriaOutput) ElementType

func (PolicyWafConfigJsChallengeCriteriaOutput) IsCaseSensitive

(Updatable) When enabled, the condition will be matched with case-sensitive rules.

func (PolicyWafConfigJsChallengeCriteriaOutput) ToPolicyWafConfigJsChallengeCriteriaOutput

func (o PolicyWafConfigJsChallengeCriteriaOutput) ToPolicyWafConfigJsChallengeCriteriaOutput() PolicyWafConfigJsChallengeCriteriaOutput

func (PolicyWafConfigJsChallengeCriteriaOutput) ToPolicyWafConfigJsChallengeCriteriaOutputWithContext

func (o PolicyWafConfigJsChallengeCriteriaOutput) ToPolicyWafConfigJsChallengeCriteriaOutputWithContext(ctx context.Context) PolicyWafConfigJsChallengeCriteriaOutput

func (PolicyWafConfigJsChallengeCriteriaOutput) Value

(Updatable) The value of the header.

type PolicyWafConfigJsChallengeInput

type PolicyWafConfigJsChallengeInput interface {
	pulumi.Input

	ToPolicyWafConfigJsChallengeOutput() PolicyWafConfigJsChallengeOutput
	ToPolicyWafConfigJsChallengeOutputWithContext(context.Context) PolicyWafConfigJsChallengeOutput
}

PolicyWafConfigJsChallengeInput is an input type that accepts PolicyWafConfigJsChallengeArgs and PolicyWafConfigJsChallengeOutput values. You can construct a concrete instance of `PolicyWafConfigJsChallengeInput` via:

PolicyWafConfigJsChallengeArgs{...}

type PolicyWafConfigJsChallengeOutput

type PolicyWafConfigJsChallengeOutput struct{ *pulumi.OutputState }

func (PolicyWafConfigJsChallengeOutput) Action

(Updatable) The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.

func (PolicyWafConfigJsChallengeOutput) ActionExpirationInSeconds

func (o PolicyWafConfigJsChallengeOutput) ActionExpirationInSeconds() pulumi.IntPtrOutput

(Updatable) The number of seconds between challenges from the same IP address. If unspecified, defaults to `60`.

func (PolicyWafConfigJsChallengeOutput) AreRedirectsChallenged

func (o PolicyWafConfigJsChallengeOutput) AreRedirectsChallenged() pulumi.BoolPtrOutput

(Updatable) When enabled, redirect responses from the origin will also be challenged. This will change HTTP 301/302 responses from origin to HTTP 200 with an HTML body containing JavaScript page redirection.

func (PolicyWafConfigJsChallengeOutput) ChallengeSettings

(Updatable) The challenge settings if `action` is set to `BLOCK`.

func (PolicyWafConfigJsChallengeOutput) Criterias

(Updatable) When defined, the JavaScript Challenge would be applied only for the requests that matched all the listed conditions.

func (PolicyWafConfigJsChallengeOutput) ElementType

func (PolicyWafConfigJsChallengeOutput) FailureThreshold

(Updatable) The number of failed requests before taking action. If unspecified, defaults to `10`.

func (PolicyWafConfigJsChallengeOutput) IsEnabled

(Updatable) Enables or disables the JavaScript challenge Web Application Firewall feature.

func (PolicyWafConfigJsChallengeOutput) IsNatEnabled

(Updatable) When enabled, the user is identified not only by the IP address but also by an unique additional hash, which prevents blocking visitors with shared IP addresses.

func (PolicyWafConfigJsChallengeOutput) SetHttpHeader

(Updatable) Adds an additional HTTP header to requests that fail the challenge before being passed to the origin. Only applicable when the `action` is set to `DETECT`.

func (PolicyWafConfigJsChallengeOutput) ToPolicyWafConfigJsChallengeOutput

func (o PolicyWafConfigJsChallengeOutput) ToPolicyWafConfigJsChallengeOutput() PolicyWafConfigJsChallengeOutput

func (PolicyWafConfigJsChallengeOutput) ToPolicyWafConfigJsChallengeOutputWithContext

func (o PolicyWafConfigJsChallengeOutput) ToPolicyWafConfigJsChallengeOutputWithContext(ctx context.Context) PolicyWafConfigJsChallengeOutput

func (PolicyWafConfigJsChallengeOutput) ToPolicyWafConfigJsChallengePtrOutput

func (o PolicyWafConfigJsChallengeOutput) ToPolicyWafConfigJsChallengePtrOutput() PolicyWafConfigJsChallengePtrOutput

func (PolicyWafConfigJsChallengeOutput) ToPolicyWafConfigJsChallengePtrOutputWithContext

func (o PolicyWafConfigJsChallengeOutput) ToPolicyWafConfigJsChallengePtrOutputWithContext(ctx context.Context) PolicyWafConfigJsChallengePtrOutput

type PolicyWafConfigJsChallengePtrInput

type PolicyWafConfigJsChallengePtrInput interface {
	pulumi.Input

	ToPolicyWafConfigJsChallengePtrOutput() PolicyWafConfigJsChallengePtrOutput
	ToPolicyWafConfigJsChallengePtrOutputWithContext(context.Context) PolicyWafConfigJsChallengePtrOutput
}

PolicyWafConfigJsChallengePtrInput is an input type that accepts PolicyWafConfigJsChallengeArgs, PolicyWafConfigJsChallengePtr and PolicyWafConfigJsChallengePtrOutput values. You can construct a concrete instance of `PolicyWafConfigJsChallengePtrInput` via:

        PolicyWafConfigJsChallengeArgs{...}

or:

        nil

type PolicyWafConfigJsChallengePtrOutput

type PolicyWafConfigJsChallengePtrOutput struct{ *pulumi.OutputState }

func (PolicyWafConfigJsChallengePtrOutput) Action

(Updatable) The action to take against requests from detected bots. If unspecified, defaults to `DETECT`.

func (PolicyWafConfigJsChallengePtrOutput) ActionExpirationInSeconds

func (o PolicyWafConfigJsChallengePtrOutput) ActionExpirationInSeconds() pulumi.IntPtrOutput

(Updatable) The number of seconds between challenges from the same IP address. If unspecified, defaults to `60`.

func (PolicyWafConfigJsChallengePtrOutput) AreRedirectsChallenged

func (o PolicyWafConfigJsChallengePtrOutput) AreRedirectsChallenged() pulumi.BoolPtrOutput

(Updatable) When enabled, redirect responses from the origin will also be challenged. This will change HTTP 301/302 responses from origin to HTTP 200 with an HTML body containing JavaScript page redirection.

func (PolicyWafConfigJsChallengePtrOutput) ChallengeSettings

(Updatable) The challenge settings if `action` is set to `BLOCK`.

func (PolicyWafConfigJsChallengePtrOutput) Criterias

(Updatable) When defined, the JavaScript Challenge would be applied only for the requests that matched all the listed conditions.

func (PolicyWafConfigJsChallengePtrOutput) Elem

func (PolicyWafConfigJsChallengePtrOutput) ElementType

func (PolicyWafConfigJsChallengePtrOutput) FailureThreshold

(Updatable) The number of failed requests before taking action. If unspecified, defaults to `10`.

func (PolicyWafConfigJsChallengePtrOutput) IsEnabled

(Updatable) Enables or disables the JavaScript challenge Web Application Firewall feature.

func (PolicyWafConfigJsChallengePtrOutput) IsNatEnabled

(Updatable) When enabled, the user is identified not only by the IP address but also by an unique additional hash, which prevents blocking visitors with shared IP addresses.

func (PolicyWafConfigJsChallengePtrOutput) SetHttpHeader

(Updatable) Adds an additional HTTP header to requests that fail the challenge before being passed to the origin. Only applicable when the `action` is set to `DETECT`.

func (PolicyWafConfigJsChallengePtrOutput) ToPolicyWafConfigJsChallengePtrOutput

func (o PolicyWafConfigJsChallengePtrOutput) ToPolicyWafConfigJsChallengePtrOutput() PolicyWafConfigJsChallengePtrOutput

func (PolicyWafConfigJsChallengePtrOutput) ToPolicyWafConfigJsChallengePtrOutputWithContext

func (o PolicyWafConfigJsChallengePtrOutput) ToPolicyWafConfigJsChallengePtrOutputWithContext(ctx context.Context) PolicyWafConfigJsChallengePtrOutput

type PolicyWafConfigJsChallengeSetHttpHeader

type PolicyWafConfigJsChallengeSetHttpHeader struct {
	// (Updatable) The unique name of the whitelist.
	//
	// ** IMPORTANT **
	// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
	Name string `pulumi:"name"`
	// (Updatable) The value of the header.
	Value string `pulumi:"value"`
}

type PolicyWafConfigJsChallengeSetHttpHeaderArgs

type PolicyWafConfigJsChallengeSetHttpHeaderArgs struct {
	// (Updatable) The unique name of the whitelist.
	//
	// ** IMPORTANT **
	// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
	Name pulumi.StringInput `pulumi:"name"`
	// (Updatable) The value of the header.
	Value pulumi.StringInput `pulumi:"value"`
}

func (PolicyWafConfigJsChallengeSetHttpHeaderArgs) ElementType

func (PolicyWafConfigJsChallengeSetHttpHeaderArgs) ToPolicyWafConfigJsChallengeSetHttpHeaderOutput

func (i PolicyWafConfigJsChallengeSetHttpHeaderArgs) ToPolicyWafConfigJsChallengeSetHttpHeaderOutput() PolicyWafConfigJsChallengeSetHttpHeaderOutput

func (PolicyWafConfigJsChallengeSetHttpHeaderArgs) ToPolicyWafConfigJsChallengeSetHttpHeaderOutputWithContext

func (i PolicyWafConfigJsChallengeSetHttpHeaderArgs) ToPolicyWafConfigJsChallengeSetHttpHeaderOutputWithContext(ctx context.Context) PolicyWafConfigJsChallengeSetHttpHeaderOutput

func (PolicyWafConfigJsChallengeSetHttpHeaderArgs) ToPolicyWafConfigJsChallengeSetHttpHeaderPtrOutput

func (i PolicyWafConfigJsChallengeSetHttpHeaderArgs) ToPolicyWafConfigJsChallengeSetHttpHeaderPtrOutput() PolicyWafConfigJsChallengeSetHttpHeaderPtrOutput

func (PolicyWafConfigJsChallengeSetHttpHeaderArgs) ToPolicyWafConfigJsChallengeSetHttpHeaderPtrOutputWithContext

func (i PolicyWafConfigJsChallengeSetHttpHeaderArgs) ToPolicyWafConfigJsChallengeSetHttpHeaderPtrOutputWithContext(ctx context.Context) PolicyWafConfigJsChallengeSetHttpHeaderPtrOutput

type PolicyWafConfigJsChallengeSetHttpHeaderInput

type PolicyWafConfigJsChallengeSetHttpHeaderInput interface {
	pulumi.Input

	ToPolicyWafConfigJsChallengeSetHttpHeaderOutput() PolicyWafConfigJsChallengeSetHttpHeaderOutput
	ToPolicyWafConfigJsChallengeSetHttpHeaderOutputWithContext(context.Context) PolicyWafConfigJsChallengeSetHttpHeaderOutput
}

PolicyWafConfigJsChallengeSetHttpHeaderInput is an input type that accepts PolicyWafConfigJsChallengeSetHttpHeaderArgs and PolicyWafConfigJsChallengeSetHttpHeaderOutput values. You can construct a concrete instance of `PolicyWafConfigJsChallengeSetHttpHeaderInput` via:

PolicyWafConfigJsChallengeSetHttpHeaderArgs{...}

type PolicyWafConfigJsChallengeSetHttpHeaderOutput

type PolicyWafConfigJsChallengeSetHttpHeaderOutput struct{ *pulumi.OutputState }

func (PolicyWafConfigJsChallengeSetHttpHeaderOutput) ElementType

func (PolicyWafConfigJsChallengeSetHttpHeaderOutput) Name

(Updatable) The unique name of the whitelist.

** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

func (PolicyWafConfigJsChallengeSetHttpHeaderOutput) ToPolicyWafConfigJsChallengeSetHttpHeaderOutput

func (o PolicyWafConfigJsChallengeSetHttpHeaderOutput) ToPolicyWafConfigJsChallengeSetHttpHeaderOutput() PolicyWafConfigJsChallengeSetHttpHeaderOutput

func (PolicyWafConfigJsChallengeSetHttpHeaderOutput) ToPolicyWafConfigJsChallengeSetHttpHeaderOutputWithContext

func (o PolicyWafConfigJsChallengeSetHttpHeaderOutput) ToPolicyWafConfigJsChallengeSetHttpHeaderOutputWithContext(ctx context.Context) PolicyWafConfigJsChallengeSetHttpHeaderOutput

func (PolicyWafConfigJsChallengeSetHttpHeaderOutput) ToPolicyWafConfigJsChallengeSetHttpHeaderPtrOutput

func (o PolicyWafConfigJsChallengeSetHttpHeaderOutput) ToPolicyWafConfigJsChallengeSetHttpHeaderPtrOutput() PolicyWafConfigJsChallengeSetHttpHeaderPtrOutput

func (PolicyWafConfigJsChallengeSetHttpHeaderOutput) ToPolicyWafConfigJsChallengeSetHttpHeaderPtrOutputWithContext

func (o PolicyWafConfigJsChallengeSetHttpHeaderOutput) ToPolicyWafConfigJsChallengeSetHttpHeaderPtrOutputWithContext(ctx context.Context) PolicyWafConfigJsChallengeSetHttpHeaderPtrOutput

func (PolicyWafConfigJsChallengeSetHttpHeaderOutput) Value

(Updatable) The value of the header.

type PolicyWafConfigJsChallengeSetHttpHeaderPtrInput

type PolicyWafConfigJsChallengeSetHttpHeaderPtrInput interface {
	pulumi.Input

	ToPolicyWafConfigJsChallengeSetHttpHeaderPtrOutput() PolicyWafConfigJsChallengeSetHttpHeaderPtrOutput
	ToPolicyWafConfigJsChallengeSetHttpHeaderPtrOutputWithContext(context.Context) PolicyWafConfigJsChallengeSetHttpHeaderPtrOutput
}

PolicyWafConfigJsChallengeSetHttpHeaderPtrInput is an input type that accepts PolicyWafConfigJsChallengeSetHttpHeaderArgs, PolicyWafConfigJsChallengeSetHttpHeaderPtr and PolicyWafConfigJsChallengeSetHttpHeaderPtrOutput values. You can construct a concrete instance of `PolicyWafConfigJsChallengeSetHttpHeaderPtrInput` via:

        PolicyWafConfigJsChallengeSetHttpHeaderArgs{...}

or:

        nil

type PolicyWafConfigJsChallengeSetHttpHeaderPtrOutput

type PolicyWafConfigJsChallengeSetHttpHeaderPtrOutput struct{ *pulumi.OutputState }

func (PolicyWafConfigJsChallengeSetHttpHeaderPtrOutput) Elem

func (PolicyWafConfigJsChallengeSetHttpHeaderPtrOutput) ElementType

func (PolicyWafConfigJsChallengeSetHttpHeaderPtrOutput) Name

(Updatable) The unique name of the whitelist.

** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

func (PolicyWafConfigJsChallengeSetHttpHeaderPtrOutput) ToPolicyWafConfigJsChallengeSetHttpHeaderPtrOutput

func (o PolicyWafConfigJsChallengeSetHttpHeaderPtrOutput) ToPolicyWafConfigJsChallengeSetHttpHeaderPtrOutput() PolicyWafConfigJsChallengeSetHttpHeaderPtrOutput

func (PolicyWafConfigJsChallengeSetHttpHeaderPtrOutput) ToPolicyWafConfigJsChallengeSetHttpHeaderPtrOutputWithContext

func (o PolicyWafConfigJsChallengeSetHttpHeaderPtrOutput) ToPolicyWafConfigJsChallengeSetHttpHeaderPtrOutputWithContext(ctx context.Context) PolicyWafConfigJsChallengeSetHttpHeaderPtrOutput

func (PolicyWafConfigJsChallengeSetHttpHeaderPtrOutput) Value

(Updatable) The value of the header.

type PolicyWafConfigOutput

type PolicyWafConfigOutput struct{ *pulumi.OutputState }

func (PolicyWafConfigOutput) AccessRules

(Updatable) The access rules applied to the Web Application Firewall. Access rules allow custom content access policies to be defined and `ALLOW`, `DETECT`, or `BLOCK` actions to be taken on a request when specified criteria are met.

func (PolicyWafConfigOutput) AddressRateLimiting

(Updatable) The settings used to limit the number of requests from an IP address.

func (PolicyWafConfigOutput) CachingRules

(Updatable) A list of caching rules applied to the web application.

func (PolicyWafConfigOutput) Captchas

(Updatable) A list of CAPTCHA challenge settings. CAPTCHAs challenge requests to ensure a human is attempting to reach the specified URL and not a bot.

func (PolicyWafConfigOutput) CustomProtectionRules

(Updatable) A list of the custom protection rule OCIDs and their actions.

func (PolicyWafConfigOutput) DeviceFingerprintChallenge

(Updatable) The device fingerprint challenge settings. Blocks bots based on unique device fingerprint information.

func (PolicyWafConfigOutput) ElementType

func (PolicyWafConfigOutput) ElementType() reflect.Type

func (PolicyWafConfigOutput) HumanInteractionChallenge

(Updatable) The human interaction challenge settings. Detects natural human interactions such as mouse movements, time on site, and page scrolling to identify bots.

func (PolicyWafConfigOutput) JsChallenge

(Updatable) The JavaScript challenge settings. Blocks bots by challenging requests from browsers that have no JavaScript support.

func (PolicyWafConfigOutput) Origin

(Updatable) The key in the map of origins referencing the origin used for the Web Application Firewall. The origin must already be included in `Origins`. Required when creating the `WafConfig` resource, but is not required upon updating the configuration.

func (PolicyWafConfigOutput) OriginGroups

(Updatable) The map of origin groups and their keys used to associate origins to the `wafConfig`. Origin groups allow you to apply weights to groups of origins for load balancing purposes. Origins with higher weights will receive larger proportions of client requests. To add additional origins to your WAAS policy, update the `origins` field of a `UpdateWaasPolicy` request.

func (PolicyWafConfigOutput) ProtectionSettings

(Updatable) The settings applied to protection rules.

func (PolicyWafConfigOutput) ToPolicyWafConfigOutput

func (o PolicyWafConfigOutput) ToPolicyWafConfigOutput() PolicyWafConfigOutput

func (PolicyWafConfigOutput) ToPolicyWafConfigOutputWithContext

func (o PolicyWafConfigOutput) ToPolicyWafConfigOutputWithContext(ctx context.Context) PolicyWafConfigOutput

func (PolicyWafConfigOutput) ToPolicyWafConfigPtrOutput

func (o PolicyWafConfigOutput) ToPolicyWafConfigPtrOutput() PolicyWafConfigPtrOutput

func (PolicyWafConfigOutput) ToPolicyWafConfigPtrOutputWithContext

func (o PolicyWafConfigOutput) ToPolicyWafConfigPtrOutputWithContext(ctx context.Context) PolicyWafConfigPtrOutput

func (PolicyWafConfigOutput) Whitelists

(Updatable) A list of IP addresses that bypass the Web Application Firewall.

type PolicyWafConfigProtectionSettings

type PolicyWafConfigProtectionSettings struct {
	// (Updatable) The list of allowed HTTP methods. If unspecified, default to `[OPTIONS, GET, HEAD, POST]`. This setting only applies if a corresponding protection rule is enabled, such as the "Restrict HTTP Request Methods" rule (key: 911100).
	AllowedHttpMethods []string `pulumi:"allowedHttpMethods"`
	// (Updatable) If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.
	BlockAction *string `pulumi:"blockAction"`
	// (Updatable) The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.
	BlockErrorPageCode *string `pulumi:"blockErrorPageCode"`
	// (Updatable) The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`
	BlockErrorPageDescription *string `pulumi:"blockErrorPageDescription"`
	// (Updatable) The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'
	BlockErrorPageMessage *string `pulumi:"blockErrorPageMessage"`
	// (Updatable) The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.
	BlockResponseCode *int `pulumi:"blockResponseCode"`
	// (Updatable) Inspects the response body of origin responses. Can be used to detect leakage of sensitive data. If unspecified, defaults to `false`.
	//
	// **Note:** Only origin responses with a Content-Type matching a value in `mediaTypes` will be inspected.
	IsResponseInspected *bool `pulumi:"isResponseInspected"`
	// (Updatable) The maximum number of arguments allowed to be passed to your application before an action is taken. Arguements are query parameters or body parameters in a PUT or POST request. If unspecified, defaults to `255`. This setting only applies if a corresponding protection rule is enabled, such as the "Number of Arguments Limits" rule (key: 960335).  Example: If `maxArgumentCount` to `2` for the Max Number of Arguments protection rule (key: 960335), the following requests would be blocked: `GET /myapp/path?query=one&query=two&query=three` `POST /myapp/path` with Body `{"argument1":"one","argument2":"two","argument3":"three"}`
	MaxArgumentCount *int `pulumi:"maxArgumentCount"`
	// (Updatable) The maximum length allowed for each argument name, in characters. Arguements are query parameters or body parameters in a PUT or POST request. If unspecified, defaults to `400`. This setting only applies if a corresponding protection rule is enabled, such as the "Values Limits" rule (key: 960208).
	MaxNameLengthPerArgument *int `pulumi:"maxNameLengthPerArgument"`
	// (Updatable) The maximum response size to be fully inspected, in binary kilobytes (KiB). Anything over this limit will be partially inspected. If unspecified, defaults to `1024`.
	MaxResponseSizeInKiB *int `pulumi:"maxResponseSizeInKiB"`
	// (Updatable) The maximum length allowed for the sum of the argument name and value, in characters. Arguements are query parameters or body parameters in a PUT or POST request. If unspecified, defaults to `64000`. This setting only applies if a corresponding protection rule is enabled, such as the "Total Arguments Limits" rule (key: 960341).
	MaxTotalNameLengthOfArguments *int `pulumi:"maxTotalNameLengthOfArguments"`
	// (Updatable) The list of media types to allow for inspection, if `isResponseInspected` is enabled. Only responses with MIME types in this list will be inspected. If unspecified, defaults to `["text/html", "text/plain", "text/xml"]`.
	//
	// Supported MIME types include:
	// * text/html
	// * text/plain
	// * text/asp
	// * text/css
	// * text/x-script
	// * application/json
	// * text/webviewhtml
	// * text/x-java-source
	// * application/x-javascript
	// * application/javascript
	// * application/ecmascript
	// * text/javascript
	// * text/ecmascript
	// * text/x-script.perl
	// * text/x-script.phyton
	// * application/plain
	// * application/xml
	// * text/xml
	MediaTypes []string `pulumi:"mediaTypes"`
	// (Updatable) The length of time to analyze traffic traffic, in days. After the analysis period, `WafRecommendations` will be populated. If unspecified, defaults to `10`.
	//
	// Use `GET /waasPolicies/{waasPolicyId}/wafRecommendations` to view WAF recommendations.
	RecommendationsPeriodInDays *int `pulumi:"recommendationsPeriodInDays"`
}

type PolicyWafConfigProtectionSettingsArgs

type PolicyWafConfigProtectionSettingsArgs struct {
	// (Updatable) The list of allowed HTTP methods. If unspecified, default to `[OPTIONS, GET, HEAD, POST]`. This setting only applies if a corresponding protection rule is enabled, such as the "Restrict HTTP Request Methods" rule (key: 911100).
	AllowedHttpMethods pulumi.StringArrayInput `pulumi:"allowedHttpMethods"`
	// (Updatable) If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.
	BlockAction pulumi.StringPtrInput `pulumi:"blockAction"`
	// (Updatable) The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.
	BlockErrorPageCode pulumi.StringPtrInput `pulumi:"blockErrorPageCode"`
	// (Updatable) The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`
	BlockErrorPageDescription pulumi.StringPtrInput `pulumi:"blockErrorPageDescription"`
	// (Updatable) The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'
	BlockErrorPageMessage pulumi.StringPtrInput `pulumi:"blockErrorPageMessage"`
	// (Updatable) The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.
	BlockResponseCode pulumi.IntPtrInput `pulumi:"blockResponseCode"`
	// (Updatable) Inspects the response body of origin responses. Can be used to detect leakage of sensitive data. If unspecified, defaults to `false`.
	//
	// **Note:** Only origin responses with a Content-Type matching a value in `mediaTypes` will be inspected.
	IsResponseInspected pulumi.BoolPtrInput `pulumi:"isResponseInspected"`
	// (Updatable) The maximum number of arguments allowed to be passed to your application before an action is taken. Arguements are query parameters or body parameters in a PUT or POST request. If unspecified, defaults to `255`. This setting only applies if a corresponding protection rule is enabled, such as the "Number of Arguments Limits" rule (key: 960335).  Example: If `maxArgumentCount` to `2` for the Max Number of Arguments protection rule (key: 960335), the following requests would be blocked: `GET /myapp/path?query=one&query=two&query=three` `POST /myapp/path` with Body `{"argument1":"one","argument2":"two","argument3":"three"}`
	MaxArgumentCount pulumi.IntPtrInput `pulumi:"maxArgumentCount"`
	// (Updatable) The maximum length allowed for each argument name, in characters. Arguements are query parameters or body parameters in a PUT or POST request. If unspecified, defaults to `400`. This setting only applies if a corresponding protection rule is enabled, such as the "Values Limits" rule (key: 960208).
	MaxNameLengthPerArgument pulumi.IntPtrInput `pulumi:"maxNameLengthPerArgument"`
	// (Updatable) The maximum response size to be fully inspected, in binary kilobytes (KiB). Anything over this limit will be partially inspected. If unspecified, defaults to `1024`.
	MaxResponseSizeInKiB pulumi.IntPtrInput `pulumi:"maxResponseSizeInKiB"`
	// (Updatable) The maximum length allowed for the sum of the argument name and value, in characters. Arguements are query parameters or body parameters in a PUT or POST request. If unspecified, defaults to `64000`. This setting only applies if a corresponding protection rule is enabled, such as the "Total Arguments Limits" rule (key: 960341).
	MaxTotalNameLengthOfArguments pulumi.IntPtrInput `pulumi:"maxTotalNameLengthOfArguments"`
	// (Updatable) The list of media types to allow for inspection, if `isResponseInspected` is enabled. Only responses with MIME types in this list will be inspected. If unspecified, defaults to `["text/html", "text/plain", "text/xml"]`.
	//
	// Supported MIME types include:
	// * text/html
	// * text/plain
	// * text/asp
	// * text/css
	// * text/x-script
	// * application/json
	// * text/webviewhtml
	// * text/x-java-source
	// * application/x-javascript
	// * application/javascript
	// * application/ecmascript
	// * text/javascript
	// * text/ecmascript
	// * text/x-script.perl
	// * text/x-script.phyton
	// * application/plain
	// * application/xml
	// * text/xml
	MediaTypes pulumi.StringArrayInput `pulumi:"mediaTypes"`
	// (Updatable) The length of time to analyze traffic traffic, in days. After the analysis period, `WafRecommendations` will be populated. If unspecified, defaults to `10`.
	//
	// Use `GET /waasPolicies/{waasPolicyId}/wafRecommendations` to view WAF recommendations.
	RecommendationsPeriodInDays pulumi.IntPtrInput `pulumi:"recommendationsPeriodInDays"`
}

func (PolicyWafConfigProtectionSettingsArgs) ElementType

func (PolicyWafConfigProtectionSettingsArgs) ToPolicyWafConfigProtectionSettingsOutput

func (i PolicyWafConfigProtectionSettingsArgs) ToPolicyWafConfigProtectionSettingsOutput() PolicyWafConfigProtectionSettingsOutput

func (PolicyWafConfigProtectionSettingsArgs) ToPolicyWafConfigProtectionSettingsOutputWithContext

func (i PolicyWafConfigProtectionSettingsArgs) ToPolicyWafConfigProtectionSettingsOutputWithContext(ctx context.Context) PolicyWafConfigProtectionSettingsOutput

func (PolicyWafConfigProtectionSettingsArgs) ToPolicyWafConfigProtectionSettingsPtrOutput

func (i PolicyWafConfigProtectionSettingsArgs) ToPolicyWafConfigProtectionSettingsPtrOutput() PolicyWafConfigProtectionSettingsPtrOutput

func (PolicyWafConfigProtectionSettingsArgs) ToPolicyWafConfigProtectionSettingsPtrOutputWithContext

func (i PolicyWafConfigProtectionSettingsArgs) ToPolicyWafConfigProtectionSettingsPtrOutputWithContext(ctx context.Context) PolicyWafConfigProtectionSettingsPtrOutput

type PolicyWafConfigProtectionSettingsInput

type PolicyWafConfigProtectionSettingsInput interface {
	pulumi.Input

	ToPolicyWafConfigProtectionSettingsOutput() PolicyWafConfigProtectionSettingsOutput
	ToPolicyWafConfigProtectionSettingsOutputWithContext(context.Context) PolicyWafConfigProtectionSettingsOutput
}

PolicyWafConfigProtectionSettingsInput is an input type that accepts PolicyWafConfigProtectionSettingsArgs and PolicyWafConfigProtectionSettingsOutput values. You can construct a concrete instance of `PolicyWafConfigProtectionSettingsInput` via:

PolicyWafConfigProtectionSettingsArgs{...}

type PolicyWafConfigProtectionSettingsOutput

type PolicyWafConfigProtectionSettingsOutput struct{ *pulumi.OutputState }

func (PolicyWafConfigProtectionSettingsOutput) AllowedHttpMethods

(Updatable) The list of allowed HTTP methods. If unspecified, default to `[OPTIONS, GET, HEAD, POST]`. This setting only applies if a corresponding protection rule is enabled, such as the "Restrict HTTP Request Methods" rule (key: 911100).

func (PolicyWafConfigProtectionSettingsOutput) BlockAction

(Updatable) If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.

func (PolicyWafConfigProtectionSettingsOutput) BlockErrorPageCode

(Updatable) The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.

func (PolicyWafConfigProtectionSettingsOutput) BlockErrorPageDescription

func (o PolicyWafConfigProtectionSettingsOutput) BlockErrorPageDescription() pulumi.StringPtrOutput

(Updatable) The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`

func (PolicyWafConfigProtectionSettingsOutput) BlockErrorPageMessage

(Updatable) The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'

func (PolicyWafConfigProtectionSettingsOutput) BlockResponseCode

(Updatable) The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.

func (PolicyWafConfigProtectionSettingsOutput) ElementType

func (PolicyWafConfigProtectionSettingsOutput) IsResponseInspected

(Updatable) Inspects the response body of origin responses. Can be used to detect leakage of sensitive data. If unspecified, defaults to `false`.

**Note:** Only origin responses with a Content-Type matching a value in `mediaTypes` will be inspected.

func (PolicyWafConfigProtectionSettingsOutput) MaxArgumentCount

(Updatable) The maximum number of arguments allowed to be passed to your application before an action is taken. Arguements are query parameters or body parameters in a PUT or POST request. If unspecified, defaults to `255`. This setting only applies if a corresponding protection rule is enabled, such as the "Number of Arguments Limits" rule (key: 960335). Example: If `maxArgumentCount` to `2` for the Max Number of Arguments protection rule (key: 960335), the following requests would be blocked: `GET /myapp/path?query=one&query=two&query=three` `POST /myapp/path` with Body `{"argument1":"one","argument2":"two","argument3":"three"}`

func (PolicyWafConfigProtectionSettingsOutput) MaxNameLengthPerArgument

func (o PolicyWafConfigProtectionSettingsOutput) MaxNameLengthPerArgument() pulumi.IntPtrOutput

(Updatable) The maximum length allowed for each argument name, in characters. Arguements are query parameters or body parameters in a PUT or POST request. If unspecified, defaults to `400`. This setting only applies if a corresponding protection rule is enabled, such as the "Values Limits" rule (key: 960208).

func (PolicyWafConfigProtectionSettingsOutput) MaxResponseSizeInKiB

(Updatable) The maximum response size to be fully inspected, in binary kilobytes (KiB). Anything over this limit will be partially inspected. If unspecified, defaults to `1024`.

func (PolicyWafConfigProtectionSettingsOutput) MaxTotalNameLengthOfArguments

func (o PolicyWafConfigProtectionSettingsOutput) MaxTotalNameLengthOfArguments() pulumi.IntPtrOutput

(Updatable) The maximum length allowed for the sum of the argument name and value, in characters. Arguements are query parameters or body parameters in a PUT or POST request. If unspecified, defaults to `64000`. This setting only applies if a corresponding protection rule is enabled, such as the "Total Arguments Limits" rule (key: 960341).

func (PolicyWafConfigProtectionSettingsOutput) MediaTypes

(Updatable) The list of media types to allow for inspection, if `isResponseInspected` is enabled. Only responses with MIME types in this list will be inspected. If unspecified, defaults to `["text/html", "text/plain", "text/xml"]`.

Supported MIME types include: * text/html * text/plain * text/asp * text/css * text/x-script * application/json * text/webviewhtml * text/x-java-source * application/x-javascript * application/javascript * application/ecmascript * text/javascript * text/ecmascript * text/x-script.perl * text/x-script.phyton * application/plain * application/xml * text/xml

func (PolicyWafConfigProtectionSettingsOutput) RecommendationsPeriodInDays

func (o PolicyWafConfigProtectionSettingsOutput) RecommendationsPeriodInDays() pulumi.IntPtrOutput

(Updatable) The length of time to analyze traffic traffic, in days. After the analysis period, `WafRecommendations` will be populated. If unspecified, defaults to `10`.

Use `GET /waasPolicies/{waasPolicyId}/wafRecommendations` to view WAF recommendations.

func (PolicyWafConfigProtectionSettingsOutput) ToPolicyWafConfigProtectionSettingsOutput

func (o PolicyWafConfigProtectionSettingsOutput) ToPolicyWafConfigProtectionSettingsOutput() PolicyWafConfigProtectionSettingsOutput

func (PolicyWafConfigProtectionSettingsOutput) ToPolicyWafConfigProtectionSettingsOutputWithContext

func (o PolicyWafConfigProtectionSettingsOutput) ToPolicyWafConfigProtectionSettingsOutputWithContext(ctx context.Context) PolicyWafConfigProtectionSettingsOutput

func (PolicyWafConfigProtectionSettingsOutput) ToPolicyWafConfigProtectionSettingsPtrOutput

func (o PolicyWafConfigProtectionSettingsOutput) ToPolicyWafConfigProtectionSettingsPtrOutput() PolicyWafConfigProtectionSettingsPtrOutput

func (PolicyWafConfigProtectionSettingsOutput) ToPolicyWafConfigProtectionSettingsPtrOutputWithContext

func (o PolicyWafConfigProtectionSettingsOutput) ToPolicyWafConfigProtectionSettingsPtrOutputWithContext(ctx context.Context) PolicyWafConfigProtectionSettingsPtrOutput

type PolicyWafConfigProtectionSettingsPtrInput

type PolicyWafConfigProtectionSettingsPtrInput interface {
	pulumi.Input

	ToPolicyWafConfigProtectionSettingsPtrOutput() PolicyWafConfigProtectionSettingsPtrOutput
	ToPolicyWafConfigProtectionSettingsPtrOutputWithContext(context.Context) PolicyWafConfigProtectionSettingsPtrOutput
}

PolicyWafConfigProtectionSettingsPtrInput is an input type that accepts PolicyWafConfigProtectionSettingsArgs, PolicyWafConfigProtectionSettingsPtr and PolicyWafConfigProtectionSettingsPtrOutput values. You can construct a concrete instance of `PolicyWafConfigProtectionSettingsPtrInput` via:

        PolicyWafConfigProtectionSettingsArgs{...}

or:

        nil

type PolicyWafConfigProtectionSettingsPtrOutput

type PolicyWafConfigProtectionSettingsPtrOutput struct{ *pulumi.OutputState }

func (PolicyWafConfigProtectionSettingsPtrOutput) AllowedHttpMethods

(Updatable) The list of allowed HTTP methods. If unspecified, default to `[OPTIONS, GET, HEAD, POST]`. This setting only applies if a corresponding protection rule is enabled, such as the "Restrict HTTP Request Methods" rule (key: 911100).

func (PolicyWafConfigProtectionSettingsPtrOutput) BlockAction

(Updatable) If `action` is set to `BLOCK`, this specifies how the traffic is blocked when detected as malicious by a protection rule. If unspecified, defaults to `SET_RESPONSE_CODE`.

func (PolicyWafConfigProtectionSettingsPtrOutput) BlockErrorPageCode

(Updatable) The error code to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`.

func (PolicyWafConfigProtectionSettingsPtrOutput) BlockErrorPageDescription

(Updatable) The description text to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `Access blocked by website owner. Please contact support.`

func (PolicyWafConfigProtectionSettingsPtrOutput) BlockErrorPageMessage

(Updatable) The message to show on the error page when `action` is set to `BLOCK`, `blockAction` is set to `SHOW_ERROR_PAGE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to 'Access to the website is blocked.'

func (PolicyWafConfigProtectionSettingsPtrOutput) BlockResponseCode

(Updatable) The response code returned when `action` is set to `BLOCK`, `blockAction` is set to `SET_RESPONSE_CODE`, and the traffic is detected as malicious by a protection rule. If unspecified, defaults to `403`. The list of available response codes: `400`, `401`, `403`, `405`, `409`, `411`, `412`, `413`, `414`, `415`, `416`, `500`, `501`, `502`, `503`, `504`, `507`.

func (PolicyWafConfigProtectionSettingsPtrOutput) Elem

func (PolicyWafConfigProtectionSettingsPtrOutput) ElementType

func (PolicyWafConfigProtectionSettingsPtrOutput) IsResponseInspected

(Updatable) Inspects the response body of origin responses. Can be used to detect leakage of sensitive data. If unspecified, defaults to `false`.

**Note:** Only origin responses with a Content-Type matching a value in `mediaTypes` will be inspected.

func (PolicyWafConfigProtectionSettingsPtrOutput) MaxArgumentCount

(Updatable) The maximum number of arguments allowed to be passed to your application before an action is taken. Arguements are query parameters or body parameters in a PUT or POST request. If unspecified, defaults to `255`. This setting only applies if a corresponding protection rule is enabled, such as the "Number of Arguments Limits" rule (key: 960335). Example: If `maxArgumentCount` to `2` for the Max Number of Arguments protection rule (key: 960335), the following requests would be blocked: `GET /myapp/path?query=one&query=two&query=three` `POST /myapp/path` with Body `{"argument1":"one","argument2":"two","argument3":"three"}`

func (PolicyWafConfigProtectionSettingsPtrOutput) MaxNameLengthPerArgument

func (o PolicyWafConfigProtectionSettingsPtrOutput) MaxNameLengthPerArgument() pulumi.IntPtrOutput

(Updatable) The maximum length allowed for each argument name, in characters. Arguements are query parameters or body parameters in a PUT or POST request. If unspecified, defaults to `400`. This setting only applies if a corresponding protection rule is enabled, such as the "Values Limits" rule (key: 960208).

func (PolicyWafConfigProtectionSettingsPtrOutput) MaxResponseSizeInKiB

(Updatable) The maximum response size to be fully inspected, in binary kilobytes (KiB). Anything over this limit will be partially inspected. If unspecified, defaults to `1024`.

func (PolicyWafConfigProtectionSettingsPtrOutput) MaxTotalNameLengthOfArguments

func (o PolicyWafConfigProtectionSettingsPtrOutput) MaxTotalNameLengthOfArguments() pulumi.IntPtrOutput

(Updatable) The maximum length allowed for the sum of the argument name and value, in characters. Arguements are query parameters or body parameters in a PUT or POST request. If unspecified, defaults to `64000`. This setting only applies if a corresponding protection rule is enabled, such as the "Total Arguments Limits" rule (key: 960341).

func (PolicyWafConfigProtectionSettingsPtrOutput) MediaTypes

(Updatable) The list of media types to allow for inspection, if `isResponseInspected` is enabled. Only responses with MIME types in this list will be inspected. If unspecified, defaults to `["text/html", "text/plain", "text/xml"]`.

Supported MIME types include: * text/html * text/plain * text/asp * text/css * text/x-script * application/json * text/webviewhtml * text/x-java-source * application/x-javascript * application/javascript * application/ecmascript * text/javascript * text/ecmascript * text/x-script.perl * text/x-script.phyton * application/plain * application/xml * text/xml

func (PolicyWafConfigProtectionSettingsPtrOutput) RecommendationsPeriodInDays

func (o PolicyWafConfigProtectionSettingsPtrOutput) RecommendationsPeriodInDays() pulumi.IntPtrOutput

(Updatable) The length of time to analyze traffic traffic, in days. After the analysis period, `WafRecommendations` will be populated. If unspecified, defaults to `10`.

Use `GET /waasPolicies/{waasPolicyId}/wafRecommendations` to view WAF recommendations.

func (PolicyWafConfigProtectionSettingsPtrOutput) ToPolicyWafConfigProtectionSettingsPtrOutput

func (o PolicyWafConfigProtectionSettingsPtrOutput) ToPolicyWafConfigProtectionSettingsPtrOutput() PolicyWafConfigProtectionSettingsPtrOutput

func (PolicyWafConfigProtectionSettingsPtrOutput) ToPolicyWafConfigProtectionSettingsPtrOutputWithContext

func (o PolicyWafConfigProtectionSettingsPtrOutput) ToPolicyWafConfigProtectionSettingsPtrOutputWithContext(ctx context.Context) PolicyWafConfigProtectionSettingsPtrOutput

type PolicyWafConfigPtrInput

type PolicyWafConfigPtrInput interface {
	pulumi.Input

	ToPolicyWafConfigPtrOutput() PolicyWafConfigPtrOutput
	ToPolicyWafConfigPtrOutputWithContext(context.Context) PolicyWafConfigPtrOutput
}

PolicyWafConfigPtrInput is an input type that accepts PolicyWafConfigArgs, PolicyWafConfigPtr and PolicyWafConfigPtrOutput values. You can construct a concrete instance of `PolicyWafConfigPtrInput` via:

        PolicyWafConfigArgs{...}

or:

        nil

type PolicyWafConfigPtrOutput

type PolicyWafConfigPtrOutput struct{ *pulumi.OutputState }

func (PolicyWafConfigPtrOutput) AccessRules

(Updatable) The access rules applied to the Web Application Firewall. Access rules allow custom content access policies to be defined and `ALLOW`, `DETECT`, or `BLOCK` actions to be taken on a request when specified criteria are met.

func (PolicyWafConfigPtrOutput) AddressRateLimiting

(Updatable) The settings used to limit the number of requests from an IP address.

func (PolicyWafConfigPtrOutput) CachingRules

(Updatable) A list of caching rules applied to the web application.

func (PolicyWafConfigPtrOutput) Captchas

(Updatable) A list of CAPTCHA challenge settings. CAPTCHAs challenge requests to ensure a human is attempting to reach the specified URL and not a bot.

func (PolicyWafConfigPtrOutput) CustomProtectionRules

(Updatable) A list of the custom protection rule OCIDs and their actions.

func (PolicyWafConfigPtrOutput) DeviceFingerprintChallenge

(Updatable) The device fingerprint challenge settings. Blocks bots based on unique device fingerprint information.

func (PolicyWafConfigPtrOutput) Elem

func (PolicyWafConfigPtrOutput) ElementType

func (PolicyWafConfigPtrOutput) ElementType() reflect.Type

func (PolicyWafConfigPtrOutput) HumanInteractionChallenge

(Updatable) The human interaction challenge settings. Detects natural human interactions such as mouse movements, time on site, and page scrolling to identify bots.

func (PolicyWafConfigPtrOutput) JsChallenge

(Updatable) The JavaScript challenge settings. Blocks bots by challenging requests from browsers that have no JavaScript support.

func (PolicyWafConfigPtrOutput) Origin

(Updatable) The key in the map of origins referencing the origin used for the Web Application Firewall. The origin must already be included in `Origins`. Required when creating the `WafConfig` resource, but is not required upon updating the configuration.

func (PolicyWafConfigPtrOutput) OriginGroups

(Updatable) The map of origin groups and their keys used to associate origins to the `wafConfig`. Origin groups allow you to apply weights to groups of origins for load balancing purposes. Origins with higher weights will receive larger proportions of client requests. To add additional origins to your WAAS policy, update the `origins` field of a `UpdateWaasPolicy` request.

func (PolicyWafConfigPtrOutput) ProtectionSettings

(Updatable) The settings applied to protection rules.

func (PolicyWafConfigPtrOutput) ToPolicyWafConfigPtrOutput

func (o PolicyWafConfigPtrOutput) ToPolicyWafConfigPtrOutput() PolicyWafConfigPtrOutput

func (PolicyWafConfigPtrOutput) ToPolicyWafConfigPtrOutputWithContext

func (o PolicyWafConfigPtrOutput) ToPolicyWafConfigPtrOutputWithContext(ctx context.Context) PolicyWafConfigPtrOutput

func (PolicyWafConfigPtrOutput) Whitelists

(Updatable) A list of IP addresses that bypass the Web Application Firewall.

type PolicyWafConfigWhitelist

type PolicyWafConfigWhitelist struct {
	// (Updatable) A list of [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of IP address lists to include in the whitelist.
	AddressLists []string `pulumi:"addressLists"`
	// (Updatable) A set of IP addresses or CIDR notations to include in the whitelist.
	Addresses []string `pulumi:"addresses"`
	// (Updatable) The unique name of the whitelist.
	//
	// ** IMPORTANT **
	// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
	Name string `pulumi:"name"`
}

type PolicyWafConfigWhitelistArgs

type PolicyWafConfigWhitelistArgs struct {
	// (Updatable) A list of [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of IP address lists to include in the whitelist.
	AddressLists pulumi.StringArrayInput `pulumi:"addressLists"`
	// (Updatable) A set of IP addresses or CIDR notations to include in the whitelist.
	Addresses pulumi.StringArrayInput `pulumi:"addresses"`
	// (Updatable) The unique name of the whitelist.
	//
	// ** IMPORTANT **
	// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
	Name pulumi.StringInput `pulumi:"name"`
}

func (PolicyWafConfigWhitelistArgs) ElementType

func (PolicyWafConfigWhitelistArgs) ToPolicyWafConfigWhitelistOutput

func (i PolicyWafConfigWhitelistArgs) ToPolicyWafConfigWhitelistOutput() PolicyWafConfigWhitelistOutput

func (PolicyWafConfigWhitelistArgs) ToPolicyWafConfigWhitelistOutputWithContext

func (i PolicyWafConfigWhitelistArgs) ToPolicyWafConfigWhitelistOutputWithContext(ctx context.Context) PolicyWafConfigWhitelistOutput

type PolicyWafConfigWhitelistArray

type PolicyWafConfigWhitelistArray []PolicyWafConfigWhitelistInput

func (PolicyWafConfigWhitelistArray) ElementType

func (PolicyWafConfigWhitelistArray) ToPolicyWafConfigWhitelistArrayOutput

func (i PolicyWafConfigWhitelistArray) ToPolicyWafConfigWhitelistArrayOutput() PolicyWafConfigWhitelistArrayOutput

func (PolicyWafConfigWhitelistArray) ToPolicyWafConfigWhitelistArrayOutputWithContext

func (i PolicyWafConfigWhitelistArray) ToPolicyWafConfigWhitelistArrayOutputWithContext(ctx context.Context) PolicyWafConfigWhitelistArrayOutput

type PolicyWafConfigWhitelistArrayInput

type PolicyWafConfigWhitelistArrayInput interface {
	pulumi.Input

	ToPolicyWafConfigWhitelistArrayOutput() PolicyWafConfigWhitelistArrayOutput
	ToPolicyWafConfigWhitelistArrayOutputWithContext(context.Context) PolicyWafConfigWhitelistArrayOutput
}

PolicyWafConfigWhitelistArrayInput is an input type that accepts PolicyWafConfigWhitelistArray and PolicyWafConfigWhitelistArrayOutput values. You can construct a concrete instance of `PolicyWafConfigWhitelistArrayInput` via:

PolicyWafConfigWhitelistArray{ PolicyWafConfigWhitelistArgs{...} }

type PolicyWafConfigWhitelistArrayOutput

type PolicyWafConfigWhitelistArrayOutput struct{ *pulumi.OutputState }

func (PolicyWafConfigWhitelistArrayOutput) ElementType

func (PolicyWafConfigWhitelistArrayOutput) Index

func (PolicyWafConfigWhitelistArrayOutput) ToPolicyWafConfigWhitelistArrayOutput

func (o PolicyWafConfigWhitelistArrayOutput) ToPolicyWafConfigWhitelistArrayOutput() PolicyWafConfigWhitelistArrayOutput

func (PolicyWafConfigWhitelistArrayOutput) ToPolicyWafConfigWhitelistArrayOutputWithContext

func (o PolicyWafConfigWhitelistArrayOutput) ToPolicyWafConfigWhitelistArrayOutputWithContext(ctx context.Context) PolicyWafConfigWhitelistArrayOutput

type PolicyWafConfigWhitelistInput

type PolicyWafConfigWhitelistInput interface {
	pulumi.Input

	ToPolicyWafConfigWhitelistOutput() PolicyWafConfigWhitelistOutput
	ToPolicyWafConfigWhitelistOutputWithContext(context.Context) PolicyWafConfigWhitelistOutput
}

PolicyWafConfigWhitelistInput is an input type that accepts PolicyWafConfigWhitelistArgs and PolicyWafConfigWhitelistOutput values. You can construct a concrete instance of `PolicyWafConfigWhitelistInput` via:

PolicyWafConfigWhitelistArgs{...}

type PolicyWafConfigWhitelistOutput

type PolicyWafConfigWhitelistOutput struct{ *pulumi.OutputState }

func (PolicyWafConfigWhitelistOutput) AddressLists

(Updatable) A list of [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of IP address lists to include in the whitelist.

func (PolicyWafConfigWhitelistOutput) Addresses

(Updatable) A set of IP addresses or CIDR notations to include in the whitelist.

func (PolicyWafConfigWhitelistOutput) ElementType

func (PolicyWafConfigWhitelistOutput) Name

(Updatable) The unique name of the whitelist.

** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

func (PolicyWafConfigWhitelistOutput) ToPolicyWafConfigWhitelistOutput

func (o PolicyWafConfigWhitelistOutput) ToPolicyWafConfigWhitelistOutput() PolicyWafConfigWhitelistOutput

func (PolicyWafConfigWhitelistOutput) ToPolicyWafConfigWhitelistOutputWithContext

func (o PolicyWafConfigWhitelistOutput) ToPolicyWafConfigWhitelistOutputWithContext(ctx context.Context) PolicyWafConfigWhitelistOutput

type ProtectionRule

type ProtectionRule struct {
	pulumi.CustomResourceState

	// (Updatable) The action to take when the traffic is detected as malicious. If unspecified, defaults to `OFF`.
	Action pulumi.StringOutput `pulumi:"action"`
	// The description of the protection rule.
	Description pulumi.StringOutput `pulumi:"description"`
	// An array of The target property of a request that would allow it to bypass the protection rule. For example, when `target` is `REQUEST_COOKIE_NAMES`, the list may include names of cookies to exclude from the protection rule. When the target is `ARGS`, the list may include strings of URL query parameters and values from form-urlencoded XML, JSON, AMP, or POST payloads to exclude from the protection rule. `Exclusions` properties must not contain whitespace, comma or |. **Note:** If protection rules have been enabled that utilize the `maxArgumentCount` or `maxTotalNameLengthOfArguments` properties, and the `target` property has been set to `ARGS`, it is important that the `exclusions` properties be defined to honor those protection rule settings in a consistent manner.
	Exclusions ProtectionRuleExclusionArrayOutput `pulumi:"exclusions"`
	// (Updatable) The unique key of the protection rule.
	Key pulumi.StringOutput `pulumi:"key"`
	// The list of labels for the protection rule.
	Labels pulumi.StringArrayOutput `pulumi:"labels"`
	// The list of the ModSecurity rule IDs that apply to this protection rule. For more information about ModSecurity's open source WAF rules, see [Mod Security's documentation](https://www.modsecurity.org/CRS/Documentation/index.html).
	ModSecurityRuleIds pulumi.StringArrayOutput `pulumi:"modSecurityRuleIds"`
	// The name of the protection rule.
	Name pulumi.StringOutput `pulumi:"name"`
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the WAAS policy.
	WaasPolicyId pulumi.StringOutput `pulumi:"waasPolicyId"`
}

This resource provides the Protection Rule resource in Oracle Cloud Infrastructure Web Application Acceleration and Security service.

Updates the action for each specified protection rule. Requests can either be allowed, blocked, or trigger an alert if they meet the parameters of an applied rule. For more information on protection rules, see [WAF Protection Rules](https://docs.cloud.oracle.com/iaas/Content/WAF/Tasks/wafprotectionrules.htm). This operation can update or disable protection rules depending on the structure of the request body. Protection rules can be updated by changing the properties of the protection rule object with the rule's key specified in the key field.

## Import

ProtectionRules can be imported using the `id`, e.g.

```sh $ pulumi import oci:Waas/protectionRule:ProtectionRule test_protection_rule "waasPolicyId/{waasPolicyId}/key/{key}" ```

func GetProtectionRule

func GetProtectionRule(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ProtectionRuleState, opts ...pulumi.ResourceOption) (*ProtectionRule, error)

GetProtectionRule gets an existing ProtectionRule 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 NewProtectionRule

func NewProtectionRule(ctx *pulumi.Context,
	name string, args *ProtectionRuleArgs, opts ...pulumi.ResourceOption) (*ProtectionRule, error)

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

func (*ProtectionRule) ElementType

func (*ProtectionRule) ElementType() reflect.Type

func (*ProtectionRule) ToProtectionRuleOutput

func (i *ProtectionRule) ToProtectionRuleOutput() ProtectionRuleOutput

func (*ProtectionRule) ToProtectionRuleOutputWithContext

func (i *ProtectionRule) ToProtectionRuleOutputWithContext(ctx context.Context) ProtectionRuleOutput

type ProtectionRuleArgs

type ProtectionRuleArgs struct {
	// (Updatable) The action to take when the traffic is detected as malicious. If unspecified, defaults to `OFF`.
	Action pulumi.StringPtrInput
	// An array of The target property of a request that would allow it to bypass the protection rule. For example, when `target` is `REQUEST_COOKIE_NAMES`, the list may include names of cookies to exclude from the protection rule. When the target is `ARGS`, the list may include strings of URL query parameters and values from form-urlencoded XML, JSON, AMP, or POST payloads to exclude from the protection rule. `Exclusions` properties must not contain whitespace, comma or |. **Note:** If protection rules have been enabled that utilize the `maxArgumentCount` or `maxTotalNameLengthOfArguments` properties, and the `target` property has been set to `ARGS`, it is important that the `exclusions` properties be defined to honor those protection rule settings in a consistent manner.
	Exclusions ProtectionRuleExclusionArrayInput
	// (Updatable) The unique key of the protection rule.
	Key pulumi.StringInput
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the WAAS policy.
	WaasPolicyId pulumi.StringInput
}

The set of arguments for constructing a ProtectionRule resource.

func (ProtectionRuleArgs) ElementType

func (ProtectionRuleArgs) ElementType() reflect.Type

type ProtectionRuleArray

type ProtectionRuleArray []ProtectionRuleInput

func (ProtectionRuleArray) ElementType

func (ProtectionRuleArray) ElementType() reflect.Type

func (ProtectionRuleArray) ToProtectionRuleArrayOutput

func (i ProtectionRuleArray) ToProtectionRuleArrayOutput() ProtectionRuleArrayOutput

func (ProtectionRuleArray) ToProtectionRuleArrayOutputWithContext

func (i ProtectionRuleArray) ToProtectionRuleArrayOutputWithContext(ctx context.Context) ProtectionRuleArrayOutput

type ProtectionRuleArrayInput

type ProtectionRuleArrayInput interface {
	pulumi.Input

	ToProtectionRuleArrayOutput() ProtectionRuleArrayOutput
	ToProtectionRuleArrayOutputWithContext(context.Context) ProtectionRuleArrayOutput
}

ProtectionRuleArrayInput is an input type that accepts ProtectionRuleArray and ProtectionRuleArrayOutput values. You can construct a concrete instance of `ProtectionRuleArrayInput` via:

ProtectionRuleArray{ ProtectionRuleArgs{...} }

type ProtectionRuleArrayOutput

type ProtectionRuleArrayOutput struct{ *pulumi.OutputState }

func (ProtectionRuleArrayOutput) ElementType

func (ProtectionRuleArrayOutput) ElementType() reflect.Type

func (ProtectionRuleArrayOutput) Index

func (ProtectionRuleArrayOutput) ToProtectionRuleArrayOutput

func (o ProtectionRuleArrayOutput) ToProtectionRuleArrayOutput() ProtectionRuleArrayOutput

func (ProtectionRuleArrayOutput) ToProtectionRuleArrayOutputWithContext

func (o ProtectionRuleArrayOutput) ToProtectionRuleArrayOutputWithContext(ctx context.Context) ProtectionRuleArrayOutput

type ProtectionRuleExclusion

type ProtectionRuleExclusion struct {
	// An array of The target property of a request that would allow it to bypass the protection rule. For example, when `target` is `REQUEST_COOKIE_NAMES`, the list may include names of cookies to exclude from the protection rule. When the target is `ARGS`, the list may include strings of URL query parameters and values from form-urlencoded XML, JSON, AMP, or POST payloads to exclude from the protection rule. `Exclusions` properties must not contain whitespace, comma or |. **Note:** If protection rules have been enabled that utilize the `maxArgumentCount` or `maxTotalNameLengthOfArguments` properties, and the `target` property has been set to `ARGS`, it is important that the `exclusions` properties be defined to honor those protection rule settings in a consistent manner.
	Exclusions []string `pulumi:"exclusions"`
	// The target of the exclusion.
	//
	// ** IMPORTANT **
	// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
	Target *string `pulumi:"target"`
}

type ProtectionRuleExclusionArgs

type ProtectionRuleExclusionArgs struct {
	// An array of The target property of a request that would allow it to bypass the protection rule. For example, when `target` is `REQUEST_COOKIE_NAMES`, the list may include names of cookies to exclude from the protection rule. When the target is `ARGS`, the list may include strings of URL query parameters and values from form-urlencoded XML, JSON, AMP, or POST payloads to exclude from the protection rule. `Exclusions` properties must not contain whitespace, comma or |. **Note:** If protection rules have been enabled that utilize the `maxArgumentCount` or `maxTotalNameLengthOfArguments` properties, and the `target` property has been set to `ARGS`, it is important that the `exclusions` properties be defined to honor those protection rule settings in a consistent manner.
	Exclusions pulumi.StringArrayInput `pulumi:"exclusions"`
	// The target of the exclusion.
	//
	// ** IMPORTANT **
	// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
	Target pulumi.StringPtrInput `pulumi:"target"`
}

func (ProtectionRuleExclusionArgs) ElementType

func (ProtectionRuleExclusionArgs) ToProtectionRuleExclusionOutput

func (i ProtectionRuleExclusionArgs) ToProtectionRuleExclusionOutput() ProtectionRuleExclusionOutput

func (ProtectionRuleExclusionArgs) ToProtectionRuleExclusionOutputWithContext

func (i ProtectionRuleExclusionArgs) ToProtectionRuleExclusionOutputWithContext(ctx context.Context) ProtectionRuleExclusionOutput

type ProtectionRuleExclusionArray

type ProtectionRuleExclusionArray []ProtectionRuleExclusionInput

func (ProtectionRuleExclusionArray) ElementType

func (ProtectionRuleExclusionArray) ToProtectionRuleExclusionArrayOutput

func (i ProtectionRuleExclusionArray) ToProtectionRuleExclusionArrayOutput() ProtectionRuleExclusionArrayOutput

func (ProtectionRuleExclusionArray) ToProtectionRuleExclusionArrayOutputWithContext

func (i ProtectionRuleExclusionArray) ToProtectionRuleExclusionArrayOutputWithContext(ctx context.Context) ProtectionRuleExclusionArrayOutput

type ProtectionRuleExclusionArrayInput

type ProtectionRuleExclusionArrayInput interface {
	pulumi.Input

	ToProtectionRuleExclusionArrayOutput() ProtectionRuleExclusionArrayOutput
	ToProtectionRuleExclusionArrayOutputWithContext(context.Context) ProtectionRuleExclusionArrayOutput
}

ProtectionRuleExclusionArrayInput is an input type that accepts ProtectionRuleExclusionArray and ProtectionRuleExclusionArrayOutput values. You can construct a concrete instance of `ProtectionRuleExclusionArrayInput` via:

ProtectionRuleExclusionArray{ ProtectionRuleExclusionArgs{...} }

type ProtectionRuleExclusionArrayOutput

type ProtectionRuleExclusionArrayOutput struct{ *pulumi.OutputState }

func (ProtectionRuleExclusionArrayOutput) ElementType

func (ProtectionRuleExclusionArrayOutput) Index

func (ProtectionRuleExclusionArrayOutput) ToProtectionRuleExclusionArrayOutput

func (o ProtectionRuleExclusionArrayOutput) ToProtectionRuleExclusionArrayOutput() ProtectionRuleExclusionArrayOutput

func (ProtectionRuleExclusionArrayOutput) ToProtectionRuleExclusionArrayOutputWithContext

func (o ProtectionRuleExclusionArrayOutput) ToProtectionRuleExclusionArrayOutputWithContext(ctx context.Context) ProtectionRuleExclusionArrayOutput

type ProtectionRuleExclusionInput

type ProtectionRuleExclusionInput interface {
	pulumi.Input

	ToProtectionRuleExclusionOutput() ProtectionRuleExclusionOutput
	ToProtectionRuleExclusionOutputWithContext(context.Context) ProtectionRuleExclusionOutput
}

ProtectionRuleExclusionInput is an input type that accepts ProtectionRuleExclusionArgs and ProtectionRuleExclusionOutput values. You can construct a concrete instance of `ProtectionRuleExclusionInput` via:

ProtectionRuleExclusionArgs{...}

type ProtectionRuleExclusionOutput

type ProtectionRuleExclusionOutput struct{ *pulumi.OutputState }

func (ProtectionRuleExclusionOutput) ElementType

func (ProtectionRuleExclusionOutput) Exclusions

An array of The target property of a request that would allow it to bypass the protection rule. For example, when `target` is `REQUEST_COOKIE_NAMES`, the list may include names of cookies to exclude from the protection rule. When the target is `ARGS`, the list may include strings of URL query parameters and values from form-urlencoded XML, JSON, AMP, or POST payloads to exclude from the protection rule. `Exclusions` properties must not contain whitespace, comma or |. **Note:** If protection rules have been enabled that utilize the `maxArgumentCount` or `maxTotalNameLengthOfArguments` properties, and the `target` property has been set to `ARGS`, it is important that the `exclusions` properties be defined to honor those protection rule settings in a consistent manner.

func (ProtectionRuleExclusionOutput) Target

The target of the exclusion.

** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

func (ProtectionRuleExclusionOutput) ToProtectionRuleExclusionOutput

func (o ProtectionRuleExclusionOutput) ToProtectionRuleExclusionOutput() ProtectionRuleExclusionOutput

func (ProtectionRuleExclusionOutput) ToProtectionRuleExclusionOutputWithContext

func (o ProtectionRuleExclusionOutput) ToProtectionRuleExclusionOutputWithContext(ctx context.Context) ProtectionRuleExclusionOutput

type ProtectionRuleInput

type ProtectionRuleInput interface {
	pulumi.Input

	ToProtectionRuleOutput() ProtectionRuleOutput
	ToProtectionRuleOutputWithContext(ctx context.Context) ProtectionRuleOutput
}

type ProtectionRuleMap

type ProtectionRuleMap map[string]ProtectionRuleInput

func (ProtectionRuleMap) ElementType

func (ProtectionRuleMap) ElementType() reflect.Type

func (ProtectionRuleMap) ToProtectionRuleMapOutput

func (i ProtectionRuleMap) ToProtectionRuleMapOutput() ProtectionRuleMapOutput

func (ProtectionRuleMap) ToProtectionRuleMapOutputWithContext

func (i ProtectionRuleMap) ToProtectionRuleMapOutputWithContext(ctx context.Context) ProtectionRuleMapOutput

type ProtectionRuleMapInput

type ProtectionRuleMapInput interface {
	pulumi.Input

	ToProtectionRuleMapOutput() ProtectionRuleMapOutput
	ToProtectionRuleMapOutputWithContext(context.Context) ProtectionRuleMapOutput
}

ProtectionRuleMapInput is an input type that accepts ProtectionRuleMap and ProtectionRuleMapOutput values. You can construct a concrete instance of `ProtectionRuleMapInput` via:

ProtectionRuleMap{ "key": ProtectionRuleArgs{...} }

type ProtectionRuleMapOutput

type ProtectionRuleMapOutput struct{ *pulumi.OutputState }

func (ProtectionRuleMapOutput) ElementType

func (ProtectionRuleMapOutput) ElementType() reflect.Type

func (ProtectionRuleMapOutput) MapIndex

func (ProtectionRuleMapOutput) ToProtectionRuleMapOutput

func (o ProtectionRuleMapOutput) ToProtectionRuleMapOutput() ProtectionRuleMapOutput

func (ProtectionRuleMapOutput) ToProtectionRuleMapOutputWithContext

func (o ProtectionRuleMapOutput) ToProtectionRuleMapOutputWithContext(ctx context.Context) ProtectionRuleMapOutput

type ProtectionRuleOutput

type ProtectionRuleOutput struct{ *pulumi.OutputState }

func (ProtectionRuleOutput) Action added in v0.4.0

(Updatable) The action to take when the traffic is detected as malicious. If unspecified, defaults to `OFF`.

func (ProtectionRuleOutput) Description added in v0.4.0

func (o ProtectionRuleOutput) Description() pulumi.StringOutput

The description of the protection rule.

func (ProtectionRuleOutput) ElementType

func (ProtectionRuleOutput) ElementType() reflect.Type

func (ProtectionRuleOutput) Exclusions added in v0.4.0

An array of The target property of a request that would allow it to bypass the protection rule. For example, when `target` is `REQUEST_COOKIE_NAMES`, the list may include names of cookies to exclude from the protection rule. When the target is `ARGS`, the list may include strings of URL query parameters and values from form-urlencoded XML, JSON, AMP, or POST payloads to exclude from the protection rule. `Exclusions` properties must not contain whitespace, comma or |. **Note:** If protection rules have been enabled that utilize the `maxArgumentCount` or `maxTotalNameLengthOfArguments` properties, and the `target` property has been set to `ARGS`, it is important that the `exclusions` properties be defined to honor those protection rule settings in a consistent manner.

func (ProtectionRuleOutput) Key added in v0.4.0

(Updatable) The unique key of the protection rule.

func (ProtectionRuleOutput) Labels added in v0.4.0

The list of labels for the protection rule.

func (ProtectionRuleOutput) ModSecurityRuleIds added in v0.4.0

func (o ProtectionRuleOutput) ModSecurityRuleIds() pulumi.StringArrayOutput

The list of the ModSecurity rule IDs that apply to this protection rule. For more information about ModSecurity's open source WAF rules, see [Mod Security's documentation](https://www.modsecurity.org/CRS/Documentation/index.html).

func (ProtectionRuleOutput) Name added in v0.4.0

The name of the protection rule.

func (ProtectionRuleOutput) ToProtectionRuleOutput

func (o ProtectionRuleOutput) ToProtectionRuleOutput() ProtectionRuleOutput

func (ProtectionRuleOutput) ToProtectionRuleOutputWithContext

func (o ProtectionRuleOutput) ToProtectionRuleOutputWithContext(ctx context.Context) ProtectionRuleOutput

func (ProtectionRuleOutput) WaasPolicyId added in v0.4.0

func (o ProtectionRuleOutput) WaasPolicyId() pulumi.StringOutput

The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the WAAS policy.

type ProtectionRuleState

type ProtectionRuleState struct {
	// (Updatable) The action to take when the traffic is detected as malicious. If unspecified, defaults to `OFF`.
	Action pulumi.StringPtrInput
	// The description of the protection rule.
	Description pulumi.StringPtrInput
	// An array of The target property of a request that would allow it to bypass the protection rule. For example, when `target` is `REQUEST_COOKIE_NAMES`, the list may include names of cookies to exclude from the protection rule. When the target is `ARGS`, the list may include strings of URL query parameters and values from form-urlencoded XML, JSON, AMP, or POST payloads to exclude from the protection rule. `Exclusions` properties must not contain whitespace, comma or |. **Note:** If protection rules have been enabled that utilize the `maxArgumentCount` or `maxTotalNameLengthOfArguments` properties, and the `target` property has been set to `ARGS`, it is important that the `exclusions` properties be defined to honor those protection rule settings in a consistent manner.
	Exclusions ProtectionRuleExclusionArrayInput
	// (Updatable) The unique key of the protection rule.
	Key pulumi.StringPtrInput
	// The list of labels for the protection rule.
	Labels pulumi.StringArrayInput
	// The list of the ModSecurity rule IDs that apply to this protection rule. For more information about ModSecurity's open source WAF rules, see [Mod Security's documentation](https://www.modsecurity.org/CRS/Documentation/index.html).
	ModSecurityRuleIds pulumi.StringArrayInput
	// The name of the protection rule.
	Name pulumi.StringPtrInput
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the WAAS policy.
	WaasPolicyId pulumi.StringPtrInput
}

func (ProtectionRuleState) ElementType

func (ProtectionRuleState) ElementType() reflect.Type

type PurgeCache

type PurgeCache struct {
	pulumi.CustomResourceState

	// A resource to purge, specified by either a hostless absolute path starting with a single slash (Example: `/path/to/resource`) or by a relative path in which the first component will be interpreted as a domain protected by the WAAS policy (Example: `example.com/path/to/resource`).
	Resources pulumi.StringArrayOutput `pulumi:"resources"`
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the WAAS policy.
	//
	// ** IMPORTANT **
	// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
	WaasPolicyId pulumi.StringOutput `pulumi:"waasPolicyId"`
}

This resource provides the Purge Cache resource in Oracle Cloud Infrastructure Web Application Acceleration and Security service.

Performs a purge of the cache for each specified resource. If no resources are passed, the cache for the entire Web Application Firewall will be purged. For more information, see [Caching Rules](https://docs.cloud.oracle.com/iaas/Content/WAF/Tasks/cachingrules.htm#purge).

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-oci/sdk/go/oci/Waas"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Waas.NewPurgeCache(ctx, "test_purge_cache", &Waas.PurgeCacheArgs{
			WaasPolicyId: pulumi.Any(testWaasPolicy.Id),
			Resources:    pulumi.Any(purgeCacheResources),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Import is not supported for this resource.

func GetPurgeCache

func GetPurgeCache(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *PurgeCacheState, opts ...pulumi.ResourceOption) (*PurgeCache, error)

GetPurgeCache gets an existing PurgeCache 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 NewPurgeCache

func NewPurgeCache(ctx *pulumi.Context,
	name string, args *PurgeCacheArgs, opts ...pulumi.ResourceOption) (*PurgeCache, error)

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

func (*PurgeCache) ElementType

func (*PurgeCache) ElementType() reflect.Type

func (*PurgeCache) ToPurgeCacheOutput

func (i *PurgeCache) ToPurgeCacheOutput() PurgeCacheOutput

func (*PurgeCache) ToPurgeCacheOutputWithContext

func (i *PurgeCache) ToPurgeCacheOutputWithContext(ctx context.Context) PurgeCacheOutput

type PurgeCacheArgs

type PurgeCacheArgs struct {
	// A resource to purge, specified by either a hostless absolute path starting with a single slash (Example: `/path/to/resource`) or by a relative path in which the first component will be interpreted as a domain protected by the WAAS policy (Example: `example.com/path/to/resource`).
	Resources pulumi.StringArrayInput
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the WAAS policy.
	//
	// ** IMPORTANT **
	// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
	WaasPolicyId pulumi.StringInput
}

The set of arguments for constructing a PurgeCache resource.

func (PurgeCacheArgs) ElementType

func (PurgeCacheArgs) ElementType() reflect.Type

type PurgeCacheArray

type PurgeCacheArray []PurgeCacheInput

func (PurgeCacheArray) ElementType

func (PurgeCacheArray) ElementType() reflect.Type

func (PurgeCacheArray) ToPurgeCacheArrayOutput

func (i PurgeCacheArray) ToPurgeCacheArrayOutput() PurgeCacheArrayOutput

func (PurgeCacheArray) ToPurgeCacheArrayOutputWithContext

func (i PurgeCacheArray) ToPurgeCacheArrayOutputWithContext(ctx context.Context) PurgeCacheArrayOutput

type PurgeCacheArrayInput

type PurgeCacheArrayInput interface {
	pulumi.Input

	ToPurgeCacheArrayOutput() PurgeCacheArrayOutput
	ToPurgeCacheArrayOutputWithContext(context.Context) PurgeCacheArrayOutput
}

PurgeCacheArrayInput is an input type that accepts PurgeCacheArray and PurgeCacheArrayOutput values. You can construct a concrete instance of `PurgeCacheArrayInput` via:

PurgeCacheArray{ PurgeCacheArgs{...} }

type PurgeCacheArrayOutput

type PurgeCacheArrayOutput struct{ *pulumi.OutputState }

func (PurgeCacheArrayOutput) ElementType

func (PurgeCacheArrayOutput) ElementType() reflect.Type

func (PurgeCacheArrayOutput) Index

func (PurgeCacheArrayOutput) ToPurgeCacheArrayOutput

func (o PurgeCacheArrayOutput) ToPurgeCacheArrayOutput() PurgeCacheArrayOutput

func (PurgeCacheArrayOutput) ToPurgeCacheArrayOutputWithContext

func (o PurgeCacheArrayOutput) ToPurgeCacheArrayOutputWithContext(ctx context.Context) PurgeCacheArrayOutput

type PurgeCacheInput

type PurgeCacheInput interface {
	pulumi.Input

	ToPurgeCacheOutput() PurgeCacheOutput
	ToPurgeCacheOutputWithContext(ctx context.Context) PurgeCacheOutput
}

type PurgeCacheMap

type PurgeCacheMap map[string]PurgeCacheInput

func (PurgeCacheMap) ElementType

func (PurgeCacheMap) ElementType() reflect.Type

func (PurgeCacheMap) ToPurgeCacheMapOutput

func (i PurgeCacheMap) ToPurgeCacheMapOutput() PurgeCacheMapOutput

func (PurgeCacheMap) ToPurgeCacheMapOutputWithContext

func (i PurgeCacheMap) ToPurgeCacheMapOutputWithContext(ctx context.Context) PurgeCacheMapOutput

type PurgeCacheMapInput

type PurgeCacheMapInput interface {
	pulumi.Input

	ToPurgeCacheMapOutput() PurgeCacheMapOutput
	ToPurgeCacheMapOutputWithContext(context.Context) PurgeCacheMapOutput
}

PurgeCacheMapInput is an input type that accepts PurgeCacheMap and PurgeCacheMapOutput values. You can construct a concrete instance of `PurgeCacheMapInput` via:

PurgeCacheMap{ "key": PurgeCacheArgs{...} }

type PurgeCacheMapOutput

type PurgeCacheMapOutput struct{ *pulumi.OutputState }

func (PurgeCacheMapOutput) ElementType

func (PurgeCacheMapOutput) ElementType() reflect.Type

func (PurgeCacheMapOutput) MapIndex

func (PurgeCacheMapOutput) ToPurgeCacheMapOutput

func (o PurgeCacheMapOutput) ToPurgeCacheMapOutput() PurgeCacheMapOutput

func (PurgeCacheMapOutput) ToPurgeCacheMapOutputWithContext

func (o PurgeCacheMapOutput) ToPurgeCacheMapOutputWithContext(ctx context.Context) PurgeCacheMapOutput

type PurgeCacheOutput

type PurgeCacheOutput struct{ *pulumi.OutputState }

func (PurgeCacheOutput) ElementType

func (PurgeCacheOutput) ElementType() reflect.Type

func (PurgeCacheOutput) Resources added in v0.4.0

A resource to purge, specified by either a hostless absolute path starting with a single slash (Example: `/path/to/resource`) or by a relative path in which the first component will be interpreted as a domain protected by the WAAS policy (Example: `example.com/path/to/resource`).

func (PurgeCacheOutput) ToPurgeCacheOutput

func (o PurgeCacheOutput) ToPurgeCacheOutput() PurgeCacheOutput

func (PurgeCacheOutput) ToPurgeCacheOutputWithContext

func (o PurgeCacheOutput) ToPurgeCacheOutputWithContext(ctx context.Context) PurgeCacheOutput

func (PurgeCacheOutput) WaasPolicyId added in v0.4.0

func (o PurgeCacheOutput) WaasPolicyId() pulumi.StringOutput

The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the WAAS policy.

** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

type PurgeCacheState

type PurgeCacheState struct {
	// A resource to purge, specified by either a hostless absolute path starting with a single slash (Example: `/path/to/resource`) or by a relative path in which the first component will be interpreted as a domain protected by the WAAS policy (Example: `example.com/path/to/resource`).
	Resources pulumi.StringArrayInput
	// The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the WAAS policy.
	//
	// ** IMPORTANT **
	// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
	WaasPolicyId pulumi.StringPtrInput
}

func (PurgeCacheState) ElementType

func (PurgeCacheState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

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