import * as pulumi from "@pulumi/pulumi"; import * as inputs from "./types/input"; import * as outputs from "./types/output"; /** * The zia.FileTypeControlRule resource manages file type control rules in the Zscaler Internet Access (ZIA) cloud. * File type control rules allow you to block, caution, or allow file downloads and uploads based on file types, * protocols, URL categories, and other criteria. Predefined rules cannot be deleted. * * ## Example Usage * ### Basic File Type Control Rule * * ```typescript * import * as zia from "@bdzscaler/pulumi-zia"; * * const example = new zia.FileTypeControlRule("example", { * name: "Example File Type Rule", * order: 1, * description: "Managed by Pulumi", * state: "ENABLED", * filteringAction: "BLOCK", * fileTypes: ["EXE", "DLL"], * protocols: ["FTP_RULE", "HTTPS_RULE", "HTTP_PROXY"], * }); * ``` * * ## Import * * An existing file type control rule can be imported using its ID, e.g. * * ```sh * $ pulumi import zia:index:FileTypeControlRule example 12345 * ``` */ export declare class FileTypeControlRule extends pulumi.CustomResource { /** * Get an existing FileTypeControlRule 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 opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): FileTypeControlRule; /** * Returns true if the given object is an instance of FileTypeControlRule. 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 FileTypeControlRule; /** * Whether the rule applies to files with active content. */ readonly activeContent: pulumi.Output; /** * The browser end-user notification template ID. */ readonly browserEunTemplateId: pulumi.Output; /** * Whether to capture PCAP data for the rule. */ readonly capturePcap: pulumi.Output; /** * List of cloud applications to which the rule applies. */ readonly cloudApplications: pulumi.Output; /** * List of department IDs to which the rule applies. */ readonly departments: pulumi.Output; /** * Description of the file type control rule. */ readonly description: pulumi.Output; /** * List of device group IDs to which the rule applies. */ readonly deviceGroups: pulumi.Output; /** * List of device trust levels for the rule. */ readonly deviceTrustLevels: pulumi.Output; /** * List of device IDs to which the rule applies. */ readonly devices: pulumi.Output; /** * List of file types to which the rule applies (e.g., 'EXE', 'DLL'). */ readonly fileTypes: pulumi.Output; /** * The action taken when traffic matches the rule (e.g., 'BLOCK', 'CAUTION', 'ALLOW'). */ readonly filteringAction: pulumi.Output; /** * List of group IDs to which the rule applies. */ readonly groups: pulumi.Output; /** * List of label IDs associated with the rule. */ readonly labels: pulumi.Output; /** * List of location group IDs to which the rule applies. */ readonly locationGroups: pulumi.Output; /** * List of location IDs to which the rule applies. */ readonly locations: pulumi.Output; /** * Maximum file size in bytes for the rule to apply. */ readonly maxSize: pulumi.Output; /** * Minimum file size in bytes for the rule to apply. */ readonly minSize: pulumi.Output; /** * Name of the file type control rule. */ readonly name: pulumi.Output; /** * The type of file operation (e.g., 'DOWNLOAD', 'UPLOAD'). */ readonly operation: pulumi.Output; /** * The rule order of execution for the file type control rule. */ readonly order: pulumi.Output; /** * Whether the rule applies to password-protected files. */ readonly passwordProtected: pulumi.Output; /** * List of protocols to which the rule applies (e.g., 'FTP_RULE', 'HTTPS_RULE'). */ readonly protocols: pulumi.Output; /** * The admin rank of the rule. Default is 7. */ readonly rank: pulumi.Output; /** * The unique identifier for the file type control rule assigned by the ZIA cloud. */ readonly ruleId: pulumi.Output; /** * Size quota in KB beyond which the URL filtering rule is applied. */ readonly sizeQuota: pulumi.Output; /** * The rule state. Accepted values: 'ENABLED' or 'DISABLED'. */ readonly state: pulumi.Output; /** * Time quota in minutes after which the URL filtering rule is applied. */ readonly timeQuota: pulumi.Output; /** * List of time window IDs during which the rule is active. */ readonly timeWindows: pulumi.Output; /** * Whether the rule applies to unscannable files. */ readonly unscannable: pulumi.Output; /** * List of URL categories to which the rule applies. */ readonly urlCategories: pulumi.Output; /** * List of user IDs to which the rule applies. */ readonly users: pulumi.Output; /** * List of ZPA application segments for the rule. */ readonly zpaAppSegments: pulumi.Output; /** * Create a FileTypeControlRule 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: FileTypeControlRuleArgs, opts?: pulumi.CustomResourceOptions); } /** * The set of arguments for constructing a FileTypeControlRule resource. */ export interface FileTypeControlRuleArgs { /** * Whether the rule applies to files with active content. */ activeContent?: pulumi.Input; /** * The browser end-user notification template ID. */ browserEunTemplateId?: pulumi.Input; /** * Whether to capture PCAP data for the rule. */ capturePcap?: pulumi.Input; /** * List of cloud applications to which the rule applies. */ cloudApplications?: pulumi.Input[] | undefined>; /** * List of department IDs to which the rule applies. */ departments?: pulumi.Input[] | undefined>; /** * Description of the file type control rule. */ description?: pulumi.Input; /** * List of device group IDs to which the rule applies. */ deviceGroups?: pulumi.Input[] | undefined>; /** * List of device trust levels for the rule. */ deviceTrustLevels?: pulumi.Input[] | undefined>; /** * List of device IDs to which the rule applies. */ devices?: pulumi.Input[] | undefined>; /** * List of file types to which the rule applies (e.g., 'EXE', 'DLL'). */ fileTypes?: pulumi.Input[] | undefined>; /** * The action taken when traffic matches the rule (e.g., 'BLOCK', 'CAUTION', 'ALLOW'). */ filteringAction?: pulumi.Input; /** * List of group IDs to which the rule applies. */ groups?: pulumi.Input[] | undefined>; /** * List of label IDs associated with the rule. */ labels?: pulumi.Input[] | undefined>; /** * List of location group IDs to which the rule applies. */ locationGroups?: pulumi.Input[] | undefined>; /** * List of location IDs to which the rule applies. */ locations?: pulumi.Input[] | undefined>; /** * Maximum file size in bytes for the rule to apply. */ maxSize?: pulumi.Input; /** * Minimum file size in bytes for the rule to apply. */ minSize?: pulumi.Input; /** * Name of the file type control rule. */ name: pulumi.Input; /** * The type of file operation (e.g., 'DOWNLOAD', 'UPLOAD'). */ operation?: pulumi.Input; /** * The rule order of execution for the file type control rule. */ order: pulumi.Input; /** * Whether the rule applies to password-protected files. */ passwordProtected?: pulumi.Input; /** * List of protocols to which the rule applies (e.g., 'FTP_RULE', 'HTTPS_RULE'). */ protocols?: pulumi.Input[] | undefined>; /** * The admin rank of the rule. Default is 7. */ rank?: pulumi.Input; /** * Size quota in KB beyond which the URL filtering rule is applied. */ sizeQuota?: pulumi.Input; /** * The rule state. Accepted values: 'ENABLED' or 'DISABLED'. */ state?: pulumi.Input; /** * Time quota in minutes after which the URL filtering rule is applied. */ timeQuota?: pulumi.Input; /** * List of time window IDs during which the rule is active. */ timeWindows?: pulumi.Input[] | undefined>; /** * Whether the rule applies to unscannable files. */ unscannable?: pulumi.Input; /** * List of URL categories to which the rule applies. */ urlCategories?: pulumi.Input[] | undefined>; /** * List of user IDs to which the rule applies. */ users?: pulumi.Input[] | undefined>; /** * List of ZPA application segments for the rule. */ zpaAppSegments?: pulumi.Input[] | undefined>; } //# sourceMappingURL=fileTypeControlRule.d.ts.map