UNPKG

@pulumiverse/fortios

Version:

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

403 lines (402 loc) 14.3 kB
import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * Configure IPv6 to IPv4 policies. Applies to FortiOS Version `<= 7.0.0`. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as fortios from "@pulumiverse/fortios"; * * const trname = new fortios.firewall.Policy64("trname", { * action: "accept", * dstaddrs: [{ * name: "all", * }], * dstintf: "port4", * fixedport: "disable", * ippool: "disable", * logtraffic: "disable", * permitAnyHost: "disable", * policyid: 1, * schedule: "always", * services: [{ * name: "ALL", * }], * srcaddrs: [{ * name: "all", * }], * srcintf: "port3", * status: "enable", * tcpMssReceiver: 0, * tcpMssSender: 0, * }); * ``` * * ## Import * * Firewall Policy64 can be imported using any of these accepted formats: * * ```sh * $ pulumi import fortios:firewall/policy64:Policy64 labelname {{policyid}} * ``` * * If you do not want to import arguments of block: * * $ export "FORTIOS_IMPORT_TABLE"="false" * * ```sh * $ pulumi import fortios:firewall/policy64:Policy64 labelname {{policyid}} * ``` * * $ unset "FORTIOS_IMPORT_TABLE" */ export declare class Policy64 extends pulumi.CustomResource { /** * Get an existing Policy64 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?: Policy64State, opts?: pulumi.CustomResourceOptions): Policy64; /** * Returns true if the given object is an instance of Policy64. 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 Policy64; /** * Policy action. Valid values: `accept`, `deny`. */ readonly action: pulumi.Output<string>; /** * Comment. */ readonly comments: pulumi.Output<string | undefined>; /** * Destination address name. The structure of `dstaddr` block is documented below. */ readonly dstaddrs: pulumi.Output<outputs.firewall.Policy64Dstaddr[]>; /** * Destination interface name. */ readonly dstintf: pulumi.Output<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 ]. */ readonly dynamicSortSubtable: pulumi.Output<string | undefined>; /** * Enable/disable policy fixed port. Valid values: `enable`, `disable`. */ readonly fixedport: 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>; /** * Enable/disable policy64 IP pool. Valid values: `enable`, `disable`. */ readonly ippool: pulumi.Output<string>; /** * Enable/disable policy log traffic. Valid values: `enable`, `disable`. */ readonly logtraffic: pulumi.Output<string>; /** * Record logs when a session starts and ends. Valid values: `enable`, `disable`. */ readonly logtrafficStart: pulumi.Output<string>; /** * Policy name. */ readonly name: pulumi.Output<string>; /** * Per-IP traffic shaper. */ readonly perIpShaper: pulumi.Output<string>; /** * Enable/disable permit any host in. Valid values: `enable`, `disable`. */ readonly permitAnyHost: pulumi.Output<string>; /** * Policy ID. */ readonly policyid: pulumi.Output<number>; /** * Policy IP pool names. The structure of `poolname` block is documented below. */ readonly poolnames: pulumi.Output<outputs.firewall.Policy64Poolname[] | undefined>; /** * Schedule name. */ readonly schedule: pulumi.Output<string>; /** * Service name. The structure of `service` block is documented below. */ readonly services: pulumi.Output<outputs.firewall.Policy64Service[] | undefined>; /** * Source address name. The structure of `srcaddr` block is documented below. */ readonly srcaddrs: pulumi.Output<outputs.firewall.Policy64Srcaddr[]>; /** * Source interface name. */ readonly srcintf: pulumi.Output<string>; /** * Enable/disable policy status. Valid values: `enable`, `disable`. */ readonly status: pulumi.Output<string>; /** * TCP MSS value of receiver. */ readonly tcpMssReceiver: pulumi.Output<number>; /** * TCP MSS value of sender. */ readonly tcpMssSender: pulumi.Output<number>; /** * Traffic shaper. */ readonly trafficShaper: pulumi.Output<string>; /** * Reverse traffic shaper. */ readonly trafficShaperReverse: 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>; /** * Create a Policy64 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: Policy64Args, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering Policy64 resources. */ export interface Policy64State { /** * Policy action. Valid values: `accept`, `deny`. */ action?: pulumi.Input<string>; /** * Comment. */ comments?: pulumi.Input<string>; /** * Destination address name. The structure of `dstaddr` block is documented below. */ dstaddrs?: pulumi.Input<pulumi.Input<inputs.firewall.Policy64Dstaddr>[]>; /** * Destination interface name. */ dstintf?: 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>; /** * Enable/disable policy fixed port. Valid values: `enable`, `disable`. */ fixedport?: 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>; /** * Enable/disable policy64 IP pool. Valid values: `enable`, `disable`. */ ippool?: pulumi.Input<string>; /** * Enable/disable policy log traffic. Valid values: `enable`, `disable`. */ logtraffic?: pulumi.Input<string>; /** * Record logs when a session starts and ends. Valid values: `enable`, `disable`. */ logtrafficStart?: pulumi.Input<string>; /** * Policy name. */ name?: pulumi.Input<string>; /** * Per-IP traffic shaper. */ perIpShaper?: pulumi.Input<string>; /** * Enable/disable permit any host in. Valid values: `enable`, `disable`. */ permitAnyHost?: pulumi.Input<string>; /** * Policy ID. */ policyid?: pulumi.Input<number>; /** * Policy IP pool names. The structure of `poolname` block is documented below. */ poolnames?: pulumi.Input<pulumi.Input<inputs.firewall.Policy64Poolname>[]>; /** * Schedule name. */ schedule?: pulumi.Input<string>; /** * Service name. The structure of `service` block is documented below. */ services?: pulumi.Input<pulumi.Input<inputs.firewall.Policy64Service>[]>; /** * Source address name. The structure of `srcaddr` block is documented below. */ srcaddrs?: pulumi.Input<pulumi.Input<inputs.firewall.Policy64Srcaddr>[]>; /** * Source interface name. */ srcintf?: pulumi.Input<string>; /** * Enable/disable policy status. Valid values: `enable`, `disable`. */ status?: pulumi.Input<string>; /** * TCP MSS value of receiver. */ tcpMssReceiver?: pulumi.Input<number>; /** * TCP MSS value of sender. */ tcpMssSender?: pulumi.Input<number>; /** * Traffic shaper. */ trafficShaper?: pulumi.Input<string>; /** * Reverse traffic shaper. */ trafficShaperReverse?: 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>; } /** * The set of arguments for constructing a Policy64 resource. */ export interface Policy64Args { /** * Policy action. Valid values: `accept`, `deny`. */ action?: pulumi.Input<string>; /** * Comment. */ comments?: pulumi.Input<string>; /** * Destination address name. The structure of `dstaddr` block is documented below. */ dstaddrs: pulumi.Input<pulumi.Input<inputs.firewall.Policy64Dstaddr>[]>; /** * Destination interface name. */ dstintf: 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>; /** * Enable/disable policy fixed port. Valid values: `enable`, `disable`. */ fixedport?: 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>; /** * Enable/disable policy64 IP pool. Valid values: `enable`, `disable`. */ ippool?: pulumi.Input<string>; /** * Enable/disable policy log traffic. Valid values: `enable`, `disable`. */ logtraffic?: pulumi.Input<string>; /** * Record logs when a session starts and ends. Valid values: `enable`, `disable`. */ logtrafficStart?: pulumi.Input<string>; /** * Policy name. */ name?: pulumi.Input<string>; /** * Per-IP traffic shaper. */ perIpShaper?: pulumi.Input<string>; /** * Enable/disable permit any host in. Valid values: `enable`, `disable`. */ permitAnyHost?: pulumi.Input<string>; /** * Policy ID. */ policyid?: pulumi.Input<number>; /** * Policy IP pool names. The structure of `poolname` block is documented below. */ poolnames?: pulumi.Input<pulumi.Input<inputs.firewall.Policy64Poolname>[]>; /** * Schedule name. */ schedule: pulumi.Input<string>; /** * Service name. The structure of `service` block is documented below. */ services?: pulumi.Input<pulumi.Input<inputs.firewall.Policy64Service>[]>; /** * Source address name. The structure of `srcaddr` block is documented below. */ srcaddrs: pulumi.Input<pulumi.Input<inputs.firewall.Policy64Srcaddr>[]>; /** * Source interface name. */ srcintf: pulumi.Input<string>; /** * Enable/disable policy status. Valid values: `enable`, `disable`. */ status?: pulumi.Input<string>; /** * TCP MSS value of receiver. */ tcpMssReceiver?: pulumi.Input<number>; /** * TCP MSS value of sender. */ tcpMssSender?: pulumi.Input<number>; /** * Traffic shaper. */ trafficShaper?: pulumi.Input<string>; /** * Reverse traffic shaper. */ trafficShaperReverse?: 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>; }