@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 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../../types/input";
import * as outputs from "../../types/output";
/**
* Configure AntiSpam profiles. Applies to FortiOS Version `<= 6.2.0`.
*
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as fortios from "@pulumiverse/fortios";
*
* const trname = new fortios.filter.spam.Profile("trname", {
* comment: "terraform test",
* external: "disable",
* flowBased: "disable",
* gmail: {
* log: "disable",
* },
* imap: {
* action: "tag",
* log: "disable",
* tagMsg: "Spam",
* tagType: "subject spaminfo",
* },
* mapi: {
* action: "discard",
* log: "disable",
* },
* msnHotmail: {
* log: "disable",
* },
* pop3: {
* action: "tag",
* log: "disable",
* tagMsg: "Spam",
* tagType: "subject spaminfo",
* },
* smtp: {
* action: "discard",
* hdrip: "disable",
* localOverride: "disable",
* log: "disable",
* tagMsg: "Spam",
* tagType: "subject spaminfo",
* },
* spamBwlTable: 0,
* spamBwordTable: 0,
* spamBwordThreshold: 10,
* spamFiltering: "disable",
* spamIptrustTable: 0,
* spamLog: "enable",
* spamLogFortiguardResponse: "disable",
* spamMheaderTable: 0,
* spamRblTable: 0,
* yahooMail: {
* log: "disable",
* },
* });
* ```
*
* ## Import
*
* Spamfilter Profile can be imported using any of these accepted formats:
*
* ```sh
* $ pulumi import fortios:filter/spam/profile:Profile labelname {{name}}
* ```
*
* If you do not want to import arguments of block:
*
* $ export "FORTIOS_IMPORT_TABLE"="false"
*
* ```sh
* $ pulumi import fortios:filter/spam/profile:Profile labelname {{name}}
* ```
*
* $ unset "FORTIOS_IMPORT_TABLE"
*/
export declare class Profile extends pulumi.CustomResource {
/**
* Get an existing Profile 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?: ProfileState, opts?: pulumi.CustomResourceOptions): Profile;
/**
* Returns true if the given object is an instance of Profile. 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 Profile;
/**
* Comment.
*/
readonly comment: pulumi.Output<string | undefined>;
/**
* Enable/disable external Email inspection. Valid values: `enable`, `disable`.
*/
readonly external: pulumi.Output<string>;
/**
* Enable/disable flow-based spam filtering. Valid values: `enable`, `disable`.
*/
readonly flowBased: 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>;
/**
* Gmail. The structure of `gmail` block is documented below.
*/
readonly gmail: pulumi.Output<outputs.filter.spam.ProfileGmail>;
/**
* IMAP. The structure of `imap` block is documented below.
*/
readonly imap: pulumi.Output<outputs.filter.spam.ProfileImap>;
/**
* MAPI. The structure of `mapi` block is documented below.
*/
readonly mapi: pulumi.Output<outputs.filter.spam.ProfileMapi>;
/**
* MSN Hotmail. The structure of `msnHotmail` block is documented below.
*/
readonly msnHotmail: pulumi.Output<outputs.filter.spam.ProfileMsnHotmail>;
/**
* Profile name.
*/
readonly name: pulumi.Output<string>;
/**
* Options. Valid values: `bannedword`, `spambwl`, `spamfsip`, `spamfssubmit`, `spamfschksum`, `spamfsurl`, `spamhelodns`, `spamraddrdns`, `spamrbl`, `spamhdrcheck`, `spamfsphish`.
*/
readonly options: pulumi.Output<string>;
/**
* POP3. The structure of `pop3` block is documented below.
*/
readonly pop3: pulumi.Output<outputs.filter.spam.ProfilePop3>;
/**
* Replacement message group.
*/
readonly replacemsgGroup: pulumi.Output<string>;
/**
* SMTP. The structure of `smtp` block is documented below.
*/
readonly smtp: pulumi.Output<outputs.filter.spam.ProfileSmtp>;
/**
* Anti-spam black/white list table ID.
*/
readonly spamBwlTable: pulumi.Output<number>;
/**
* Anti-spam banned word table ID.
*/
readonly spamBwordTable: pulumi.Output<number>;
/**
* Spam banned word threshold.
*/
readonly spamBwordThreshold: pulumi.Output<number>;
/**
* Enable/disable spam filtering. Valid values: `enable`, `disable`.
*/
readonly spamFiltering: pulumi.Output<string>;
/**
* Anti-spam IP trust table ID.
*/
readonly spamIptrustTable: pulumi.Output<number>;
/**
* Enable/disable spam logging for email filtering. Valid values: `disable`, `enable`.
*/
readonly spamLog: pulumi.Output<string>;
/**
* Enable/disable logging FortiGuard spam response. Valid values: `disable`, `enable`.
*/
readonly spamLogFortiguardResponse: pulumi.Output<string>;
/**
* Anti-spam MIME header table ID.
*/
readonly spamMheaderTable: pulumi.Output<number>;
/**
* Anti-spam DNSBL table ID.
*/
readonly spamRblTable: pulumi.Output<number>;
/**
* 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>;
/**
* Yahoo! Mail. The structure of `yahooMail` block is documented below.
*/
readonly yahooMail: pulumi.Output<outputs.filter.spam.ProfileYahooMail>;
/**
* Create a Profile 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?: ProfileArgs, opts?: pulumi.CustomResourceOptions);
}
/**
* Input properties used for looking up and filtering Profile resources.
*/
export interface ProfileState {
/**
* Comment.
*/
comment?: pulumi.Input<string>;
/**
* Enable/disable external Email inspection. Valid values: `enable`, `disable`.
*/
external?: pulumi.Input<string>;
/**
* Enable/disable flow-based spam filtering. Valid values: `enable`, `disable`.
*/
flowBased?: 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>;
/**
* Gmail. The structure of `gmail` block is documented below.
*/
gmail?: pulumi.Input<inputs.filter.spam.ProfileGmail>;
/**
* IMAP. The structure of `imap` block is documented below.
*/
imap?: pulumi.Input<inputs.filter.spam.ProfileImap>;
/**
* MAPI. The structure of `mapi` block is documented below.
*/
mapi?: pulumi.Input<inputs.filter.spam.ProfileMapi>;
/**
* MSN Hotmail. The structure of `msnHotmail` block is documented below.
*/
msnHotmail?: pulumi.Input<inputs.filter.spam.ProfileMsnHotmail>;
/**
* Profile name.
*/
name?: pulumi.Input<string>;
/**
* Options. Valid values: `bannedword`, `spambwl`, `spamfsip`, `spamfssubmit`, `spamfschksum`, `spamfsurl`, `spamhelodns`, `spamraddrdns`, `spamrbl`, `spamhdrcheck`, `spamfsphish`.
*/
options?: pulumi.Input<string>;
/**
* POP3. The structure of `pop3` block is documented below.
*/
pop3?: pulumi.Input<inputs.filter.spam.ProfilePop3>;
/**
* Replacement message group.
*/
replacemsgGroup?: pulumi.Input<string>;
/**
* SMTP. The structure of `smtp` block is documented below.
*/
smtp?: pulumi.Input<inputs.filter.spam.ProfileSmtp>;
/**
* Anti-spam black/white list table ID.
*/
spamBwlTable?: pulumi.Input<number>;
/**
* Anti-spam banned word table ID.
*/
spamBwordTable?: pulumi.Input<number>;
/**
* Spam banned word threshold.
*/
spamBwordThreshold?: pulumi.Input<number>;
/**
* Enable/disable spam filtering. Valid values: `enable`, `disable`.
*/
spamFiltering?: pulumi.Input<string>;
/**
* Anti-spam IP trust table ID.
*/
spamIptrustTable?: pulumi.Input<number>;
/**
* Enable/disable spam logging for email filtering. Valid values: `disable`, `enable`.
*/
spamLog?: pulumi.Input<string>;
/**
* Enable/disable logging FortiGuard spam response. Valid values: `disable`, `enable`.
*/
spamLogFortiguardResponse?: pulumi.Input<string>;
/**
* Anti-spam MIME header table ID.
*/
spamMheaderTable?: pulumi.Input<number>;
/**
* Anti-spam DNSBL table ID.
*/
spamRblTable?: pulumi.Input<number>;
/**
* 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>;
/**
* Yahoo! Mail. The structure of `yahooMail` block is documented below.
*/
yahooMail?: pulumi.Input<inputs.filter.spam.ProfileYahooMail>;
}
/**
* The set of arguments for constructing a Profile resource.
*/
export interface ProfileArgs {
/**
* Comment.
*/
comment?: pulumi.Input<string>;
/**
* Enable/disable external Email inspection. Valid values: `enable`, `disable`.
*/
external?: pulumi.Input<string>;
/**
* Enable/disable flow-based spam filtering. Valid values: `enable`, `disable`.
*/
flowBased?: 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>;
/**
* Gmail. The structure of `gmail` block is documented below.
*/
gmail?: pulumi.Input<inputs.filter.spam.ProfileGmail>;
/**
* IMAP. The structure of `imap` block is documented below.
*/
imap?: pulumi.Input<inputs.filter.spam.ProfileImap>;
/**
* MAPI. The structure of `mapi` block is documented below.
*/
mapi?: pulumi.Input<inputs.filter.spam.ProfileMapi>;
/**
* MSN Hotmail. The structure of `msnHotmail` block is documented below.
*/
msnHotmail?: pulumi.Input<inputs.filter.spam.ProfileMsnHotmail>;
/**
* Profile name.
*/
name?: pulumi.Input<string>;
/**
* Options. Valid values: `bannedword`, `spambwl`, `spamfsip`, `spamfssubmit`, `spamfschksum`, `spamfsurl`, `spamhelodns`, `spamraddrdns`, `spamrbl`, `spamhdrcheck`, `spamfsphish`.
*/
options?: pulumi.Input<string>;
/**
* POP3. The structure of `pop3` block is documented below.
*/
pop3?: pulumi.Input<inputs.filter.spam.ProfilePop3>;
/**
* Replacement message group.
*/
replacemsgGroup?: pulumi.Input<string>;
/**
* SMTP. The structure of `smtp` block is documented below.
*/
smtp?: pulumi.Input<inputs.filter.spam.ProfileSmtp>;
/**
* Anti-spam black/white list table ID.
*/
spamBwlTable?: pulumi.Input<number>;
/**
* Anti-spam banned word table ID.
*/
spamBwordTable?: pulumi.Input<number>;
/**
* Spam banned word threshold.
*/
spamBwordThreshold?: pulumi.Input<number>;
/**
* Enable/disable spam filtering. Valid values: `enable`, `disable`.
*/
spamFiltering?: pulumi.Input<string>;
/**
* Anti-spam IP trust table ID.
*/
spamIptrustTable?: pulumi.Input<number>;
/**
* Enable/disable spam logging for email filtering. Valid values: `disable`, `enable`.
*/
spamLog?: pulumi.Input<string>;
/**
* Enable/disable logging FortiGuard spam response. Valid values: `disable`, `enable`.
*/
spamLogFortiguardResponse?: pulumi.Input<string>;
/**
* Anti-spam MIME header table ID.
*/
spamMheaderTable?: pulumi.Input<number>;
/**
* Anti-spam DNSBL table ID.
*/
spamRblTable?: pulumi.Input<number>;
/**
* 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>;
/**
* Yahoo! Mail. The structure of `yahooMail` block is documented below.
*/
yahooMail?: pulumi.Input<inputs.filter.spam.ProfileYahooMail>;
}