UNPKG

@pulumi/scm

Version:

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

428 lines (427 loc) 13.8 kB
import * as pulumi from "@pulumi/pulumi"; import * as inputs from "./types/input"; import * as outputs from "./types/output"; /** * VulnerabilityProtectionSignature resource * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as scm from "@pulumi/scm"; * * const scmVpSignature1 = new scm.VulnerabilityProtectionSignature("scm_vp_signature_1", { * folder: "Shared", * threatId: "41010", * threatname: "scm_vp_signature_1", * severity: "informational", * direction: "client2server", * affectedHost: { * client: true, * }, * signature: { * standards: [ * { * name: "basic-signature", * }, * { * name: "standard-signature-one", * scope: "protocol-data-unit", * orderFree: false, * andCondition: [{ * name: "condition-A-or", * orCondition: [{ * name: "pattern-A1", * operator: { * lessThan: { * context: "telnet-req-client-data", * value: "123", * }, * }, * }], * }], * }, * { * name: "standard-signature-two", * scope: "session", * orderFree: true, * andCondition: [ * { * name: "condition-B-or", * orCondition: [ * { * name: "pattern-B1", * operator: { * greaterThan: { * context: "cip-ethernet-ip-req-class-id", * value: "111111", * qualifier: [ * { * name: "Q1", * value: "123", * }, * { * name: "Q2", * value: "920", * }, * ], * }, * }, * }, * { * name: "pattern-B2", * operator: { * equalTo: { * context: "icmp-rsp-type", * value: "222222", * qualifier: [{ * name: "Q3", * value: "567", * }], * }, * }, * }, * ], * }, * { * name: "condition-C-or", * orCondition: [{ * name: "pattern-C1", * operator: { * patternMatch: { * context: "ntlm-req-auth-v1", * value: "1200", * }, * }, * }], * }, * ], * }, * ], * }, * }); * const scmVpSignature2 = new scm.VulnerabilityProtectionSignature("scm_vp_signature_2", { * folder: "Shared", * threatId: "41040", * threatname: "scm_vp_sig_2", * affectedHost: { * server: true, * }, * comment: "basic-combo-signature", * severity: "high", * direction: "both", * defaultAction: { * alert: {}, * }, * signature: { * combination: { * name: "combo-sig", * orderFree: true, * andConditions: [{ * name: "condition-C-or", * orCondition: [{ * name: "pattern-C1", * threatId: 10030, * }], * }], * timeAttribute: { * interval: 3600, * threshold: 5, * trackBy: "source-and-destination", * }, * }, * }, * }); * const scmVpSignature3 = new scm.VulnerabilityProtectionSignature("scm_vp_signature_3", { * folder: "Shared", * threatId: "41030", * threatname: "scm_vp_sig_3", * affectedHost: { * server: true, * }, * bugtraqs: ["12345"], * comment: "combo-signatures", * cves: ["CVE-2025-9999"], * references: ["https://example.com/exploit-details"], * severity: "medium", * direction: "server2client", * vendors: ["Custom"], * defaultAction: { * drop: {}, * }, * signature: { * combination: { * name: "combo-signature-one", * orderFree: false, * andConditions: [ * { * name: "condition-A-or", * orCondition: [{ * name: "pattern-A1", * threatId: 10001, * }], * }, * { * name: "condition-B-or", * orCondition: [ * { * name: "pattern-B1", * threatId: 10043, * }, * { * name: "pattern-B2", * threatId: 10025, * }, * { * name: "pattern-B3", * threatId: 10050, * }, * ], * }, * { * name: "condition-C-or", * orCondition: [{ * name: "pattern-C1", * threatId: 10030, * }], * }, * ], * timeAttribute: { * interval: 3600, * threshold: 20, * trackBy: "source", * }, * }, * }, * }); * ``` */ export declare class VulnerabilityProtectionSignature extends pulumi.CustomResource { /** * Get an existing VulnerabilityProtectionSignature 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?: VulnerabilityProtectionSignatureState, opts?: pulumi.CustomResourceOptions): VulnerabilityProtectionSignature; /** * Returns true if the given object is an instance of VulnerabilityProtectionSignature. 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 VulnerabilityProtectionSignature; /** * Affected host */ readonly affectedHost: pulumi.Output<outputs.VulnerabilityProtectionSignatureAffectedHost>; /** * Bugtraq */ readonly bugtraqs: pulumi.Output<string[] | undefined>; /** * Comment */ readonly comment: pulumi.Output<string | undefined>; /** * Cve */ readonly cves: pulumi.Output<string[] | undefined>; /** * Default action */ readonly defaultAction: pulumi.Output<outputs.VulnerabilityProtectionSignatureDefaultAction | undefined>; /** * The device in which the resource is defined */ readonly device: pulumi.Output<string | undefined>; /** * Direction */ readonly direction: pulumi.Output<string>; /** * 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>; /** * Reference */ readonly references: pulumi.Output<string[] | undefined>; /** * Severity */ readonly severity: pulumi.Output<string>; /** * vulnerability protection signature */ readonly signature: pulumi.Output<outputs.VulnerabilityProtectionSignatureSignature>; /** * 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>; readonly tfid: pulumi.Output<string>; /** * threat id range \n\n and \n\n */ readonly threatId: pulumi.Output<string>; /** * Threatname */ readonly threatname: pulumi.Output<string>; /** * Vendor */ readonly vendors: pulumi.Output<string[] | undefined>; /** * Create a VulnerabilityProtectionSignature 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: VulnerabilityProtectionSignatureArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering VulnerabilityProtectionSignature resources. */ export interface VulnerabilityProtectionSignatureState { /** * Affected host */ affectedHost?: pulumi.Input<inputs.VulnerabilityProtectionSignatureAffectedHost>; /** * Bugtraq */ bugtraqs?: pulumi.Input<pulumi.Input<string>[]>; /** * Comment */ comment?: pulumi.Input<string>; /** * Cve */ cves?: pulumi.Input<pulumi.Input<string>[]>; /** * Default action */ defaultAction?: pulumi.Input<inputs.VulnerabilityProtectionSignatureDefaultAction>; /** * The device in which the resource is defined */ device?: pulumi.Input<string>; /** * Direction */ direction?: pulumi.Input<string>; /** * The folder in which the resource is defined * * > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`. */ folder?: pulumi.Input<string>; /** * Reference */ references?: pulumi.Input<pulumi.Input<string>[]>; /** * Severity */ severity?: pulumi.Input<string>; /** * vulnerability protection signature */ signature?: pulumi.Input<inputs.VulnerabilityProtectionSignatureSignature>; /** * The snippet in which the resource is defined * * > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`. */ snippet?: pulumi.Input<string>; tfid?: pulumi.Input<string>; /** * threat id range \n\n and \n\n */ threatId?: pulumi.Input<string>; /** * Threatname */ threatname?: pulumi.Input<string>; /** * Vendor */ vendors?: pulumi.Input<pulumi.Input<string>[]>; } /** * The set of arguments for constructing a VulnerabilityProtectionSignature resource. */ export interface VulnerabilityProtectionSignatureArgs { /** * Affected host */ affectedHost: pulumi.Input<inputs.VulnerabilityProtectionSignatureAffectedHost>; /** * Bugtraq */ bugtraqs?: pulumi.Input<pulumi.Input<string>[]>; /** * Comment */ comment?: pulumi.Input<string>; /** * Cve */ cves?: pulumi.Input<pulumi.Input<string>[]>; /** * Default action */ defaultAction?: pulumi.Input<inputs.VulnerabilityProtectionSignatureDefaultAction>; /** * The device in which the resource is defined */ device?: pulumi.Input<string>; /** * Direction */ direction: pulumi.Input<string>; /** * The folder in which the resource is defined * * > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`. */ folder?: pulumi.Input<string>; /** * Reference */ references?: pulumi.Input<pulumi.Input<string>[]>; /** * Severity */ severity: pulumi.Input<string>; /** * vulnerability protection signature */ signature: pulumi.Input<inputs.VulnerabilityProtectionSignatureSignature>; /** * The snippet in which the resource is defined * * > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`. */ snippet?: pulumi.Input<string>; /** * threat id range \n\n and \n\n */ threatId: pulumi.Input<string>; /** * Threatname */ threatname: pulumi.Input<string>; /** * Vendor */ vendors?: pulumi.Input<pulumi.Input<string>[]>; }