@pulumi/scm
Version:
A Pulumi package for managing resources on Strata Cloud Manager.. Based on terraform-provider-scm: version v0.2.1
499 lines (498 loc) • 13.2 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "./types/input";
import * as outputs from "./types/output";
/**
* Application resource
*
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as scm from "@pulumi/scm";
*
* // Custom Application
* const scmMediaApp = new scm.Application("scm_media_app", {
* folder: "All",
* name: "scm_media_app",
* description: "Managed by Pulumi",
* category: "media",
* subcategory: "gaming",
* technology: "client-server",
* risk: "4",
* evasiveBehavior: true,
* pervasiveUse: true,
* consumeBigBandwidth: true,
* hasKnownVulnerability: true,
* proneToMisuse: true,
* });
* // Custom Application with tweaked timeouts and additional settings
* const scmRiskyApp = new scm.Application("scm_risky_app", {
* folder: "All",
* name: "scm_risky_app",
* description: "Managed by Pulumi",
* category: "media",
* subcategory: "gaming",
* technology: "client-server",
* risk: "4",
* timeout: 3600,
* tcpTimeout: 3600,
* tcpHalfClosedTimeout: 60,
* tcpTimeWaitTimeout: 10,
* evasiveBehavior: true,
* pervasiveUse: true,
* consumeBigBandwidth: true,
* hasKnownVulnerability: true,
* proneToMisuse: true,
* tunnelOtherApplication: true,
* tunnelApplications: true,
* noAppidCaching: true,
* parentApp: "bittorrent",
* });
* // Custom Application based on Custom Signature
* const scmCustomApp = new scm.Application("scm_custom_app", {
* folder: "All",
* name: "scm_custom_app",
* description: "Managed by Pulumi",
* category: "media",
* subcategory: "gaming",
* technology: "client-server",
* risk: "4",
* signatures: [{
* name: "Custom Signature",
* comment: "Managed by Pulumi",
* scope: "session",
* orderFree: false,
* andCondition: [{
* name: "Example Condition",
* operator: {
* patternMatch: {
* context: "file-data",
* pattern: "^malware$",
* },
* },
* }],
* }],
* });
* ```
*/
export declare class Application extends pulumi.CustomResource {
/**
* Get an existing Application 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?: ApplicationState, opts?: pulumi.CustomResourceOptions): Application;
/**
* Returns true if the given object is an instance of Application. 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 Application;
/**
* Able to transfer file
*/
readonly ableToTransferFile: pulumi.Output<boolean | undefined>;
/**
* Alg disable capability
*/
readonly algDisableCapability: pulumi.Output<string | undefined>;
/**
* Category
*/
readonly category: pulumi.Output<string>;
/**
* Consume big bandwidth
*/
readonly consumeBigBandwidth: pulumi.Output<boolean | undefined>;
/**
* Data ident
*/
readonly dataIdent: pulumi.Output<boolean | undefined>;
/**
* Default
*/
readonly default: pulumi.Output<outputs.ApplicationDefault | undefined>;
/**
* Description
*/
readonly description: pulumi.Output<string | undefined>;
/**
* The device in which the resource is defined
*/
readonly device: pulumi.Output<string | undefined>;
/**
* Evasive behavior
*/
readonly evasiveBehavior: pulumi.Output<boolean | undefined>;
/**
* File type ident
*/
readonly fileTypeIdent: pulumi.Output<boolean | undefined>;
/**
* 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>;
/**
* Has known vulnerability
*/
readonly hasKnownVulnerability: pulumi.Output<boolean | undefined>;
/**
* The name of the application
*/
readonly name: pulumi.Output<string>;
/**
* No appid caching
*/
readonly noAppidCaching: pulumi.Output<boolean | undefined>;
/**
* Parent app
*/
readonly parentApp: pulumi.Output<string | undefined>;
/**
* Pervasive use
*/
readonly pervasiveUse: pulumi.Output<boolean | undefined>;
/**
* Prone to misuse
*/
readonly proneToMisuse: pulumi.Output<boolean | undefined>;
/**
* Risk
*/
readonly risk: pulumi.Output<string>;
/**
* Signature
*/
readonly signatures: pulumi.Output<outputs.ApplicationSignature[] | 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>;
/**
* Subcategory
*/
readonly subcategory: pulumi.Output<string | undefined>;
/**
* timeout for half-close session in seconds
*/
readonly tcpHalfClosedTimeout: pulumi.Output<number | undefined>;
/**
* timeout for session in timeWait state in seconds
*/
readonly tcpTimeWaitTimeout: pulumi.Output<number | undefined>;
/**
* timeout in seconds
*/
readonly tcpTimeout: pulumi.Output<number | undefined>;
/**
* Technology
*/
readonly technology: pulumi.Output<string | undefined>;
readonly tfid: pulumi.Output<string>;
/**
* timeout in seconds
*/
readonly timeout: pulumi.Output<number | undefined>;
/**
* Tunnel applications
*/
readonly tunnelApplications: pulumi.Output<boolean | undefined>;
/**
* Tunnel other application
*/
readonly tunnelOtherApplication: pulumi.Output<boolean | undefined>;
/**
* timeout in seconds
*/
readonly udpTimeout: pulumi.Output<number | undefined>;
/**
* Used by malware
*/
readonly usedByMalware: pulumi.Output<boolean | undefined>;
/**
* Virus ident
*/
readonly virusIdent: pulumi.Output<boolean | undefined>;
/**
* Create a Application 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: ApplicationArgs, opts?: pulumi.CustomResourceOptions);
}
/**
* Input properties used for looking up and filtering Application resources.
*/
export interface ApplicationState {
/**
* Able to transfer file
*/
ableToTransferFile?: pulumi.Input<boolean>;
/**
* Alg disable capability
*/
algDisableCapability?: pulumi.Input<string>;
/**
* Category
*/
category?: pulumi.Input<string>;
/**
* Consume big bandwidth
*/
consumeBigBandwidth?: pulumi.Input<boolean>;
/**
* Data ident
*/
dataIdent?: pulumi.Input<boolean>;
/**
* Default
*/
default?: pulumi.Input<inputs.ApplicationDefault>;
/**
* Description
*/
description?: pulumi.Input<string>;
/**
* The device in which the resource is defined
*/
device?: pulumi.Input<string>;
/**
* Evasive behavior
*/
evasiveBehavior?: pulumi.Input<boolean>;
/**
* File type ident
*/
fileTypeIdent?: 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>;
/**
* Has known vulnerability
*/
hasKnownVulnerability?: pulumi.Input<boolean>;
/**
* The name of the application
*/
name?: pulumi.Input<string>;
/**
* No appid caching
*/
noAppidCaching?: pulumi.Input<boolean>;
/**
* Parent app
*/
parentApp?: pulumi.Input<string>;
/**
* Pervasive use
*/
pervasiveUse?: pulumi.Input<boolean>;
/**
* Prone to misuse
*/
proneToMisuse?: pulumi.Input<boolean>;
/**
* Risk
*/
risk?: pulumi.Input<string>;
/**
* Signature
*/
signatures?: pulumi.Input<pulumi.Input<inputs.ApplicationSignature>[]>;
/**
* The snippet in which the resource is defined
*
* > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
*/
snippet?: pulumi.Input<string>;
/**
* Subcategory
*/
subcategory?: pulumi.Input<string>;
/**
* timeout for half-close session in seconds
*/
tcpHalfClosedTimeout?: pulumi.Input<number>;
/**
* timeout for session in timeWait state in seconds
*/
tcpTimeWaitTimeout?: pulumi.Input<number>;
/**
* timeout in seconds
*/
tcpTimeout?: pulumi.Input<number>;
/**
* Technology
*/
technology?: pulumi.Input<string>;
tfid?: pulumi.Input<string>;
/**
* timeout in seconds
*/
timeout?: pulumi.Input<number>;
/**
* Tunnel applications
*/
tunnelApplications?: pulumi.Input<boolean>;
/**
* Tunnel other application
*/
tunnelOtherApplication?: pulumi.Input<boolean>;
/**
* timeout in seconds
*/
udpTimeout?: pulumi.Input<number>;
/**
* Used by malware
*/
usedByMalware?: pulumi.Input<boolean>;
/**
* Virus ident
*/
virusIdent?: pulumi.Input<boolean>;
}
/**
* The set of arguments for constructing a Application resource.
*/
export interface ApplicationArgs {
/**
* Able to transfer file
*/
ableToTransferFile?: pulumi.Input<boolean>;
/**
* Alg disable capability
*/
algDisableCapability?: pulumi.Input<string>;
/**
* Category
*/
category: pulumi.Input<string>;
/**
* Consume big bandwidth
*/
consumeBigBandwidth?: pulumi.Input<boolean>;
/**
* Data ident
*/
dataIdent?: pulumi.Input<boolean>;
/**
* Default
*/
default?: pulumi.Input<inputs.ApplicationDefault>;
/**
* Description
*/
description?: pulumi.Input<string>;
/**
* The device in which the resource is defined
*/
device?: pulumi.Input<string>;
/**
* Evasive behavior
*/
evasiveBehavior?: pulumi.Input<boolean>;
/**
* File type ident
*/
fileTypeIdent?: 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>;
/**
* Has known vulnerability
*/
hasKnownVulnerability?: pulumi.Input<boolean>;
/**
* The name of the application
*/
name?: pulumi.Input<string>;
/**
* No appid caching
*/
noAppidCaching?: pulumi.Input<boolean>;
/**
* Parent app
*/
parentApp?: pulumi.Input<string>;
/**
* Pervasive use
*/
pervasiveUse?: pulumi.Input<boolean>;
/**
* Prone to misuse
*/
proneToMisuse?: pulumi.Input<boolean>;
/**
* Risk
*/
risk: pulumi.Input<string>;
/**
* Signature
*/
signatures?: pulumi.Input<pulumi.Input<inputs.ApplicationSignature>[]>;
/**
* The snippet in which the resource is defined
*
* > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
*/
snippet?: pulumi.Input<string>;
/**
* Subcategory
*/
subcategory?: pulumi.Input<string>;
/**
* timeout for half-close session in seconds
*/
tcpHalfClosedTimeout?: pulumi.Input<number>;
/**
* timeout for session in timeWait state in seconds
*/
tcpTimeWaitTimeout?: pulumi.Input<number>;
/**
* timeout in seconds
*/
tcpTimeout?: pulumi.Input<number>;
/**
* Technology
*/
technology?: pulumi.Input<string>;
/**
* timeout in seconds
*/
timeout?: pulumi.Input<number>;
/**
* Tunnel applications
*/
tunnelApplications?: pulumi.Input<boolean>;
/**
* Tunnel other application
*/
tunnelOtherApplication?: pulumi.Input<boolean>;
/**
* timeout in seconds
*/
udpTimeout?: pulumi.Input<number>;
/**
* Used by malware
*/
usedByMalware?: pulumi.Input<boolean>;
/**
* Virus ident
*/
virusIdent?: pulumi.Input<boolean>;
}