import * as pulumi from "@pulumi/pulumi"; /** * This resource provides the Web App Firewall resource in Oracle Cloud Infrastructure Waf service. * Api doc link for the resource: https://docs.oracle.com/iaas/api/#/en/waf/latest/WebAppFirewall * * Example terraform configs related to the resource : https://github.com/oracle/terraform-provider-oci/tree/master/examples/web_app_firewall * * Creates a new WebAppFirewall. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as oci from "@pulumi/oci"; * * const testWebAppFirewall = new oci.waf.AppFirewall("test_web_app_firewall", { * backendType: webAppFirewallBackendType, * compartmentId: compartmentId, * loadBalancerId: testLoadBalancer.id, * webAppFirewallPolicyId: testWebAppFirewallPolicy.id, * definedTags: { * "foo-namespace.bar-key": "value", * }, * displayName: webAppFirewallDisplayName, * freeformTags: { * "bar-key": "value", * }, * systemTags: webAppFirewallSystemTags, * }); * ``` * * ## Import * * WebAppFirewalls can be imported using the `id`, e.g. * * ```sh * $ pulumi import oci:Waf/appFirewall:AppFirewall test_web_app_firewall "id" * ``` */ export declare class AppFirewall extends pulumi.CustomResource { /** * Get an existing AppFirewall resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param state Any extra arguments used during the lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, state?: AppFirewallState, opts?: pulumi.CustomResourceOptions): AppFirewall; /** * Returns true if the given object is an instance of AppFirewall. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is AppFirewall; /** * Type of the WebAppFirewall, as example LOAD_BALANCER. */ readonly backendType: pulumi.Output; /** * (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. */ readonly compartmentId: pulumi.Output; /** * (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` */ readonly definedTags: pulumi.Output<{ [key: string]: string; }>; /** * (Updatable) WebAppFirewall display name, can be renamed. */ readonly displayName: pulumi.Output; /** * (Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` */ readonly freeformTags: pulumi.Output<{ [key: string]: string; }>; /** * A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in FAILED state. */ readonly lifecycleDetails: pulumi.Output; /** * LoadBalancer [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) to which the WebAppFirewallPolicy is attached to. */ readonly loadBalancerId: pulumi.Output; /** * The current state of the WebAppFirewall. */ readonly state: pulumi.Output; /** * (Updatable) Usage of system tag keys. These predefined keys are scoped to namespaces. Example: `{"orcl-cloud.free-tier-retained": "true"}` */ readonly systemTags: pulumi.Output<{ [key: string]: string; }>; /** * The time the WebAppFirewall was created. An RFC3339 formatted datetime string. */ readonly timeCreated: pulumi.Output; /** * The time the WebAppFirewall was updated. An RFC3339 formatted datetime string. */ readonly timeUpdated: pulumi.Output; /** * (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of WebAppFirewallPolicy, which is attached to the resource. * * ** 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 */ readonly webAppFirewallPolicyId: pulumi.Output; /** * Create a AppFirewall resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args: AppFirewallArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering AppFirewall resources. */ export interface AppFirewallState { /** * Type of the WebAppFirewall, as example LOAD_BALANCER. */ backendType?: pulumi.Input; /** * (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. */ compartmentId?: pulumi.Input; /** * (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` */ definedTags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * (Updatable) WebAppFirewall display name, can be renamed. */ displayName?: pulumi.Input; /** * (Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` */ freeformTags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in FAILED state. */ lifecycleDetails?: pulumi.Input; /** * LoadBalancer [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) to which the WebAppFirewallPolicy is attached to. */ loadBalancerId?: pulumi.Input; /** * The current state of the WebAppFirewall. */ state?: pulumi.Input; /** * (Updatable) Usage of system tag keys. These predefined keys are scoped to namespaces. Example: `{"orcl-cloud.free-tier-retained": "true"}` */ systemTags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * The time the WebAppFirewall was created. An RFC3339 formatted datetime string. */ timeCreated?: pulumi.Input; /** * The time the WebAppFirewall was updated. An RFC3339 formatted datetime string. */ timeUpdated?: pulumi.Input; /** * (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of WebAppFirewallPolicy, which is attached to the resource. * * ** 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 */ webAppFirewallPolicyId?: pulumi.Input; } /** * The set of arguments for constructing a AppFirewall resource. */ export interface AppFirewallArgs { /** * Type of the WebAppFirewall, as example LOAD_BALANCER. */ backendType: pulumi.Input; /** * (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment. */ compartmentId: pulumi.Input; /** * (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` */ definedTags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * (Updatable) WebAppFirewall display name, can be renamed. */ displayName?: pulumi.Input; /** * (Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` */ freeformTags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * LoadBalancer [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) to which the WebAppFirewallPolicy is attached to. */ loadBalancerId: pulumi.Input; /** * (Updatable) Usage of system tag keys. These predefined keys are scoped to namespaces. Example: `{"orcl-cloud.free-tier-retained": "true"}` */ systemTags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of WebAppFirewallPolicy, which is attached to the resource. * * ** 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 */ webAppFirewallPolicyId: pulumi.Input; } //# sourceMappingURL=appFirewall.d.ts.map