1. Packages
  2. Oracle Cloud Infrastructure
  3. API Docs
  4. Waas
  5. getCustomProtectionRules
Oracle Cloud Infrastructure v1.41.0 published on Wednesday, Jun 19, 2024 by Pulumi

oci.Waas.getCustomProtectionRules

Explore with Pulumi AI

oci logo
Oracle Cloud Infrastructure v1.41.0 published on Wednesday, Jun 19, 2024 by Pulumi

    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

    import * as pulumi from "@pulumi/pulumi";
    import * as oci from "@pulumi/oci";
    
    const testCustomProtectionRules = oci.Waas.getCustomProtectionRules({
        compartmentId: compartmentId,
        displayNames: customProtectionRuleDisplayNames,
        ids: customProtectionRuleIds,
        states: customProtectionRuleStates,
        timeCreatedGreaterThanOrEqualTo: customProtectionRuleTimeCreatedGreaterThanOrEqualTo,
        timeCreatedLessThan: customProtectionRuleTimeCreatedLessThan,
    });
    
    import pulumi
    import pulumi_oci as oci
    
    test_custom_protection_rules = oci.Waas.get_custom_protection_rules(compartment_id=compartment_id,
        display_names=custom_protection_rule_display_names,
        ids=custom_protection_rule_ids,
        states=custom_protection_rule_states,
        time_created_greater_than_or_equal_to=custom_protection_rule_time_created_greater_than_or_equal_to,
        time_created_less_than=custom_protection_rule_time_created_less_than)
    
    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
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Oci = Pulumi.Oci;
    
    return await Deployment.RunAsync(() => 
    {
        var testCustomProtectionRules = Oci.Waas.GetCustomProtectionRules.Invoke(new()
        {
            CompartmentId = compartmentId,
            DisplayNames = customProtectionRuleDisplayNames,
            Ids = customProtectionRuleIds,
            States = customProtectionRuleStates,
            TimeCreatedGreaterThanOrEqualTo = customProtectionRuleTimeCreatedGreaterThanOrEqualTo,
            TimeCreatedLessThan = customProtectionRuleTimeCreatedLessThan,
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.oci.Waas.WaasFunctions;
    import com.pulumi.oci.Waas.inputs.GetCustomProtectionRulesArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            final var testCustomProtectionRules = WaasFunctions.getCustomProtectionRules(GetCustomProtectionRulesArgs.builder()
                .compartmentId(compartmentId)
                .displayNames(customProtectionRuleDisplayNames)
                .ids(customProtectionRuleIds)
                .states(customProtectionRuleStates)
                .timeCreatedGreaterThanOrEqualTo(customProtectionRuleTimeCreatedGreaterThanOrEqualTo)
                .timeCreatedLessThan(customProtectionRuleTimeCreatedLessThan)
                .build());
    
        }
    }
    
    variables:
      testCustomProtectionRules:
        fn::invoke:
          Function: oci:Waas:getCustomProtectionRules
          Arguments:
            compartmentId: ${compartmentId}
            displayNames: ${customProtectionRuleDisplayNames}
            ids: ${customProtectionRuleIds}
            states: ${customProtectionRuleStates}
            timeCreatedGreaterThanOrEqualTo: ${customProtectionRuleTimeCreatedGreaterThanOrEqualTo}
            timeCreatedLessThan: ${customProtectionRuleTimeCreatedLessThan}
    

    Using getCustomProtectionRules

    Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.

    function getCustomProtectionRules(args: GetCustomProtectionRulesArgs, opts?: InvokeOptions): Promise<GetCustomProtectionRulesResult>
    function getCustomProtectionRulesOutput(args: GetCustomProtectionRulesOutputArgs, opts?: InvokeOptions): Output<GetCustomProtectionRulesResult>
    def get_custom_protection_rules(compartment_id: Optional[str] = None,
                                    display_names: Optional[Sequence[str]] = None,
                                    filters: Optional[Sequence[_waas.GetCustomProtectionRulesFilter]] = None,
                                    ids: Optional[Sequence[str]] = None,
                                    states: Optional[Sequence[str]] = None,
                                    time_created_greater_than_or_equal_to: Optional[str] = None,
                                    time_created_less_than: Optional[str] = None,
                                    opts: Optional[InvokeOptions] = None) -> GetCustomProtectionRulesResult
    def get_custom_protection_rules_output(compartment_id: Optional[pulumi.Input[str]] = None,
                                    display_names: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
                                    filters: Optional[pulumi.Input[Sequence[pulumi.Input[_waas.GetCustomProtectionRulesFilterArgs]]]] = None,
                                    ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
                                    states: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
                                    time_created_greater_than_or_equal_to: Optional[pulumi.Input[str]] = None,
                                    time_created_less_than: Optional[pulumi.Input[str]] = None,
                                    opts: Optional[InvokeOptions] = None) -> Output[GetCustomProtectionRulesResult]
    func GetCustomProtectionRules(ctx *Context, args *GetCustomProtectionRulesArgs, opts ...InvokeOption) (*GetCustomProtectionRulesResult, error)
    func GetCustomProtectionRulesOutput(ctx *Context, args *GetCustomProtectionRulesOutputArgs, opts ...InvokeOption) GetCustomProtectionRulesResultOutput

    > Note: This function is named GetCustomProtectionRules in the Go SDK.

    public static class GetCustomProtectionRules 
    {
        public static Task<GetCustomProtectionRulesResult> InvokeAsync(GetCustomProtectionRulesArgs args, InvokeOptions? opts = null)
        public static Output<GetCustomProtectionRulesResult> Invoke(GetCustomProtectionRulesInvokeArgs args, InvokeOptions? opts = null)
    }
    public static CompletableFuture<GetCustomProtectionRulesResult> getCustomProtectionRules(GetCustomProtectionRulesArgs args, InvokeOptions options)
    // Output-based functions aren't available in Java yet
    
    fn::invoke:
      function: oci:Waas/getCustomProtectionRules:getCustomProtectionRules
      arguments:
        # arguments dictionary

    The following arguments are supported:

    CompartmentId string
    The OCID of the compartment. This number is generated when the compartment is created.
    DisplayNames List<string>
    Filter custom protection rules using a list of display names.
    Filters List<GetCustomProtectionRulesFilter>
    Ids List<string>
    Filter custom protection rules using a list of custom protection rule OCIDs.
    States List<string>
    Filter Custom Protection rules using a list of lifecycle states.
    TimeCreatedGreaterThanOrEqualTo string
    A filter that matches Custom Protection rules created on or after the specified date-time.
    TimeCreatedLessThan string
    A filter that matches custom protection rules created before the specified date-time.
    CompartmentId string
    The OCID of the compartment. This number is generated when the compartment is created.
    DisplayNames []string
    Filter custom protection rules using a list of display names.
    Filters []GetCustomProtectionRulesFilter
    Ids []string
    Filter custom protection rules using a list of custom protection rule OCIDs.
    States []string
    Filter Custom Protection rules using a list of lifecycle states.
    TimeCreatedGreaterThanOrEqualTo string
    A filter that matches Custom Protection rules created on or after the specified date-time.
    TimeCreatedLessThan string
    A filter that matches custom protection rules created before the specified date-time.
    compartmentId String
    The OCID of the compartment. This number is generated when the compartment is created.
    displayNames List<String>
    Filter custom protection rules using a list of display names.
    filters List<GetCustomProtectionRulesFilter>
    ids List<String>
    Filter custom protection rules using a list of custom protection rule OCIDs.
    states List<String>
    Filter Custom Protection rules using a list of lifecycle states.
    timeCreatedGreaterThanOrEqualTo String
    A filter that matches Custom Protection rules created on or after the specified date-time.
    timeCreatedLessThan String
    A filter that matches custom protection rules created before the specified date-time.
    compartmentId string
    The OCID of the compartment. This number is generated when the compartment is created.
    displayNames string[]
    Filter custom protection rules using a list of display names.
    filters GetCustomProtectionRulesFilter[]
    ids string[]
    Filter custom protection rules using a list of custom protection rule OCIDs.
    states string[]
    Filter Custom Protection rules using a list of lifecycle states.
    timeCreatedGreaterThanOrEqualTo string
    A filter that matches Custom Protection rules created on or after the specified date-time.
    timeCreatedLessThan string
    A filter that matches custom protection rules created before the specified date-time.
    compartment_id str
    The OCID of the compartment. This number is generated when the compartment is created.
    display_names Sequence[str]
    Filter custom protection rules using a list of display names.
    filters Sequence[waas.GetCustomProtectionRulesFilter]
    ids Sequence[str]
    Filter custom protection rules using a list of custom protection rule OCIDs.
    states Sequence[str]
    Filter Custom Protection rules using a list of lifecycle states.
    time_created_greater_than_or_equal_to str
    A filter that matches Custom Protection rules created on or after the specified date-time.
    time_created_less_than str
    A filter that matches custom protection rules created before the specified date-time.
    compartmentId String
    The OCID of the compartment. This number is generated when the compartment is created.
    displayNames List<String>
    Filter custom protection rules using a list of display names.
    filters List<Property Map>
    ids List<String>
    Filter custom protection rules using a list of custom protection rule OCIDs.
    states List<String>
    Filter Custom Protection rules using a list of lifecycle states.
    timeCreatedGreaterThanOrEqualTo String
    A filter that matches Custom Protection rules created on or after the specified date-time.
    timeCreatedLessThan String
    A filter that matches custom protection rules created before the specified date-time.

    getCustomProtectionRules Result

    The following output properties are available:

    CompartmentId string
    The OCID of the custom protection rule's compartment.
    CustomProtectionRules List<GetCustomProtectionRulesCustomProtectionRule>
    The list of custom_protection_rules.
    Id string
    The provider-assigned unique ID for this managed resource.
    DisplayNames List<string>
    Filters List<GetCustomProtectionRulesFilter>
    Ids List<string>
    States List<string>
    TimeCreatedGreaterThanOrEqualTo string
    TimeCreatedLessThan string
    CompartmentId string
    The OCID of the custom protection rule's compartment.
    CustomProtectionRules []GetCustomProtectionRulesCustomProtectionRule
    The list of custom_protection_rules.
    Id string
    The provider-assigned unique ID for this managed resource.
    DisplayNames []string
    Filters []GetCustomProtectionRulesFilter
    Ids []string
    States []string
    TimeCreatedGreaterThanOrEqualTo string
    TimeCreatedLessThan string
    compartmentId String
    The OCID of the custom protection rule's compartment.
    customProtectionRules List<GetCustomProtectionRulesCustomProtectionRule>
    The list of custom_protection_rules.
    id String
    The provider-assigned unique ID for this managed resource.
    displayNames List<String>
    filters List<GetCustomProtectionRulesFilter>
    ids List<String>
    states List<String>
    timeCreatedGreaterThanOrEqualTo String
    timeCreatedLessThan String
    compartmentId string
    The OCID of the custom protection rule's compartment.
    customProtectionRules GetCustomProtectionRulesCustomProtectionRule[]
    The list of custom_protection_rules.
    id string
    The provider-assigned unique ID for this managed resource.
    displayNames string[]
    filters GetCustomProtectionRulesFilter[]
    ids string[]
    states string[]
    timeCreatedGreaterThanOrEqualTo string
    timeCreatedLessThan string
    compartment_id str
    The OCID of the custom protection rule's compartment.
    custom_protection_rules Sequence[waas.GetCustomProtectionRulesCustomProtectionRule]
    The list of custom_protection_rules.
    id str
    The provider-assigned unique ID for this managed resource.
    display_names Sequence[str]
    filters Sequence[waas.GetCustomProtectionRulesFilter]
    ids Sequence[str]
    states Sequence[str]
    time_created_greater_than_or_equal_to str
    time_created_less_than str
    compartmentId String
    The OCID of the custom protection rule's compartment.
    customProtectionRules List<Property Map>
    The list of custom_protection_rules.
    id String
    The provider-assigned unique ID for this managed resource.
    displayNames List<String>
    filters List<Property Map>
    ids List<String>
    states List<String>
    timeCreatedGreaterThanOrEqualTo String
    timeCreatedLessThan String

    Supporting Types

    GetCustomProtectionRulesCustomProtectionRule

    CompartmentId string
    The OCID of the compartment. This number is generated when the compartment is created.
    DefinedTags Dictionary<string, object>
    Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags. Example: {"Operations.CostCenter": "42"}
    Description string
    The description of the custom protection rule.
    DisplayName string
    The user-friendly name of the custom protection rule.
    FreeformTags Dictionary<string, object>
    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. Example: {"Department": "Finance"}
    Id string
    The OCID of the custom protection rule.
    ModSecurityRuleIds List<string>
    The auto-generated ID for the custom protection rule. These IDs are referenced in logs.
    State string
    The current lifecycle state of the custom protection rule.
    Template string
    The template text of the custom protection rule. All custom protection rules are expressed in ModSecurity Rule Language.
    TimeCreated string
    The date and time the protection rule was created, expressed in RFC 3339 timestamp format.
    CompartmentId string
    The OCID of the compartment. This number is generated when the compartment is created.
    DefinedTags map[string]interface{}
    Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags. Example: {"Operations.CostCenter": "42"}
    Description string
    The description of the custom protection rule.
    DisplayName string
    The user-friendly name of the custom protection rule.
    FreeformTags map[string]interface{}
    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. Example: {"Department": "Finance"}
    Id string
    The OCID of the custom protection rule.
    ModSecurityRuleIds []string
    The auto-generated ID for the custom protection rule. These IDs are referenced in logs.
    State string
    The current lifecycle state of the custom protection rule.
    Template string
    The template text of the custom protection rule. All custom protection rules are expressed in ModSecurity Rule Language.
    TimeCreated string
    The date and time the protection rule was created, expressed in RFC 3339 timestamp format.
    compartmentId String
    The OCID of the compartment. This number is generated when the compartment is created.
    definedTags Map<String,Object>
    Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags. Example: {"Operations.CostCenter": "42"}
    description String
    The description of the custom protection rule.
    displayName String
    The user-friendly name of the custom protection rule.
    freeformTags Map<String,Object>
    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. Example: {"Department": "Finance"}
    id String
    The OCID of the custom protection rule.
    modSecurityRuleIds List<String>
    The auto-generated ID for the custom protection rule. These IDs are referenced in logs.
    state String
    The current lifecycle state of the custom protection rule.
    template String
    The template text of the custom protection rule. All custom protection rules are expressed in ModSecurity Rule Language.
    timeCreated String
    The date and time the protection rule was created, expressed in RFC 3339 timestamp format.
    compartmentId string
    The OCID of the compartment. This number is generated when the compartment is created.
    definedTags {[key: string]: any}
    Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags. Example: {"Operations.CostCenter": "42"}
    description string
    The description of the custom protection rule.
    displayName string
    The user-friendly name of the custom protection rule.
    freeformTags {[key: string]: any}
    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. Example: {"Department": "Finance"}
    id string
    The OCID of the custom protection rule.
    modSecurityRuleIds string[]
    The auto-generated ID for the custom protection rule. These IDs are referenced in logs.
    state string
    The current lifecycle state of the custom protection rule.
    template string
    The template text of the custom protection rule. All custom protection rules are expressed in ModSecurity Rule Language.
    timeCreated string
    The date and time the protection rule was created, expressed in RFC 3339 timestamp format.
    compartment_id str
    The OCID of the compartment. This number is generated when the compartment is created.
    defined_tags Mapping[str, Any]
    Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags. Example: {"Operations.CostCenter": "42"}
    description str
    The description of the custom protection rule.
    display_name str
    The user-friendly name of the custom protection rule.
    freeform_tags Mapping[str, Any]
    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. Example: {"Department": "Finance"}
    id str
    The OCID of the custom protection rule.
    mod_security_rule_ids Sequence[str]
    The auto-generated ID for the custom protection rule. These IDs are referenced in logs.
    state str
    The current lifecycle state of the custom protection rule.
    template str
    The template text of the custom protection rule. All custom protection rules are expressed in ModSecurity Rule Language.
    time_created str
    The date and time the protection rule was created, expressed in RFC 3339 timestamp format.
    compartmentId String
    The OCID of the compartment. This number is generated when the compartment is created.
    definedTags Map<Any>
    Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags. Example: {"Operations.CostCenter": "42"}
    description String
    The description of the custom protection rule.
    displayName String
    The user-friendly name of the custom protection rule.
    freeformTags Map<Any>
    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. Example: {"Department": "Finance"}
    id String
    The OCID of the custom protection rule.
    modSecurityRuleIds List<String>
    The auto-generated ID for the custom protection rule. These IDs are referenced in logs.
    state String
    The current lifecycle state of the custom protection rule.
    template String
    The template text of the custom protection rule. All custom protection rules are expressed in ModSecurity Rule Language.
    timeCreated String
    The date and time the protection rule was created, expressed in RFC 3339 timestamp format.

    GetCustomProtectionRulesFilter

    Name string
    Values List<string>
    Regex bool
    Name string
    Values []string
    Regex bool
    name String
    values List<String>
    regex Boolean
    name string
    values string[]
    regex boolean
    name str
    values Sequence[str]
    regex bool
    name String
    values List<String>
    regex Boolean

    Package Details

    Repository
    oci pulumi/pulumi-oci
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the oci Terraform Provider.
    oci logo
    Oracle Cloud Infrastructure v1.41.0 published on Wednesday, Jun 19, 2024 by Pulumi