UNPKG

@pulumiverse/fortios

Version:

A Pulumi package for creating and managing Fortios resources. Based on terraform-provider-fortios: version v1.16.0

457 lines (456 loc) 16.6 kB
import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../../types/input"; import * as outputs from "../../types/output"; /** * Configure custom services. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as fortios from "@pulumiverse/fortios"; * * const trname = new fortios.firewall.service.Custom("trname", { * appServiceType: "disable", * category: "General", * checkResetRange: "default", * color: 0, * helper: "auto", * iprange: "0.0.0.0", * protocol: "TCP/UDP/SCTP", * protocolNumber: 6, * proxy: "disable", * tcpHalfcloseTimer: 0, * tcpHalfopenTimer: 0, * tcpPortrange: "223-332", * tcpTimewaitTimer: 0, * udpIdleTimer: 0, * visibility: "enable", * }); * ``` * * ## Import * * FirewallService Custom can be imported using any of these accepted formats: * * ```sh * $ pulumi import fortios:firewall/service/custom:Custom labelname {{name}} * ``` * * If you do not want to import arguments of block: * * $ export "FORTIOS_IMPORT_TABLE"="false" * * ```sh * $ pulumi import fortios:firewall/service/custom:Custom labelname {{name}} * ``` * * $ unset "FORTIOS_IMPORT_TABLE" */ export declare class Custom extends pulumi.CustomResource { /** * Get an existing Custom 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?: CustomState, opts?: pulumi.CustomResourceOptions): Custom; /** * Returns true if the given object is an instance of Custom. 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 Custom; /** * Application category ID. The structure of `appCategory` block is documented below. */ readonly appCategories: pulumi.Output<outputs.firewall.service.CustomAppCategory[] | undefined>; /** * Application service type. Valid values: `disable`, `app-id`, `app-category`. */ readonly appServiceType: pulumi.Output<string>; /** * Application ID. The structure of `application` block is documented below. */ readonly applications: pulumi.Output<outputs.firewall.service.CustomApplication[] | undefined>; /** * Service category. */ readonly category: pulumi.Output<string>; /** * Configure the type of ICMP error message verification. Valid values: `disable`, `strict`, `default`. */ readonly checkResetRange: pulumi.Output<string>; /** * Color of icon on the GUI. */ readonly color: pulumi.Output<number>; /** * Comment. */ readonly comment: pulumi.Output<string | undefined>; /** * Sort sub-tables, please do not set this parameter when configuring static sub-tables. Options: [ false, true, natural, alphabetical ]. false: Default value, do not sort tables; true/natural: sort tables in natural order. For example: [ a10, a2 ] -> [ a2, a10 ]; alphabetical: sort tables in alphabetical order. For example: [ a10, a2 ] -> [ a10, a2 ]. */ readonly dynamicSortSubtable: pulumi.Output<string | undefined>; /** * Security Fabric global object setting. Valid values: `enable`, `disable`. */ readonly fabricObject: pulumi.Output<string>; /** * Fully qualified domain name. */ readonly fqdn: pulumi.Output<string>; /** * Get all sub-tables including unconfigured tables. Do not set this variable to true if you configure sub-table in another resource, otherwise, conflicts and overwrite will occur. Options: [ false, true ]. false: Default value, do not get unconfigured tables; true: get all tables including unconfigured tables. */ readonly getAllTables: pulumi.Output<string | undefined>; /** * Helper name. */ readonly helper: pulumi.Output<string>; /** * ICMP code. */ readonly icmpcode: pulumi.Output<number>; /** * ICMP type. */ readonly icmptype: pulumi.Output<number>; /** * Start and end of the IP range associated with service. */ readonly iprange: pulumi.Output<string>; /** * Custom service name. */ readonly name: pulumi.Output<string>; /** * Protocol type based on IANA numbers. Valid values: `TCP/UDP/SCTP`, `ICMP`, `ICMP6`, `IP`, `HTTP`, `FTP`, `CONNECT`, `SOCKS-TCP`, `SOCKS-UDP`, `ALL`. */ readonly protocol: pulumi.Output<string>; /** * IP protocol number. */ readonly protocolNumber: pulumi.Output<number>; /** * Enable/disable web proxy service. Valid values: `enable`, `disable`. */ readonly proxy: pulumi.Output<string>; /** * Multiple SCTP port ranges. */ readonly sctpPortrange: pulumi.Output<string>; /** * Session TTL (300 - 604800, 0 = default). */ readonly sessionTtl: pulumi.Output<number>; /** * Wait time to close a TCP session waiting for an unanswered FIN packet (1 - 86400 sec, 0 = default). */ readonly tcpHalfcloseTimer: pulumi.Output<number>; /** * Wait time to close a TCP session waiting for an unanswered open session packet (1 - 86400 sec, 0 = default). */ readonly tcpHalfopenTimer: pulumi.Output<number>; /** * Multiple TCP port ranges. */ readonly tcpPortrange: pulumi.Output<string>; /** * Set the length of the TCP CLOSE state in seconds (5 - 300 sec, 0 = default). */ readonly tcpRstTimer: pulumi.Output<number>; /** * Set the length of the TCP TIME-WAIT state in seconds (1 - 300 sec, 0 = default). */ readonly tcpTimewaitTimer: pulumi.Output<number>; /** * Number of seconds before an idle UDP connection times out (0 - 86400 sec, 0 = default). */ readonly udpIdleTimer: pulumi.Output<number>; /** * Multiple UDP port ranges. */ readonly udpPortrange: pulumi.Output<string>; /** * Universally Unique Identifier (UUID; automatically assigned but can be manually reset). */ readonly uuid: pulumi.Output<string>; /** * Specifies the vdom to which the resource will be applied when the FortiGate unit is running in VDOM mode. Only one vdom can be specified. If you want to inherit the vdom configuration of the provider, please do not set this parameter. */ readonly vdomparam: pulumi.Output<string>; /** * Enable/disable the visibility of the service on the GUI. Valid values: `enable`, `disable`. */ readonly visibility: pulumi.Output<string>; /** * Create a Custom 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?: CustomArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering Custom resources. */ export interface CustomState { /** * Application category ID. The structure of `appCategory` block is documented below. */ appCategories?: pulumi.Input<pulumi.Input<inputs.firewall.service.CustomAppCategory>[]>; /** * Application service type. Valid values: `disable`, `app-id`, `app-category`. */ appServiceType?: pulumi.Input<string>; /** * Application ID. The structure of `application` block is documented below. */ applications?: pulumi.Input<pulumi.Input<inputs.firewall.service.CustomApplication>[]>; /** * Service category. */ category?: pulumi.Input<string>; /** * Configure the type of ICMP error message verification. Valid values: `disable`, `strict`, `default`. */ checkResetRange?: pulumi.Input<string>; /** * Color of icon on the GUI. */ color?: pulumi.Input<number>; /** * Comment. */ comment?: pulumi.Input<string>; /** * Sort sub-tables, please do not set this parameter when configuring static sub-tables. Options: [ false, true, natural, alphabetical ]. false: Default value, do not sort tables; true/natural: sort tables in natural order. For example: [ a10, a2 ] -> [ a2, a10 ]; alphabetical: sort tables in alphabetical order. For example: [ a10, a2 ] -> [ a10, a2 ]. */ dynamicSortSubtable?: pulumi.Input<string>; /** * Security Fabric global object setting. Valid values: `enable`, `disable`. */ fabricObject?: pulumi.Input<string>; /** * Fully qualified domain name. */ fqdn?: pulumi.Input<string>; /** * Get all sub-tables including unconfigured tables. Do not set this variable to true if you configure sub-table in another resource, otherwise, conflicts and overwrite will occur. Options: [ false, true ]. false: Default value, do not get unconfigured tables; true: get all tables including unconfigured tables. */ getAllTables?: pulumi.Input<string>; /** * Helper name. */ helper?: pulumi.Input<string>; /** * ICMP code. */ icmpcode?: pulumi.Input<number>; /** * ICMP type. */ icmptype?: pulumi.Input<number>; /** * Start and end of the IP range associated with service. */ iprange?: pulumi.Input<string>; /** * Custom service name. */ name?: pulumi.Input<string>; /** * Protocol type based on IANA numbers. Valid values: `TCP/UDP/SCTP`, `ICMP`, `ICMP6`, `IP`, `HTTP`, `FTP`, `CONNECT`, `SOCKS-TCP`, `SOCKS-UDP`, `ALL`. */ protocol?: pulumi.Input<string>; /** * IP protocol number. */ protocolNumber?: pulumi.Input<number>; /** * Enable/disable web proxy service. Valid values: `enable`, `disable`. */ proxy?: pulumi.Input<string>; /** * Multiple SCTP port ranges. */ sctpPortrange?: pulumi.Input<string>; /** * Session TTL (300 - 604800, 0 = default). */ sessionTtl?: pulumi.Input<number>; /** * Wait time to close a TCP session waiting for an unanswered FIN packet (1 - 86400 sec, 0 = default). */ tcpHalfcloseTimer?: pulumi.Input<number>; /** * Wait time to close a TCP session waiting for an unanswered open session packet (1 - 86400 sec, 0 = default). */ tcpHalfopenTimer?: pulumi.Input<number>; /** * Multiple TCP port ranges. */ tcpPortrange?: pulumi.Input<string>; /** * Set the length of the TCP CLOSE state in seconds (5 - 300 sec, 0 = default). */ tcpRstTimer?: pulumi.Input<number>; /** * Set the length of the TCP TIME-WAIT state in seconds (1 - 300 sec, 0 = default). */ tcpTimewaitTimer?: pulumi.Input<number>; /** * Number of seconds before an idle UDP connection times out (0 - 86400 sec, 0 = default). */ udpIdleTimer?: pulumi.Input<number>; /** * Multiple UDP port ranges. */ udpPortrange?: pulumi.Input<string>; /** * Universally Unique Identifier (UUID; automatically assigned but can be manually reset). */ uuid?: pulumi.Input<string>; /** * Specifies the vdom to which the resource will be applied when the FortiGate unit is running in VDOM mode. Only one vdom can be specified. If you want to inherit the vdom configuration of the provider, please do not set this parameter. */ vdomparam?: pulumi.Input<string>; /** * Enable/disable the visibility of the service on the GUI. Valid values: `enable`, `disable`. */ visibility?: pulumi.Input<string>; } /** * The set of arguments for constructing a Custom resource. */ export interface CustomArgs { /** * Application category ID. The structure of `appCategory` block is documented below. */ appCategories?: pulumi.Input<pulumi.Input<inputs.firewall.service.CustomAppCategory>[]>; /** * Application service type. Valid values: `disable`, `app-id`, `app-category`. */ appServiceType?: pulumi.Input<string>; /** * Application ID. The structure of `application` block is documented below. */ applications?: pulumi.Input<pulumi.Input<inputs.firewall.service.CustomApplication>[]>; /** * Service category. */ category?: pulumi.Input<string>; /** * Configure the type of ICMP error message verification. Valid values: `disable`, `strict`, `default`. */ checkResetRange?: pulumi.Input<string>; /** * Color of icon on the GUI. */ color?: pulumi.Input<number>; /** * Comment. */ comment?: pulumi.Input<string>; /** * Sort sub-tables, please do not set this parameter when configuring static sub-tables. Options: [ false, true, natural, alphabetical ]. false: Default value, do not sort tables; true/natural: sort tables in natural order. For example: [ a10, a2 ] -> [ a2, a10 ]; alphabetical: sort tables in alphabetical order. For example: [ a10, a2 ] -> [ a10, a2 ]. */ dynamicSortSubtable?: pulumi.Input<string>; /** * Security Fabric global object setting. Valid values: `enable`, `disable`. */ fabricObject?: pulumi.Input<string>; /** * Fully qualified domain name. */ fqdn?: pulumi.Input<string>; /** * Get all sub-tables including unconfigured tables. Do not set this variable to true if you configure sub-table in another resource, otherwise, conflicts and overwrite will occur. Options: [ false, true ]. false: Default value, do not get unconfigured tables; true: get all tables including unconfigured tables. */ getAllTables?: pulumi.Input<string>; /** * Helper name. */ helper?: pulumi.Input<string>; /** * ICMP code. */ icmpcode?: pulumi.Input<number>; /** * ICMP type. */ icmptype?: pulumi.Input<number>; /** * Start and end of the IP range associated with service. */ iprange?: pulumi.Input<string>; /** * Custom service name. */ name?: pulumi.Input<string>; /** * Protocol type based on IANA numbers. Valid values: `TCP/UDP/SCTP`, `ICMP`, `ICMP6`, `IP`, `HTTP`, `FTP`, `CONNECT`, `SOCKS-TCP`, `SOCKS-UDP`, `ALL`. */ protocol?: pulumi.Input<string>; /** * IP protocol number. */ protocolNumber?: pulumi.Input<number>; /** * Enable/disable web proxy service. Valid values: `enable`, `disable`. */ proxy?: pulumi.Input<string>; /** * Multiple SCTP port ranges. */ sctpPortrange?: pulumi.Input<string>; /** * Session TTL (300 - 604800, 0 = default). */ sessionTtl?: pulumi.Input<number>; /** * Wait time to close a TCP session waiting for an unanswered FIN packet (1 - 86400 sec, 0 = default). */ tcpHalfcloseTimer?: pulumi.Input<number>; /** * Wait time to close a TCP session waiting for an unanswered open session packet (1 - 86400 sec, 0 = default). */ tcpHalfopenTimer?: pulumi.Input<number>; /** * Multiple TCP port ranges. */ tcpPortrange?: pulumi.Input<string>; /** * Set the length of the TCP CLOSE state in seconds (5 - 300 sec, 0 = default). */ tcpRstTimer?: pulumi.Input<number>; /** * Set the length of the TCP TIME-WAIT state in seconds (1 - 300 sec, 0 = default). */ tcpTimewaitTimer?: pulumi.Input<number>; /** * Number of seconds before an idle UDP connection times out (0 - 86400 sec, 0 = default). */ udpIdleTimer?: pulumi.Input<number>; /** * Multiple UDP port ranges. */ udpPortrange?: pulumi.Input<string>; /** * Universally Unique Identifier (UUID; automatically assigned but can be manually reset). */ uuid?: pulumi.Input<string>; /** * Specifies the vdom to which the resource will be applied when the FortiGate unit is running in VDOM mode. Only one vdom can be specified. If you want to inherit the vdom configuration of the provider, please do not set this parameter. */ vdomparam?: pulumi.Input<string>; /** * Enable/disable the visibility of the service on the GUI. Valid values: `enable`, `disable`. */ visibility?: pulumi.Input<string>; }