UNPKG

@pulumi/scm

Version:

A Pulumi package for managing resources on Strata Cloud Manager.. Based on terraform-provider-scm: version v0.2.1

383 lines (382 loc) 11.2 kB
import * as pulumi from "@pulumi/pulumi"; /** * AppOverrideRule resource * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as scm from "@pulumi/scm"; * * // --- 1. TAG Resource --- * const appOverridePositionTag = new scm.Tag("app_override_position_tag", { * name: "app-override-position-tag_1", * folder: "All", * color: "Orange", * }); * // --- 2. ANCHOR RULE (Used for relative positioning by other rules) --- * const anchorAppOverride = new scm.AppOverrideRule("anchor_app_override", { * name: "anchor-app-override-rule", * description: "Base rule for testing 'before' and 'after' positioning. Updating", * folder: "All", * position: "pre", * application: "ssl", * protocol: "tcp", * port: "112", * froms: ["trust"], * tos: ["untrust"], * sources: ["any"], * destinations: ["any"], * tags: [appOverridePositionTag.name], * }); * // --- 3. ABSOLUTE POSITIONING Examples ("top" and "bottom") --- * const ruleTopAppOverride = new scm.AppOverrideRule("rule_top_app_override", { * name: "top-absolute-app-override", * description: "Placed at the very TOP of the App Override rulebase.", * folder: "All", * position: "pre", * relativePosition: "bottom", * application: "ssl", * protocol: "tcp", * port: "443", * froms: ["untrust"], * tos: ["trust"], * sources: ["any"], * destinations: ["any"], * }); * const ruleBottomAppOverride = new scm.AppOverrideRule("rule_bottom_app_override", { * name: "bottom-absolute-app-override", * description: "Placed at the very BOTTOM of the App Override rulebase.", * folder: "All", * position: "pre", * relativePosition: "bottom", * application: "ssl", * protocol: "tcp", * port: "443", * froms: ["any"], * tos: ["any"], * sources: ["any"], * destinations: ["any"], * }); * //--- 4. RELATIVE POSITIONING Examples ("before" and "after") --- * const ruleBeforeAnchorOverride = new scm.AppOverrideRule("rule_before_anchor_override", { * name: "before-anchor-app-override", * description: "Positioned immediately BEFORE the anchor-app-override-rule.", * folder: "All", * position: "pre", * relativePosition: "before", * targetRule: anchorAppOverride.id, * application: "ssl", * protocol: "tcp", * port: "443", * froms: ["trust"], * tos: ["untrust"], * sources: ["any"], * destinations: ["any"], * }); * const ruleAfterAnchorOverride = new scm.AppOverrideRule("rule_after_anchor_override", { * name: "after-anchor-app-override", * description: "Positioned immediately AFTER the anchor-app-override-rule.", * folder: "All", * position: "pre", * relativePosition: "before", * targetRule: anchorAppOverride.id, * application: "ssl", * protocol: "tcp", * port: "443", * froms: ["untrust"], * tos: ["trust"], * sources: ["any"], * destinations: ["any"], * }); * ``` */ export declare class AppOverrideRule extends pulumi.CustomResource { /** * Get an existing AppOverrideRule 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<pulumi.ID>, state?: AppOverrideRuleState, opts?: pulumi.CustomResourceOptions): AppOverrideRule; /** * Returns true if the given object is an instance of AppOverrideRule. 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 AppOverrideRule; /** * Application */ readonly application: pulumi.Output<string>; /** * Description */ readonly description: pulumi.Output<string | undefined>; /** * Destination */ readonly destinations: pulumi.Output<string[]>; /** * The device in which the resource is defined */ readonly device: pulumi.Output<string | undefined>; /** * Disabled */ readonly disabled: pulumi.Output<boolean>; /** * The folder in which the resource is defined * * > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`. */ readonly folder: pulumi.Output<string | undefined>; /** * From */ readonly froms: pulumi.Output<string[]>; /** * Group tag */ readonly groupTag: pulumi.Output<string | undefined>; /** * Name */ readonly name: pulumi.Output<string>; /** * Negate destination */ readonly negateDestination: pulumi.Output<boolean>; /** * Negate source */ readonly negateSource: pulumi.Output<boolean>; /** * Port */ readonly port: pulumi.Output<string>; /** * The position of a security rule */ readonly position: pulumi.Output<string>; /** * Protocol */ readonly protocol: pulumi.Output<string>; /** * Relative positioning rule. String must be one of these: `"before"`, `"after"`, `"top"`, `"bottom"`. If not specified, rule is created at the bottom of the ruleset. */ readonly relativePosition: pulumi.Output<string | undefined>; /** * The snippet in which the resource is defined * * > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`. */ readonly snippet: pulumi.Output<string | undefined>; /** * Source */ readonly sources: pulumi.Output<string[]>; /** * Tag */ readonly tags: pulumi.Output<string[] | undefined>; /** * The name or UUID of the rule to position this rule relative to. Required when `relativePosition` is `"before"` or `"after"`. */ readonly targetRule: pulumi.Output<string | undefined>; readonly tfid: pulumi.Output<string>; /** * To */ readonly tos: pulumi.Output<string[]>; /** * Create a AppOverrideRule 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: AppOverrideRuleArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering AppOverrideRule resources. */ export interface AppOverrideRuleState { /** * Application */ application?: pulumi.Input<string>; /** * Description */ description?: pulumi.Input<string>; /** * Destination */ destinations?: pulumi.Input<pulumi.Input<string>[]>; /** * The device in which the resource is defined */ device?: pulumi.Input<string>; /** * Disabled */ disabled?: pulumi.Input<boolean>; /** * The folder in which the resource is defined * * > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`. */ folder?: pulumi.Input<string>; /** * From */ froms?: pulumi.Input<pulumi.Input<string>[]>; /** * Group tag */ groupTag?: pulumi.Input<string>; /** * Name */ name?: pulumi.Input<string>; /** * Negate destination */ negateDestination?: pulumi.Input<boolean>; /** * Negate source */ negateSource?: pulumi.Input<boolean>; /** * Port */ port?: pulumi.Input<string>; /** * The position of a security rule */ position?: pulumi.Input<string>; /** * Protocol */ protocol?: pulumi.Input<string>; /** * Relative positioning rule. String must be one of these: `"before"`, `"after"`, `"top"`, `"bottom"`. If not specified, rule is created at the bottom of the ruleset. */ relativePosition?: pulumi.Input<string>; /** * The snippet in which the resource is defined * * > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`. */ snippet?: pulumi.Input<string>; /** * Source */ sources?: pulumi.Input<pulumi.Input<string>[]>; /** * Tag */ tags?: pulumi.Input<pulumi.Input<string>[]>; /** * The name or UUID of the rule to position this rule relative to. Required when `relativePosition` is `"before"` or `"after"`. */ targetRule?: pulumi.Input<string>; tfid?: pulumi.Input<string>; /** * To */ tos?: pulumi.Input<pulumi.Input<string>[]>; } /** * The set of arguments for constructing a AppOverrideRule resource. */ export interface AppOverrideRuleArgs { /** * Application */ application: pulumi.Input<string>; /** * Description */ description?: pulumi.Input<string>; /** * Destination */ destinations: pulumi.Input<pulumi.Input<string>[]>; /** * The device in which the resource is defined */ device?: pulumi.Input<string>; /** * Disabled */ disabled?: pulumi.Input<boolean>; /** * The folder in which the resource is defined * * > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`. */ folder?: pulumi.Input<string>; /** * From */ froms: pulumi.Input<pulumi.Input<string>[]>; /** * Group tag */ groupTag?: pulumi.Input<string>; /** * Name */ name?: pulumi.Input<string>; /** * Negate destination */ negateDestination?: pulumi.Input<boolean>; /** * Negate source */ negateSource?: pulumi.Input<boolean>; /** * Port */ port: pulumi.Input<string>; /** * The position of a security rule */ position?: pulumi.Input<string>; /** * Protocol */ protocol: pulumi.Input<string>; /** * Relative positioning rule. String must be one of these: `"before"`, `"after"`, `"top"`, `"bottom"`. If not specified, rule is created at the bottom of the ruleset. */ relativePosition?: pulumi.Input<string>; /** * The snippet in which the resource is defined * * > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`. */ snippet?: pulumi.Input<string>; /** * Source */ sources: pulumi.Input<pulumi.Input<string>[]>; /** * Tag */ tags?: pulumi.Input<pulumi.Input<string>[]>; /** * The name or UUID of the rule to position this rule relative to. Required when `relativePosition` is `"before"` or `"after"`. */ targetRule?: pulumi.Input<string>; /** * To */ tos: pulumi.Input<pulumi.Input<string>[]>; }