import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface PreventionPolicyMacConfig extends cdktf.TerraformMetaArguments { /** * Whether to enable the setting. Execution of a command shell was blocked and is indicative of the system hosting a Chopper web page. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/resources/prevention_policy_mac#chopper_webshell PreventionPolicyMac#chopper_webshell} */ readonly chopperWebshell?: boolean | cdktf.IResolvable; /** * Use cloud-based machine learning informed by global analysis of executables to detect and prevent adware and potentially unwanted programs (PUP) for your online hosts. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/resources/prevention_policy_mac#cloud_adware_and_pup PreventionPolicyMac#cloud_adware_and_pup} */ readonly cloudAdwareAndPup?: PreventionPolicyMacCloudAdwareAndPup; /** * Use cloud-based machine learning informed by global analysis of executables to detect and prevent known malware for your online hosts. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/resources/prevention_policy_mac#cloud_anti_malware PreventionPolicyMac#cloud_anti_malware} */ readonly cloudAntiMalware?: PreventionPolicyMacCloudAntiMalware; /** * Whether to enable the setting. Block processes matching hashes that you add to IOC Management with the action set to "Block" or "Block, hide detection". * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/resources/prevention_policy_mac#custom_blocking PreventionPolicyMac#custom_blocking} */ readonly customBlocking?: boolean | cdktf.IResolvable; /** * Description of the prevention policy. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/resources/prevention_policy_mac#description PreventionPolicyMac#description} */ readonly description?: string; /** * Whether to enable the setting. Use machine learning to analyze suspicious files when they're written to disk. To adjust detection sensitivity, change Anti-malware Detection levels in Sensor Machine Learning and Cloud Machine Learning. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/resources/prevention_policy_mac#detect_on_write PreventionPolicyMac#detect_on_write} */ readonly detectOnWrite?: boolean | cdktf.IResolvable; /** * Whether to enable the setting. A process with behaviors indicative of the Empyre Backdoor was terminated. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/resources/prevention_policy_mac#empyre_backdoor PreventionPolicyMac#empyre_backdoor} */ readonly empyreBackdoor?: boolean | cdktf.IResolvable; /** * Enable the prevention policy. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/resources/prevention_policy_mac#enabled PreventionPolicyMac#enabled} */ readonly enabled?: boolean | cdktf.IResolvable; /** * Whether to enable the setting. An attempt to dump a user’s hashed password was blocked. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/resources/prevention_policy_mac#hash_collector PreventionPolicyMac#hash_collector} */ readonly hashCollector?: boolean | cdktf.IResolvable; /** * Host Group ids to attach to the prevention policy. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/resources/prevention_policy_mac#host_groups PreventionPolicyMac#host_groups} */ readonly hostGroups: string[]; /** * Whether to enable the setting. Block processes that CrowdStrike Intelligence analysts classify as malicious. These are focused on static hash-based IOCs. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/resources/prevention_policy_mac#intelligence_sourced_threats PreventionPolicyMac#intelligence_sourced_threats} */ readonly intelligenceSourcedThreats?: boolean | cdktf.IResolvable; /** * IOA Rule Group to attach to the prevention policy. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/resources/prevention_policy_mac#ioa_rule_groups PreventionPolicyMac#ioa_rule_groups} */ readonly ioaRuleGroups: string[]; /** * Whether to enable the setting. An attempt to recover a plaintext password via the kcpassword file was blocked. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/resources/prevention_policy_mac#kc_password_decoded PreventionPolicyMac#kc_password_decoded} */ readonly kcPasswordDecoded?: boolean | cdktf.IResolvable; /** * Name of the prevention policy. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/resources/prevention_policy_mac#name PreventionPolicyMac#name} */ readonly name: string; /** * Whether to enable the setting. Show a pop-up notification to the end user when the Falcon sensor blocks, kills, or quarantines. See these messages in Console.app by searching for Process: Falcon Notifications. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/resources/prevention_policy_mac#notify_end_users PreventionPolicyMac#notify_end_users} */ readonly notifyEndUsers?: boolean | cdktf.IResolvable; /** * Whether to enable the setting. Block processes that CrowdStrike analysts classify as suspicious. These are focused on dynamic IOAs, such as malware, exploits and other threats. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/resources/prevention_policy_mac#prevent_suspicious_processes PreventionPolicyMac#prevent_suspicious_processes} */ readonly preventSuspiciousProcesses?: boolean | cdktf.IResolvable; /** * Whether to enable the setting. Quarantine executable files after they’re prevented by NGAV. When this is enabled, we recommend setting anti-malware prevention levels to Moderate or higher and not using other antivirus solutions. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/resources/prevention_policy_mac#quarantine PreventionPolicyMac#quarantine} */ readonly quarantine?: boolean | cdktf.IResolvable; /** * Whether to enable the setting. Use machine learning to quarantine suspicious files when they're written to disk. To adjust quarantine sensitivity, change Anti-malware Prevention levels in Sensor Machine Learning and Cloud Machine Learning. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/resources/prevention_policy_mac#quarantine_on_write PreventionPolicyMac#quarantine_on_write} */ readonly quarantineOnWrite?: boolean | cdktf.IResolvable; /** * Whether to enable the setting. Provides visibility into suspicious scripts, including shell and other scripting languages. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/resources/prevention_policy_mac#script_based_execution_monitoring PreventionPolicyMac#script_based_execution_monitoring} */ readonly scriptBasedExecutionMonitoring?: boolean | cdktf.IResolvable; /** * For offline and online hosts, use sensor-based machine learning to identify and analyze unknown executables as they run to detect and prevent adware and potentially unwanted programs (PUP). * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/resources/prevention_policy_mac#sensor_adware_and_pup PreventionPolicyMac#sensor_adware_and_pup} */ readonly sensorAdwareAndPup?: PreventionPolicyMacSensorAdwareAndPup; /** * For offline and online hosts, use sensor-based machine learning to identify and analyze unknown executables as they run to detect and prevent malware. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/resources/prevention_policy_mac#sensor_anti_malware PreventionPolicyMac#sensor_anti_malware} */ readonly sensorAntiMalware?: PreventionPolicyMacSensorAntiMalware; /** * Whether to enable the setting. Blocks attempts to tamper with the sensor. If disabled, the sensor still creates detections for tampering attempts but doesn’t block them. Disabling not recommended. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/resources/prevention_policy_mac#sensor_tampering_protection PreventionPolicyMac#sensor_tampering_protection} */ readonly sensorTamperingProtection?: boolean | cdktf.IResolvable; /** * Whether to enable the setting. Upload all unknown detection-related executables for advanced analysis in the cloud. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/resources/prevention_policy_mac#upload_unknown_detection_related_executables PreventionPolicyMac#upload_unknown_detection_related_executables} */ readonly uploadUnknownDetectionRelatedExecutables?: boolean | cdktf.IResolvable; /** * Whether to enable the setting. Upload all unknown executables for advanced analysis in the cloud. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/resources/prevention_policy_mac#upload_unknown_executables PreventionPolicyMac#upload_unknown_executables} */ readonly uploadUnknownExecutables?: boolean | cdktf.IResolvable; /** * Whether to enable the setting. The execution of an XPCOM shell was blocked. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/resources/prevention_policy_mac#xpcom_shell PreventionPolicyMac#xpcom_shell} */ readonly xpcomShell?: boolean | cdktf.IResolvable; } export interface PreventionPolicyMacCloudAdwareAndPup { /** * Machine learning level for detection. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/resources/prevention_policy_mac#detection PreventionPolicyMac#detection} */ readonly detection: string; /** * Machine learning level for prevention. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/resources/prevention_policy_mac#prevention PreventionPolicyMac#prevention} */ readonly prevention: string; } export declare function preventionPolicyMacCloudAdwareAndPupToTerraform(struct?: PreventionPolicyMacCloudAdwareAndPup | cdktf.IResolvable): any; export declare function preventionPolicyMacCloudAdwareAndPupToHclTerraform(struct?: PreventionPolicyMacCloudAdwareAndPup | cdktf.IResolvable): any; export declare class PreventionPolicyMacCloudAdwareAndPupOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): PreventionPolicyMacCloudAdwareAndPup | cdktf.IResolvable | undefined; set internalValue(value: PreventionPolicyMacCloudAdwareAndPup | cdktf.IResolvable | undefined); private _detection?; get detection(): string; set detection(value: string); get detectionInput(): string; private _prevention?; get prevention(): string; set prevention(value: string); get preventionInput(): string; } export interface PreventionPolicyMacCloudAntiMalware { /** * Machine learning level for detection. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/resources/prevention_policy_mac#detection PreventionPolicyMac#detection} */ readonly detection: string; /** * Machine learning level for prevention. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/resources/prevention_policy_mac#prevention PreventionPolicyMac#prevention} */ readonly prevention: string; } export declare function preventionPolicyMacCloudAntiMalwareToTerraform(struct?: PreventionPolicyMacCloudAntiMalware | cdktf.IResolvable): any; export declare function preventionPolicyMacCloudAntiMalwareToHclTerraform(struct?: PreventionPolicyMacCloudAntiMalware | cdktf.IResolvable): any; export declare class PreventionPolicyMacCloudAntiMalwareOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): PreventionPolicyMacCloudAntiMalware | cdktf.IResolvable | undefined; set internalValue(value: PreventionPolicyMacCloudAntiMalware | cdktf.IResolvable | undefined); private _detection?; get detection(): string; set detection(value: string); get detectionInput(): string; private _prevention?; get prevention(): string; set prevention(value: string); get preventionInput(): string; } export interface PreventionPolicyMacSensorAdwareAndPup { /** * Machine learning level for detection. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/resources/prevention_policy_mac#detection PreventionPolicyMac#detection} */ readonly detection: string; /** * Machine learning level for prevention. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/resources/prevention_policy_mac#prevention PreventionPolicyMac#prevention} */ readonly prevention: string; } export declare function preventionPolicyMacSensorAdwareAndPupToTerraform(struct?: PreventionPolicyMacSensorAdwareAndPup | cdktf.IResolvable): any; export declare function preventionPolicyMacSensorAdwareAndPupToHclTerraform(struct?: PreventionPolicyMacSensorAdwareAndPup | cdktf.IResolvable): any; export declare class PreventionPolicyMacSensorAdwareAndPupOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): PreventionPolicyMacSensorAdwareAndPup | cdktf.IResolvable | undefined; set internalValue(value: PreventionPolicyMacSensorAdwareAndPup | cdktf.IResolvable | undefined); private _detection?; get detection(): string; set detection(value: string); get detectionInput(): string; private _prevention?; get prevention(): string; set prevention(value: string); get preventionInput(): string; } export interface PreventionPolicyMacSensorAntiMalware { /** * Machine learning level for detection. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/resources/prevention_policy_mac#detection PreventionPolicyMac#detection} */ readonly detection: string; /** * Machine learning level for prevention. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/resources/prevention_policy_mac#prevention PreventionPolicyMac#prevention} */ readonly prevention: string; } export declare function preventionPolicyMacSensorAntiMalwareToTerraform(struct?: PreventionPolicyMacSensorAntiMalware | cdktf.IResolvable): any; export declare function preventionPolicyMacSensorAntiMalwareToHclTerraform(struct?: PreventionPolicyMacSensorAntiMalware | cdktf.IResolvable): any; export declare class PreventionPolicyMacSensorAntiMalwareOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): PreventionPolicyMacSensorAntiMalware | cdktf.IResolvable | undefined; set internalValue(value: PreventionPolicyMacSensorAntiMalware | cdktf.IResolvable | undefined); private _detection?; get detection(): string; set detection(value: string); get detectionInput(): string; private _prevention?; get prevention(): string; set prevention(value: string); get preventionInput(): string; } /** * Represents a {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/resources/prevention_policy_mac crowdstrike_prevention_policy_mac} */ export declare class PreventionPolicyMac extends cdktf.TerraformResource { static readonly tfResourceType = "crowdstrike_prevention_policy_mac"; /** * Generates CDKTF code for importing a PreventionPolicyMac resource upon running "cdktf plan " * @param scope The scope in which to define this construct * @param importToId The construct id used in the generated config for the PreventionPolicyMac to import * @param importFromId The id of the existing PreventionPolicyMac that should be imported. Refer to the {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/resources/prevention_policy_mac#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the PreventionPolicyMac to import is found */ static generateConfigForImport(scope: Construct, importToId: string, importFromId: string, provider?: cdktf.TerraformProvider): any; /** * Create a new {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/resources/prevention_policy_mac crowdstrike_prevention_policy_mac} Resource * * @param scope The scope in which to define this construct * @param id The scoped construct ID. Must be unique amongst siblings in the same scope * @param options PreventionPolicyMacConfig */ constructor(scope: Construct, id: string, config: PreventionPolicyMacConfig); private _chopperWebshell?; get chopperWebshell(): boolean | cdktf.IResolvable; set chopperWebshell(value: boolean | cdktf.IResolvable); resetChopperWebshell(): void; get chopperWebshellInput(): any; private _cloudAdwareAndPup; get cloudAdwareAndPup(): PreventionPolicyMacCloudAdwareAndPupOutputReference; putCloudAdwareAndPup(value: PreventionPolicyMacCloudAdwareAndPup): void; resetCloudAdwareAndPup(): void; get cloudAdwareAndPupInput(): any; private _cloudAntiMalware; get cloudAntiMalware(): PreventionPolicyMacCloudAntiMalwareOutputReference; putCloudAntiMalware(value: PreventionPolicyMacCloudAntiMalware): void; resetCloudAntiMalware(): void; get cloudAntiMalwareInput(): any; private _customBlocking?; get customBlocking(): boolean | cdktf.IResolvable; set customBlocking(value: boolean | cdktf.IResolvable); resetCustomBlocking(): void; get customBlockingInput(): any; private _description?; get description(): string; set description(value: string); resetDescription(): void; get descriptionInput(): string; private _detectOnWrite?; get detectOnWrite(): boolean | cdktf.IResolvable; set detectOnWrite(value: boolean | cdktf.IResolvable); resetDetectOnWrite(): void; get detectOnWriteInput(): any; private _empyreBackdoor?; get empyreBackdoor(): boolean | cdktf.IResolvable; set empyreBackdoor(value: boolean | cdktf.IResolvable); resetEmpyreBackdoor(): void; get empyreBackdoorInput(): any; private _enabled?; get enabled(): boolean | cdktf.IResolvable; set enabled(value: boolean | cdktf.IResolvable); resetEnabled(): void; get enabledInput(): any; private _hashCollector?; get hashCollector(): boolean | cdktf.IResolvable; set hashCollector(value: boolean | cdktf.IResolvable); resetHashCollector(): void; get hashCollectorInput(): any; private _hostGroups?; get hostGroups(): string[]; set hostGroups(value: string[]); get hostGroupsInput(): string[]; get id(): any; private _intelligenceSourcedThreats?; get intelligenceSourcedThreats(): boolean | cdktf.IResolvable; set intelligenceSourcedThreats(value: boolean | cdktf.IResolvable); resetIntelligenceSourcedThreats(): void; get intelligenceSourcedThreatsInput(): any; private _ioaRuleGroups?; get ioaRuleGroups(): string[]; set ioaRuleGroups(value: string[]); get ioaRuleGroupsInput(): string[]; private _kcPasswordDecoded?; get kcPasswordDecoded(): boolean | cdktf.IResolvable; set kcPasswordDecoded(value: boolean | cdktf.IResolvable); resetKcPasswordDecoded(): void; get kcPasswordDecodedInput(): any; get lastUpdated(): any; private _name?; get name(): string; set name(value: string); get nameInput(): string; private _notifyEndUsers?; get notifyEndUsers(): boolean | cdktf.IResolvable; set notifyEndUsers(value: boolean | cdktf.IResolvable); resetNotifyEndUsers(): void; get notifyEndUsersInput(): any; private _preventSuspiciousProcesses?; get preventSuspiciousProcesses(): boolean | cdktf.IResolvable; set preventSuspiciousProcesses(value: boolean | cdktf.IResolvable); resetPreventSuspiciousProcesses(): void; get preventSuspiciousProcessesInput(): any; private _quarantine?; get quarantine(): boolean | cdktf.IResolvable; set quarantine(value: boolean | cdktf.IResolvable); resetQuarantine(): void; get quarantineInput(): any; private _quarantineOnWrite?; get quarantineOnWrite(): boolean | cdktf.IResolvable; set quarantineOnWrite(value: boolean | cdktf.IResolvable); resetQuarantineOnWrite(): void; get quarantineOnWriteInput(): any; private _scriptBasedExecutionMonitoring?; get scriptBasedExecutionMonitoring(): boolean | cdktf.IResolvable; set scriptBasedExecutionMonitoring(value: boolean | cdktf.IResolvable); resetScriptBasedExecutionMonitoring(): void; get scriptBasedExecutionMonitoringInput(): any; private _sensorAdwareAndPup; get sensorAdwareAndPup(): PreventionPolicyMacSensorAdwareAndPupOutputReference; putSensorAdwareAndPup(value: PreventionPolicyMacSensorAdwareAndPup): void; resetSensorAdwareAndPup(): void; get sensorAdwareAndPupInput(): any; private _sensorAntiMalware; get sensorAntiMalware(): PreventionPolicyMacSensorAntiMalwareOutputReference; putSensorAntiMalware(value: PreventionPolicyMacSensorAntiMalware): void; resetSensorAntiMalware(): void; get sensorAntiMalwareInput(): any; private _sensorTamperingProtection?; get sensorTamperingProtection(): boolean | cdktf.IResolvable; set sensorTamperingProtection(value: boolean | cdktf.IResolvable); resetSensorTamperingProtection(): void; get sensorTamperingProtectionInput(): any; private _uploadUnknownDetectionRelatedExecutables?; get uploadUnknownDetectionRelatedExecutables(): boolean | cdktf.IResolvable; set uploadUnknownDetectionRelatedExecutables(value: boolean | cdktf.IResolvable); resetUploadUnknownDetectionRelatedExecutables(): void; get uploadUnknownDetectionRelatedExecutablesInput(): any; private _uploadUnknownExecutables?; get uploadUnknownExecutables(): boolean | cdktf.IResolvable; set uploadUnknownExecutables(value: boolean | cdktf.IResolvable); resetUploadUnknownExecutables(): void; get uploadUnknownExecutablesInput(): any; private _xpcomShell?; get xpcomShell(): boolean | cdktf.IResolvable; set xpcomShell(value: boolean | cdktf.IResolvable); resetXpcomShell(): void; get xpcomShellInput(): any; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }