@pulumiverse/fortios
Version:
A Pulumi package for creating and managing Fortios resources. Based on terraform-provider-fortios: version v1.16.0
376 lines (375 loc) • 14.5 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
/**
* Configure multicast NAT policies.
*
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as fortios from "@pulumiverse/fortios";
*
* const trname = new fortios.firewall.Multicastpolicy("trname", {
* action: "accept",
* dnat: "0.0.0.0",
* dstaddrs: [{
* name: "all",
* }],
* dstintf: "port4",
* endPort: 65535,
* fosid: 1,
* logtraffic: "enable",
* protocol: 0,
* snat: "disable",
* snatIp: "0.0.0.0",
* srcaddrs: [{
* name: "all",
* }],
* srcintf: "port3",
* startPort: 1,
* status: "enable",
* });
* ```
*
* ## Import
*
* Firewall MulticastPolicy can be imported using any of these accepted formats:
*
* ```sh
* $ pulumi import fortios:firewall/multicastpolicy:Multicastpolicy labelname {{fosid}}
* ```
*
* If you do not want to import arguments of block:
*
* $ export "FORTIOS_IMPORT_TABLE"="false"
*
* ```sh
* $ pulumi import fortios:firewall/multicastpolicy:Multicastpolicy labelname {{fosid}}
* ```
*
* $ unset "FORTIOS_IMPORT_TABLE"
*/
export declare class Multicastpolicy extends pulumi.CustomResource {
/**
* Get an existing Multicastpolicy 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?: MulticastpolicyState, opts?: pulumi.CustomResourceOptions): Multicastpolicy;
/**
* Returns true if the given object is an instance of Multicastpolicy. 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 Multicastpolicy;
/**
* Accept or deny traffic matching the policy. Valid values: `accept`, `deny`.
*/
readonly action: pulumi.Output<string>;
/**
* Enable/disable offloading policy traffic for hardware acceleration. Valid values: `enable`, `disable`.
*/
readonly autoAsicOffload: pulumi.Output<string>;
/**
* Comment.
*/
readonly comments: pulumi.Output<string | undefined>;
/**
* IPv4 DNAT address used for multicast destination addresses.
*/
readonly dnat: pulumi.Output<string>;
/**
* Destination address objects. The structure of `dstaddr` block is documented below.
*/
readonly dstaddrs: pulumi.Output<outputs.firewall.MulticastpolicyDstaddr[]>;
/**
* 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>;
/**
* Integer value for ending TCP/UDP/SCTP destination port in range (1 - 65535, default = 1).
*/
readonly endPort: pulumi.Output<number>;
/**
* Policy ID.
*/
readonly fosid: pulumi.Output<number>;
/**
* 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>;
/**
* Name of an existing IPS sensor.
*/
readonly ipsSensor: pulumi.Output<string>;
/**
* Enable/disable logging traffic accepted by this policy.
*/
readonly logtraffic: pulumi.Output<string>;
/**
* Policy name.
*/
readonly name: pulumi.Output<string>;
/**
* Integer value for the protocol type as defined by IANA (0 - 255, default = 0).
*/
readonly protocol: pulumi.Output<number>;
/**
* Enable/disable substitution of the outgoing interface IP address for the original source IP address (called source NAT or SNAT). Valid values: `enable`, `disable`.
*/
readonly snat: pulumi.Output<string>;
/**
* IPv4 address to be used as the source address for NATed traffic.
*/
readonly snatIp: pulumi.Output<string>;
/**
* Source address objects. The structure of `srcaddr` block is documented below.
*/
readonly srcaddrs: pulumi.Output<outputs.firewall.MulticastpolicySrcaddr[]>;
/**
* Source interface name.
*/
readonly srcintf: pulumi.Output<string>;
/**
* Integer value for starting TCP/UDP/SCTP destination port in range (1 - 65535, default = 1).
*/
readonly startPort: pulumi.Output<number>;
/**
* Enable/disable this policy. Valid values: `enable`, `disable`.
*/
readonly status: pulumi.Output<string>;
/**
* Traffic shaper to apply to traffic forwarded by the multicast policy.
*/
readonly trafficShaper: pulumi.Output<string>;
/**
* Enable to add an IPS security profile to the policy. Valid values: `enable`, `disable`.
*/
readonly utmStatus: 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 Multicastpolicy 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: MulticastpolicyArgs, opts?: pulumi.CustomResourceOptions);
}
/**
* Input properties used for looking up and filtering Multicastpolicy resources.
*/
export interface MulticastpolicyState {
/**
* Accept or deny traffic matching the policy. Valid values: `accept`, `deny`.
*/
action?: pulumi.Input<string>;
/**
* Enable/disable offloading policy traffic for hardware acceleration. Valid values: `enable`, `disable`.
*/
autoAsicOffload?: pulumi.Input<string>;
/**
* Comment.
*/
comments?: pulumi.Input<string>;
/**
* IPv4 DNAT address used for multicast destination addresses.
*/
dnat?: pulumi.Input<string>;
/**
* Destination address objects. The structure of `dstaddr` block is documented below.
*/
dstaddrs?: pulumi.Input<pulumi.Input<inputs.firewall.MulticastpolicyDstaddr>[]>;
/**
* 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>;
/**
* Integer value for ending TCP/UDP/SCTP destination port in range (1 - 65535, default = 1).
*/
endPort?: pulumi.Input<number>;
/**
* Policy ID.
*/
fosid?: pulumi.Input<number>;
/**
* 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>;
/**
* Name of an existing IPS sensor.
*/
ipsSensor?: pulumi.Input<string>;
/**
* Enable/disable logging traffic accepted by this policy.
*/
logtraffic?: pulumi.Input<string>;
/**
* Policy name.
*/
name?: pulumi.Input<string>;
/**
* Integer value for the protocol type as defined by IANA (0 - 255, default = 0).
*/
protocol?: pulumi.Input<number>;
/**
* Enable/disable substitution of the outgoing interface IP address for the original source IP address (called source NAT or SNAT). Valid values: `enable`, `disable`.
*/
snat?: pulumi.Input<string>;
/**
* IPv4 address to be used as the source address for NATed traffic.
*/
snatIp?: pulumi.Input<string>;
/**
* Source address objects. The structure of `srcaddr` block is documented below.
*/
srcaddrs?: pulumi.Input<pulumi.Input<inputs.firewall.MulticastpolicySrcaddr>[]>;
/**
* Source interface name.
*/
srcintf?: pulumi.Input<string>;
/**
* Integer value for starting TCP/UDP/SCTP destination port in range (1 - 65535, default = 1).
*/
startPort?: pulumi.Input<number>;
/**
* Enable/disable this policy. Valid values: `enable`, `disable`.
*/
status?: pulumi.Input<string>;
/**
* Traffic shaper to apply to traffic forwarded by the multicast policy.
*/
trafficShaper?: pulumi.Input<string>;
/**
* Enable to add an IPS security profile to the policy. Valid values: `enable`, `disable`.
*/
utmStatus?: 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 Multicastpolicy resource.
*/
export interface MulticastpolicyArgs {
/**
* Accept or deny traffic matching the policy. Valid values: `accept`, `deny`.
*/
action?: pulumi.Input<string>;
/**
* Enable/disable offloading policy traffic for hardware acceleration. Valid values: `enable`, `disable`.
*/
autoAsicOffload?: pulumi.Input<string>;
/**
* Comment.
*/
comments?: pulumi.Input<string>;
/**
* IPv4 DNAT address used for multicast destination addresses.
*/
dnat?: pulumi.Input<string>;
/**
* Destination address objects. The structure of `dstaddr` block is documented below.
*/
dstaddrs: pulumi.Input<pulumi.Input<inputs.firewall.MulticastpolicyDstaddr>[]>;
/**
* 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>;
/**
* Integer value for ending TCP/UDP/SCTP destination port in range (1 - 65535, default = 1).
*/
endPort?: pulumi.Input<number>;
/**
* Policy ID.
*/
fosid?: pulumi.Input<number>;
/**
* 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>;
/**
* Name of an existing IPS sensor.
*/
ipsSensor?: pulumi.Input<string>;
/**
* Enable/disable logging traffic accepted by this policy.
*/
logtraffic?: pulumi.Input<string>;
/**
* Policy name.
*/
name?: pulumi.Input<string>;
/**
* Integer value for the protocol type as defined by IANA (0 - 255, default = 0).
*/
protocol?: pulumi.Input<number>;
/**
* Enable/disable substitution of the outgoing interface IP address for the original source IP address (called source NAT or SNAT). Valid values: `enable`, `disable`.
*/
snat?: pulumi.Input<string>;
/**
* IPv4 address to be used as the source address for NATed traffic.
*/
snatIp?: pulumi.Input<string>;
/**
* Source address objects. The structure of `srcaddr` block is documented below.
*/
srcaddrs: pulumi.Input<pulumi.Input<inputs.firewall.MulticastpolicySrcaddr>[]>;
/**
* Source interface name.
*/
srcintf: pulumi.Input<string>;
/**
* Integer value for starting TCP/UDP/SCTP destination port in range (1 - 65535, default = 1).
*/
startPort?: pulumi.Input<number>;
/**
* Enable/disable this policy. Valid values: `enable`, `disable`.
*/
status?: pulumi.Input<string>;
/**
* Traffic shaper to apply to traffic forwarded by the multicast policy.
*/
trafficShaper?: pulumi.Input<string>;
/**
* Enable to add an IPS security profile to the policy. Valid values: `enable`, `disable`.
*/
utmStatus?: 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>;
}