UNPKG

@pulumiverse/fortios

Version:

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

666 lines (665 loc) 21.6 kB
import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * Configure IPv4 addresses. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as fortios from "@pulumiverse/fortios"; * * const trname = new fortios.firewall.Address("trname", { * allowRouting: "disable", * associatedInterface: "port2", * color: 3, * endIp: "255.255.255.0", * startIp: "22.1.1.0", * subnet: "22.1.1.0 255.255.255.0", * type: "ipmask", * visibility: "enable", * }); * ``` * * ## Import * * Firewall Address can be imported using any of these accepted formats: * * ```sh * $ pulumi import fortios:firewall/address:Address labelname {{name}} * ``` * * If you do not want to import arguments of block: * * $ export "FORTIOS_IMPORT_TABLE"="false" * * ```sh * $ pulumi import fortios:firewall/address:Address labelname {{name}} * ``` * * $ unset "FORTIOS_IMPORT_TABLE" */ export declare class Address extends pulumi.CustomResource { /** * Get an existing Address 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?: AddressState, opts?: pulumi.CustomResourceOptions): Address; /** * Returns true if the given object is an instance of Address. 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 Address; /** * Enable/disable use of this address in the static route configuration. Valid values: `enable`, `disable`. */ readonly allowRouting: pulumi.Output<string>; /** * Network interface associated with address. */ readonly associatedInterface: pulumi.Output<string | undefined>; /** * Defines the minimal TTL of individual IP addresses in FQDN cache measured in seconds. */ readonly cacheTtl: pulumi.Output<number | undefined>; /** * SPT (System Posture Token) value. Valid values: `unknown`, `healthy`, `quarantine`, `checkup`, `transient`, `infected`. */ readonly clearpassSpt: pulumi.Output<string>; /** * Color of icon on the GUI. */ readonly color: pulumi.Output<number | undefined>; /** * Comment. */ readonly comment: pulumi.Output<string | undefined>; /** * IP addresses associated to a specific country. */ readonly country: 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>; /** * Final IP address (inclusive) in the range for the address. */ readonly endIp: pulumi.Output<string>; /** * Last MAC address in the range. */ readonly endMac: pulumi.Output<string>; /** * Endpoint group name. */ readonly epgName: pulumi.Output<string | undefined>; /** * Security Fabric global object setting. Valid values: `enable`, `disable`. */ readonly fabricObject: pulumi.Output<string>; /** * Match criteria filter. */ readonly filter: pulumi.Output<string | undefined>; /** * Fully Qualified Domain Name address. */ readonly fqdn: pulumi.Output<string | undefined>; /** * FSSO group(s). The structure of `fssoGroup` block is documented below. */ readonly fssoGroups: pulumi.Output<outputs.firewall.AddressFssoGroup[] | undefined>; /** * 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>; /** * Dynamic address matching hardware model. */ readonly hwModel: pulumi.Output<string | undefined>; /** * Dynamic address matching hardware vendor. */ readonly hwVendor: pulumi.Output<string | undefined>; /** * Name of interface whose IP address is to be used. */ readonly interface: pulumi.Output<string | undefined>; /** * IP address list. The structure of `list` block is documented below. */ readonly lists: pulumi.Output<outputs.firewall.AddressList[]>; /** * Multiple MAC address ranges. The structure of `macaddr` block is documented below. */ readonly macaddrs: pulumi.Output<outputs.firewall.AddressMacaddr[] | undefined>; /** * Address name. */ readonly name: pulumi.Output<string>; /** * Enable/disable collection of node addresses only in Kubernetes. Valid values: `enable`, `disable`. */ readonly nodeIpOnly: pulumi.Output<string>; /** * Object ID for NSX. */ readonly objId: pulumi.Output<string | undefined>; /** * Tag of dynamic address object. */ readonly objTag: pulumi.Output<string | undefined>; /** * Object type. Valid values: `ip`, `mac`. */ readonly objType: pulumi.Output<string>; /** * Organization domain name (Syntax: organization/domain). */ readonly organization: pulumi.Output<string | undefined>; /** * Dynamic address matching operating system. */ readonly os: pulumi.Output<string | undefined>; /** * Policy group name. */ readonly policyGroup: pulumi.Output<string | undefined>; /** * route-tag address. */ readonly routeTag: pulumi.Output<number | undefined>; /** * SDN. */ readonly sdn: pulumi.Output<string | undefined>; /** * Type of addresses to collect. Valid values: `private`, `public`, `all`. */ readonly sdnAddrType: pulumi.Output<string>; /** * SDN Tag. */ readonly sdnTag: pulumi.Output<string | undefined>; /** * First IP address (inclusive) in the range for the address. */ readonly startIp: pulumi.Output<string>; /** * First MAC address in the range. */ readonly startMac: pulumi.Output<string>; /** * Sub-type of address. */ readonly subType: pulumi.Output<string>; /** * IP address and subnet mask of address. */ readonly subnet: pulumi.Output<string>; /** * Subnet name. */ readonly subnetName: pulumi.Output<string | undefined>; /** * Dynamic address matching software version. */ readonly swVersion: pulumi.Output<string | undefined>; /** * Tag detection level of dynamic address object. */ readonly tagDetectionLevel: pulumi.Output<string | undefined>; /** * Tag type of dynamic address object. */ readonly tagType: pulumi.Output<string | undefined>; /** * Config object tagging. The structure of `tagging` block is documented below. */ readonly taggings: pulumi.Output<outputs.firewall.AddressTagging[] | undefined>; /** * Tenant. */ readonly tenant: pulumi.Output<string | undefined>; /** * Type of address. */ readonly type: 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 address visibility in the GUI. Valid values: `enable`, `disable`. */ readonly visibility: pulumi.Output<string | undefined>; /** * IP address and wildcard netmask. */ readonly wildcard: pulumi.Output<string>; /** * Fully Qualified Domain Name with wildcard characters. */ readonly wildcardFqdn: pulumi.Output<string | undefined>; /** * Create a Address 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?: AddressArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering Address resources. */ export interface AddressState { /** * Enable/disable use of this address in the static route configuration. Valid values: `enable`, `disable`. */ allowRouting?: pulumi.Input<string>; /** * Network interface associated with address. */ associatedInterface?: pulumi.Input<string>; /** * Defines the minimal TTL of individual IP addresses in FQDN cache measured in seconds. */ cacheTtl?: pulumi.Input<number>; /** * SPT (System Posture Token) value. Valid values: `unknown`, `healthy`, `quarantine`, `checkup`, `transient`, `infected`. */ clearpassSpt?: pulumi.Input<string>; /** * Color of icon on the GUI. */ color?: pulumi.Input<number>; /** * Comment. */ comment?: pulumi.Input<string>; /** * IP addresses associated to a specific country. */ country?: 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>; /** * Final IP address (inclusive) in the range for the address. */ endIp?: pulumi.Input<string>; /** * Last MAC address in the range. */ endMac?: pulumi.Input<string>; /** * Endpoint group name. */ epgName?: pulumi.Input<string>; /** * Security Fabric global object setting. Valid values: `enable`, `disable`. */ fabricObject?: pulumi.Input<string>; /** * Match criteria filter. */ filter?: pulumi.Input<string>; /** * Fully Qualified Domain Name address. */ fqdn?: pulumi.Input<string>; /** * FSSO group(s). The structure of `fssoGroup` block is documented below. */ fssoGroups?: pulumi.Input<pulumi.Input<inputs.firewall.AddressFssoGroup>[]>; /** * 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>; /** * Dynamic address matching hardware model. */ hwModel?: pulumi.Input<string>; /** * Dynamic address matching hardware vendor. */ hwVendor?: pulumi.Input<string>; /** * Name of interface whose IP address is to be used. */ interface?: pulumi.Input<string>; /** * IP address list. The structure of `list` block is documented below. */ lists?: pulumi.Input<pulumi.Input<inputs.firewall.AddressList>[]>; /** * Multiple MAC address ranges. The structure of `macaddr` block is documented below. */ macaddrs?: pulumi.Input<pulumi.Input<inputs.firewall.AddressMacaddr>[]>; /** * Address name. */ name?: pulumi.Input<string>; /** * Enable/disable collection of node addresses only in Kubernetes. Valid values: `enable`, `disable`. */ nodeIpOnly?: pulumi.Input<string>; /** * Object ID for NSX. */ objId?: pulumi.Input<string>; /** * Tag of dynamic address object. */ objTag?: pulumi.Input<string>; /** * Object type. Valid values: `ip`, `mac`. */ objType?: pulumi.Input<string>; /** * Organization domain name (Syntax: organization/domain). */ organization?: pulumi.Input<string>; /** * Dynamic address matching operating system. */ os?: pulumi.Input<string>; /** * Policy group name. */ policyGroup?: pulumi.Input<string>; /** * route-tag address. */ routeTag?: pulumi.Input<number>; /** * SDN. */ sdn?: pulumi.Input<string>; /** * Type of addresses to collect. Valid values: `private`, `public`, `all`. */ sdnAddrType?: pulumi.Input<string>; /** * SDN Tag. */ sdnTag?: pulumi.Input<string>; /** * First IP address (inclusive) in the range for the address. */ startIp?: pulumi.Input<string>; /** * First MAC address in the range. */ startMac?: pulumi.Input<string>; /** * Sub-type of address. */ subType?: pulumi.Input<string>; /** * IP address and subnet mask of address. */ subnet?: pulumi.Input<string>; /** * Subnet name. */ subnetName?: pulumi.Input<string>; /** * Dynamic address matching software version. */ swVersion?: pulumi.Input<string>; /** * Tag detection level of dynamic address object. */ tagDetectionLevel?: pulumi.Input<string>; /** * Tag type of dynamic address object. */ tagType?: pulumi.Input<string>; /** * Config object tagging. The structure of `tagging` block is documented below. */ taggings?: pulumi.Input<pulumi.Input<inputs.firewall.AddressTagging>[]>; /** * Tenant. */ tenant?: pulumi.Input<string>; /** * Type of address. */ type?: 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 address visibility in the GUI. Valid values: `enable`, `disable`. */ visibility?: pulumi.Input<string>; /** * IP address and wildcard netmask. */ wildcard?: pulumi.Input<string>; /** * Fully Qualified Domain Name with wildcard characters. */ wildcardFqdn?: pulumi.Input<string>; } /** * The set of arguments for constructing a Address resource. */ export interface AddressArgs { /** * Enable/disable use of this address in the static route configuration. Valid values: `enable`, `disable`. */ allowRouting?: pulumi.Input<string>; /** * Network interface associated with address. */ associatedInterface?: pulumi.Input<string>; /** * Defines the minimal TTL of individual IP addresses in FQDN cache measured in seconds. */ cacheTtl?: pulumi.Input<number>; /** * SPT (System Posture Token) value. Valid values: `unknown`, `healthy`, `quarantine`, `checkup`, `transient`, `infected`. */ clearpassSpt?: pulumi.Input<string>; /** * Color of icon on the GUI. */ color?: pulumi.Input<number>; /** * Comment. */ comment?: pulumi.Input<string>; /** * IP addresses associated to a specific country. */ country?: 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>; /** * Final IP address (inclusive) in the range for the address. */ endIp?: pulumi.Input<string>; /** * Last MAC address in the range. */ endMac?: pulumi.Input<string>; /** * Endpoint group name. */ epgName?: pulumi.Input<string>; /** * Security Fabric global object setting. Valid values: `enable`, `disable`. */ fabricObject?: pulumi.Input<string>; /** * Match criteria filter. */ filter?: pulumi.Input<string>; /** * Fully Qualified Domain Name address. */ fqdn?: pulumi.Input<string>; /** * FSSO group(s). The structure of `fssoGroup` block is documented below. */ fssoGroups?: pulumi.Input<pulumi.Input<inputs.firewall.AddressFssoGroup>[]>; /** * 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>; /** * Dynamic address matching hardware model. */ hwModel?: pulumi.Input<string>; /** * Dynamic address matching hardware vendor. */ hwVendor?: pulumi.Input<string>; /** * Name of interface whose IP address is to be used. */ interface?: pulumi.Input<string>; /** * IP address list. The structure of `list` block is documented below. */ lists?: pulumi.Input<pulumi.Input<inputs.firewall.AddressList>[]>; /** * Multiple MAC address ranges. The structure of `macaddr` block is documented below. */ macaddrs?: pulumi.Input<pulumi.Input<inputs.firewall.AddressMacaddr>[]>; /** * Address name. */ name?: pulumi.Input<string>; /** * Enable/disable collection of node addresses only in Kubernetes. Valid values: `enable`, `disable`. */ nodeIpOnly?: pulumi.Input<string>; /** * Object ID for NSX. */ objId?: pulumi.Input<string>; /** * Tag of dynamic address object. */ objTag?: pulumi.Input<string>; /** * Object type. Valid values: `ip`, `mac`. */ objType?: pulumi.Input<string>; /** * Organization domain name (Syntax: organization/domain). */ organization?: pulumi.Input<string>; /** * Dynamic address matching operating system. */ os?: pulumi.Input<string>; /** * Policy group name. */ policyGroup?: pulumi.Input<string>; /** * route-tag address. */ routeTag?: pulumi.Input<number>; /** * SDN. */ sdn?: pulumi.Input<string>; /** * Type of addresses to collect. Valid values: `private`, `public`, `all`. */ sdnAddrType?: pulumi.Input<string>; /** * SDN Tag. */ sdnTag?: pulumi.Input<string>; /** * First IP address (inclusive) in the range for the address. */ startIp?: pulumi.Input<string>; /** * First MAC address in the range. */ startMac?: pulumi.Input<string>; /** * Sub-type of address. */ subType?: pulumi.Input<string>; /** * IP address and subnet mask of address. */ subnet?: pulumi.Input<string>; /** * Subnet name. */ subnetName?: pulumi.Input<string>; /** * Dynamic address matching software version. */ swVersion?: pulumi.Input<string>; /** * Tag detection level of dynamic address object. */ tagDetectionLevel?: pulumi.Input<string>; /** * Tag type of dynamic address object. */ tagType?: pulumi.Input<string>; /** * Config object tagging. The structure of `tagging` block is documented below. */ taggings?: pulumi.Input<pulumi.Input<inputs.firewall.AddressTagging>[]>; /** * Tenant. */ tenant?: pulumi.Input<string>; /** * Type of address. */ type?: 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 address visibility in the GUI. Valid values: `enable`, `disable`. */ visibility?: pulumi.Input<string>; /** * IP address and wildcard netmask. */ wildcard?: pulumi.Input<string>; /** * Fully Qualified Domain Name with wildcard characters. */ wildcardFqdn?: pulumi.Input<string>; }