@crowdstrike/pulumi
Version:
A Pulumi package for creating and managing CrowdStrike resources. Based on terraform-provider-crowdstrike: version v0.0.4
294 lines • 19.1 kB
JavaScript
;
// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
Object.defineProperty(exports, "__esModule", { value: true });
exports.PreventionPolicyWindows = void 0;
const pulumi = require("@pulumi/pulumi");
const utilities = require("./utilities");
/**
* This resource allows you to manage prevention policies for Windows hosts. Prevention policies allow you to manage what activity will trigger detections and preventions on your hosts.
*
* ## API Scopes
*
* The following API scopes are required:
*
* - Prevention policies | Read & Write
*
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as crowdstrike from "@crowdstrike/pulumi";
*
* const example = new crowdstrike.PreventionPolicyWindows("example", {
* enabled: true,
* description: "Made with Pulumi",
* hostGroups: [],
* ioaRuleGroups: [],
* adwareAndPup: {
* detection: "MODERATE",
* prevention: "CAUTIOUS",
* },
* cloudAntiMalwareMicrosoftOfficeFiles: {
* detection: "MODERATE",
* prevention: "DISABLED",
* },
* cloudAntiMalware: {
* detection: "MODERATE",
* prevention: "CAUTIOUS",
* },
* cloudAntiMalwareUserInitiated: {
* detection: "MODERATE",
* prevention: "CAUTIOUS",
* },
* sensorAntiMalware: {
* detection: "MODERATE",
* prevention: "CAUTIOUS",
* },
* sensorAntiMalwareUserInitiated: {
* detection: "MODERATE",
* prevention: "CAUTIOUS",
* },
* extendedUserModeData: {
* detection: "MODERATE",
* },
* usbInsertionTriggeredScan: true,
* applicationExploitationActivity: true,
* additionalUserModeData: true,
* notifyEndUsers: true,
* advancedRemediation: true,
* backupDeletion: true,
* biosDeepVisibility: true,
* chopperWebshell: true,
* codeInjection: true,
* credentialDumping: true,
* cryptowall: true,
* customBlocking: true,
* detectOnWrite: true,
* driveByDownload: true,
* driverLoadPrevention: true,
* interpreterOnly: true,
* engineFullVisibility: true,
* enhancedExploitationVisibility: true,
* enhancedDllLoadVisibility: true,
* enhancedMlForLargerFiles: true,
* fileEncryption: true,
* fileSystemAccess: true,
* forceAslr: true,
* forceDep: true,
* heapSprayPreallocation: true,
* nullPageAllocation: true,
* sehOverwriteProtection: true,
* hardwareEnhancedExploitDetection: true,
* httpDetections: true,
* redactHttpDetectionDetails: true,
* intelligenceSourcedThreats: true,
* javascriptViaRundll32: true,
* locky: true,
* memoryScanning: true,
* memoryScanningScanWithCpu: true,
* microsoftOfficeFileSuspiciousMacroRemoval: true,
* onWriteScriptFileVisibility: true,
* preventSuspiciousProcesses: true,
* quarantineAndSecurityCenterRegistration: true,
* quarantineOnRemovableMedia: true,
* quarantineOnWrite: true,
* scriptBasedExecutionMonitoring: true,
* sensorTamperingProtection: true,
* suspiciousRegistryOperations: true,
* suspiciousScriptsAndCommands: true,
* uploadUnknownExecutables: true,
* uploadUnknownDetectionRelatedExecutables: true,
* volumeShadowCopyAudit: true,
* volumeShadowCopyProtect: true,
* vulnerableDriverProtection: true,
* windowsLogonBypassStickyKeys: true,
* fileSystemContainment: true,
* });
* export const preventionPolicyWindows = example;
* ```
*
* ## Import
*
* prevention policy can be imported by specifying the policy id.
*
* ```sh
* $ pulumi import crowdstrike:index/preventionPolicyWindows:PreventionPolicyWindows example 7fb858a949034a0cbca175f660f1e769
* ```
*/
class PreventionPolicyWindows extends pulumi.CustomResource {
/**
* Get an existing PreventionPolicyWindows 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, id, state, opts) {
return new PreventionPolicyWindows(name, state, Object.assign(Object.assign({}, opts), { id: id }));
}
/**
* Returns true if the given object is an instance of PreventionPolicyWindows. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
static isInstance(obj) {
if (obj === undefined || obj === null) {
return false;
}
return obj['__pulumiType'] === PreventionPolicyWindows.__pulumiType;
}
constructor(name, argsOrState, opts) {
let resourceInputs = {};
opts = opts || {};
if (opts.id) {
const state = argsOrState;
resourceInputs["additionalUserModeData"] = state ? state.additionalUserModeData : undefined;
resourceInputs["advancedRemediation"] = state ? state.advancedRemediation : undefined;
resourceInputs["adwareAndPup"] = state ? state.adwareAndPup : undefined;
resourceInputs["applicationExploitationActivity"] = state ? state.applicationExploitationActivity : undefined;
resourceInputs["backupDeletion"] = state ? state.backupDeletion : undefined;
resourceInputs["biosDeepVisibility"] = state ? state.biosDeepVisibility : undefined;
resourceInputs["chopperWebshell"] = state ? state.chopperWebshell : undefined;
resourceInputs["cloudAntiMalware"] = state ? state.cloudAntiMalware : undefined;
resourceInputs["cloudAntiMalwareMicrosoftOfficeFiles"] = state ? state.cloudAntiMalwareMicrosoftOfficeFiles : undefined;
resourceInputs["cloudAntiMalwareUserInitiated"] = state ? state.cloudAntiMalwareUserInitiated : undefined;
resourceInputs["codeInjection"] = state ? state.codeInjection : undefined;
resourceInputs["credentialDumping"] = state ? state.credentialDumping : undefined;
resourceInputs["cryptowall"] = state ? state.cryptowall : undefined;
resourceInputs["customBlocking"] = state ? state.customBlocking : undefined;
resourceInputs["description"] = state ? state.description : undefined;
resourceInputs["detectOnWrite"] = state ? state.detectOnWrite : undefined;
resourceInputs["driveByDownload"] = state ? state.driveByDownload : undefined;
resourceInputs["driverLoadPrevention"] = state ? state.driverLoadPrevention : undefined;
resourceInputs["enabled"] = state ? state.enabled : undefined;
resourceInputs["engineFullVisibility"] = state ? state.engineFullVisibility : undefined;
resourceInputs["enhancedDllLoadVisibility"] = state ? state.enhancedDllLoadVisibility : undefined;
resourceInputs["enhancedExploitationVisibility"] = state ? state.enhancedExploitationVisibility : undefined;
resourceInputs["enhancedMlForLargerFiles"] = state ? state.enhancedMlForLargerFiles : undefined;
resourceInputs["extendedUserModeData"] = state ? state.extendedUserModeData : undefined;
resourceInputs["fileEncryption"] = state ? state.fileEncryption : undefined;
resourceInputs["fileSystemAccess"] = state ? state.fileSystemAccess : undefined;
resourceInputs["fileSystemContainment"] = state ? state.fileSystemContainment : undefined;
resourceInputs["forceAslr"] = state ? state.forceAslr : undefined;
resourceInputs["forceDep"] = state ? state.forceDep : undefined;
resourceInputs["hardwareEnhancedExploitDetection"] = state ? state.hardwareEnhancedExploitDetection : undefined;
resourceInputs["heapSprayPreallocation"] = state ? state.heapSprayPreallocation : undefined;
resourceInputs["hostGroups"] = state ? state.hostGroups : undefined;
resourceInputs["httpDetections"] = state ? state.httpDetections : undefined;
resourceInputs["intelligenceSourcedThreats"] = state ? state.intelligenceSourcedThreats : undefined;
resourceInputs["interpreterOnly"] = state ? state.interpreterOnly : undefined;
resourceInputs["ioaRuleGroups"] = state ? state.ioaRuleGroups : undefined;
resourceInputs["javascriptViaRundll32"] = state ? state.javascriptViaRundll32 : undefined;
resourceInputs["lastUpdated"] = state ? state.lastUpdated : undefined;
resourceInputs["locky"] = state ? state.locky : undefined;
resourceInputs["memoryScanning"] = state ? state.memoryScanning : undefined;
resourceInputs["memoryScanningScanWithCpu"] = state ? state.memoryScanningScanWithCpu : undefined;
resourceInputs["microsoftOfficeFileSuspiciousMacroRemoval"] = state ? state.microsoftOfficeFileSuspiciousMacroRemoval : undefined;
resourceInputs["name"] = state ? state.name : undefined;
resourceInputs["notifyEndUsers"] = state ? state.notifyEndUsers : undefined;
resourceInputs["nullPageAllocation"] = state ? state.nullPageAllocation : undefined;
resourceInputs["onWriteScriptFileVisibility"] = state ? state.onWriteScriptFileVisibility : undefined;
resourceInputs["preventSuspiciousProcesses"] = state ? state.preventSuspiciousProcesses : undefined;
resourceInputs["quarantineAndSecurityCenterRegistration"] = state ? state.quarantineAndSecurityCenterRegistration : undefined;
resourceInputs["quarantineOnRemovableMedia"] = state ? state.quarantineOnRemovableMedia : undefined;
resourceInputs["quarantineOnWrite"] = state ? state.quarantineOnWrite : undefined;
resourceInputs["redactHttpDetectionDetails"] = state ? state.redactHttpDetectionDetails : undefined;
resourceInputs["scriptBasedExecutionMonitoring"] = state ? state.scriptBasedExecutionMonitoring : undefined;
resourceInputs["sehOverwriteProtection"] = state ? state.sehOverwriteProtection : undefined;
resourceInputs["sensorAntiMalware"] = state ? state.sensorAntiMalware : undefined;
resourceInputs["sensorAntiMalwareUserInitiated"] = state ? state.sensorAntiMalwareUserInitiated : undefined;
resourceInputs["sensorTamperingProtection"] = state ? state.sensorTamperingProtection : undefined;
resourceInputs["suspiciousRegistryOperations"] = state ? state.suspiciousRegistryOperations : undefined;
resourceInputs["suspiciousScriptsAndCommands"] = state ? state.suspiciousScriptsAndCommands : undefined;
resourceInputs["uploadUnknownDetectionRelatedExecutables"] = state ? state.uploadUnknownDetectionRelatedExecutables : undefined;
resourceInputs["uploadUnknownExecutables"] = state ? state.uploadUnknownExecutables : undefined;
resourceInputs["usbInsertionTriggeredScan"] = state ? state.usbInsertionTriggeredScan : undefined;
resourceInputs["volumeShadowCopyAudit"] = state ? state.volumeShadowCopyAudit : undefined;
resourceInputs["volumeShadowCopyProtect"] = state ? state.volumeShadowCopyProtect : undefined;
resourceInputs["vulnerableDriverProtection"] = state ? state.vulnerableDriverProtection : undefined;
resourceInputs["windowsLogonBypassStickyKeys"] = state ? state.windowsLogonBypassStickyKeys : undefined;
}
else {
const args = argsOrState;
if ((!args || args.hostGroups === undefined) && !opts.urn) {
throw new Error("Missing required property 'hostGroups'");
}
if ((!args || args.ioaRuleGroups === undefined) && !opts.urn) {
throw new Error("Missing required property 'ioaRuleGroups'");
}
resourceInputs["additionalUserModeData"] = args ? args.additionalUserModeData : undefined;
resourceInputs["advancedRemediation"] = args ? args.advancedRemediation : undefined;
resourceInputs["adwareAndPup"] = args ? args.adwareAndPup : undefined;
resourceInputs["applicationExploitationActivity"] = args ? args.applicationExploitationActivity : undefined;
resourceInputs["backupDeletion"] = args ? args.backupDeletion : undefined;
resourceInputs["biosDeepVisibility"] = args ? args.biosDeepVisibility : undefined;
resourceInputs["chopperWebshell"] = args ? args.chopperWebshell : undefined;
resourceInputs["cloudAntiMalware"] = args ? args.cloudAntiMalware : undefined;
resourceInputs["cloudAntiMalwareMicrosoftOfficeFiles"] = args ? args.cloudAntiMalwareMicrosoftOfficeFiles : undefined;
resourceInputs["cloudAntiMalwareUserInitiated"] = args ? args.cloudAntiMalwareUserInitiated : undefined;
resourceInputs["codeInjection"] = args ? args.codeInjection : undefined;
resourceInputs["credentialDumping"] = args ? args.credentialDumping : undefined;
resourceInputs["cryptowall"] = args ? args.cryptowall : undefined;
resourceInputs["customBlocking"] = args ? args.customBlocking : undefined;
resourceInputs["description"] = args ? args.description : undefined;
resourceInputs["detectOnWrite"] = args ? args.detectOnWrite : undefined;
resourceInputs["driveByDownload"] = args ? args.driveByDownload : undefined;
resourceInputs["driverLoadPrevention"] = args ? args.driverLoadPrevention : undefined;
resourceInputs["enabled"] = args ? args.enabled : undefined;
resourceInputs["engineFullVisibility"] = args ? args.engineFullVisibility : undefined;
resourceInputs["enhancedDllLoadVisibility"] = args ? args.enhancedDllLoadVisibility : undefined;
resourceInputs["enhancedExploitationVisibility"] = args ? args.enhancedExploitationVisibility : undefined;
resourceInputs["enhancedMlForLargerFiles"] = args ? args.enhancedMlForLargerFiles : undefined;
resourceInputs["extendedUserModeData"] = args ? args.extendedUserModeData : undefined;
resourceInputs["fileEncryption"] = args ? args.fileEncryption : undefined;
resourceInputs["fileSystemAccess"] = args ? args.fileSystemAccess : undefined;
resourceInputs["fileSystemContainment"] = args ? args.fileSystemContainment : undefined;
resourceInputs["forceAslr"] = args ? args.forceAslr : undefined;
resourceInputs["forceDep"] = args ? args.forceDep : undefined;
resourceInputs["hardwareEnhancedExploitDetection"] = args ? args.hardwareEnhancedExploitDetection : undefined;
resourceInputs["heapSprayPreallocation"] = args ? args.heapSprayPreallocation : undefined;
resourceInputs["hostGroups"] = args ? args.hostGroups : undefined;
resourceInputs["httpDetections"] = args ? args.httpDetections : undefined;
resourceInputs["intelligenceSourcedThreats"] = args ? args.intelligenceSourcedThreats : undefined;
resourceInputs["interpreterOnly"] = args ? args.interpreterOnly : undefined;
resourceInputs["ioaRuleGroups"] = args ? args.ioaRuleGroups : undefined;
resourceInputs["javascriptViaRundll32"] = args ? args.javascriptViaRundll32 : undefined;
resourceInputs["locky"] = args ? args.locky : undefined;
resourceInputs["memoryScanning"] = args ? args.memoryScanning : undefined;
resourceInputs["memoryScanningScanWithCpu"] = args ? args.memoryScanningScanWithCpu : undefined;
resourceInputs["microsoftOfficeFileSuspiciousMacroRemoval"] = args ? args.microsoftOfficeFileSuspiciousMacroRemoval : undefined;
resourceInputs["name"] = args ? args.name : undefined;
resourceInputs["notifyEndUsers"] = args ? args.notifyEndUsers : undefined;
resourceInputs["nullPageAllocation"] = args ? args.nullPageAllocation : undefined;
resourceInputs["onWriteScriptFileVisibility"] = args ? args.onWriteScriptFileVisibility : undefined;
resourceInputs["preventSuspiciousProcesses"] = args ? args.preventSuspiciousProcesses : undefined;
resourceInputs["quarantineAndSecurityCenterRegistration"] = args ? args.quarantineAndSecurityCenterRegistration : undefined;
resourceInputs["quarantineOnRemovableMedia"] = args ? args.quarantineOnRemovableMedia : undefined;
resourceInputs["quarantineOnWrite"] = args ? args.quarantineOnWrite : undefined;
resourceInputs["redactHttpDetectionDetails"] = args ? args.redactHttpDetectionDetails : undefined;
resourceInputs["scriptBasedExecutionMonitoring"] = args ? args.scriptBasedExecutionMonitoring : undefined;
resourceInputs["sehOverwriteProtection"] = args ? args.sehOverwriteProtection : undefined;
resourceInputs["sensorAntiMalware"] = args ? args.sensorAntiMalware : undefined;
resourceInputs["sensorAntiMalwareUserInitiated"] = args ? args.sensorAntiMalwareUserInitiated : undefined;
resourceInputs["sensorTamperingProtection"] = args ? args.sensorTamperingProtection : undefined;
resourceInputs["suspiciousRegistryOperations"] = args ? args.suspiciousRegistryOperations : undefined;
resourceInputs["suspiciousScriptsAndCommands"] = args ? args.suspiciousScriptsAndCommands : undefined;
resourceInputs["uploadUnknownDetectionRelatedExecutables"] = args ? args.uploadUnknownDetectionRelatedExecutables : undefined;
resourceInputs["uploadUnknownExecutables"] = args ? args.uploadUnknownExecutables : undefined;
resourceInputs["usbInsertionTriggeredScan"] = args ? args.usbInsertionTriggeredScan : undefined;
resourceInputs["volumeShadowCopyAudit"] = args ? args.volumeShadowCopyAudit : undefined;
resourceInputs["volumeShadowCopyProtect"] = args ? args.volumeShadowCopyProtect : undefined;
resourceInputs["vulnerableDriverProtection"] = args ? args.vulnerableDriverProtection : undefined;
resourceInputs["windowsLogonBypassStickyKeys"] = args ? args.windowsLogonBypassStickyKeys : undefined;
resourceInputs["lastUpdated"] = undefined /*out*/;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
super(PreventionPolicyWindows.__pulumiType, name, resourceInputs, opts);
}
}
exports.PreventionPolicyWindows = PreventionPolicyWindows;
/** @internal */
PreventionPolicyWindows.__pulumiType = 'crowdstrike:index/preventionPolicyWindows:PreventionPolicyWindows';
//# sourceMappingURL=preventionPolicyWindows.js.map