UNPKG

@gtheocrwd/pulumi-crowdstrike

Version:

A Pulumi package for creating and managing Crowdstrike resources. Based on terraform-provider-crowdstrike: version v0.0.5

142 lines 7.65 kB
"use strict"; // *** 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.PreventionPolicyLinux = void 0; const pulumi = require("@pulumi/pulumi"); const utilities = require("./utilities"); /** * This resource allows you to manage CrowdStrike Falcon prevention policies for Linux 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 "@gtheocrwd/pulumi-crowdstrike"; * * const example = new crowdstrike.PreventionPolicyLinux("example", { * enabled: true, * description: "Made with Pulumi", * hostGroups: ["d6e3c1e1b3d0467da0fowc96a5e6ecb5"], * ioaRuleGroups: ["ed334b3243bc4b6bb8e7d40a2ecd86fa"], * cloudAntiMalware: { * detection: "MODERATE", * prevention: "CAUTIOUS", * }, * sensorAntiMalware: { * detection: "MODERATE", * prevention: "CAUTIOUS", * }, * quarantine: true, * customBlocking: true, * preventSuspiciousProcesses: true, * scriptBasedExecutionMonitoring: true, * uploadUnknownExecutables: true, * uploadUnknownDetectionRelatedExecutables: true, * driftPrevention: true, * emailProtocolVisibility: true, * filesystemVisibility: true, * ftpVisibility: true, * httpVisibility: true, * networkVisibility: true, * tlsVisibility: true, * }); * export const preventionPolicyLinux = example; * ``` * * ## Import * * prevention policy can be imported by specifying the policy id. * * ```sh * $ pulumi import crowdstrike:index/preventionPolicyLinux:PreventionPolicyLinux example 7fb858a949034a0cbca175f660f1e769 * ``` */ class PreventionPolicyLinux extends pulumi.CustomResource { /** * Get an existing PreventionPolicyLinux 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 PreventionPolicyLinux(name, state, Object.assign(Object.assign({}, opts), { id: id })); } /** * Returns true if the given object is an instance of PreventionPolicyLinux. 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'] === PreventionPolicyLinux.__pulumiType; } constructor(name, argsOrState, opts) { let resourceInputs = {}; opts = opts || {}; if (opts.id) { const state = argsOrState; resourceInputs["cloudAntiMalware"] = state ? state.cloudAntiMalware : undefined; resourceInputs["customBlocking"] = state ? state.customBlocking : undefined; resourceInputs["description"] = state ? state.description : undefined; resourceInputs["driftPrevention"] = state ? state.driftPrevention : undefined; resourceInputs["emailProtocolVisibility"] = state ? state.emailProtocolVisibility : undefined; resourceInputs["enabled"] = state ? state.enabled : undefined; resourceInputs["filesystemVisibility"] = state ? state.filesystemVisibility : undefined; resourceInputs["ftpVisibility"] = state ? state.ftpVisibility : undefined; resourceInputs["hostGroups"] = state ? state.hostGroups : undefined; resourceInputs["httpVisibility"] = state ? state.httpVisibility : undefined; resourceInputs["ioaRuleGroups"] = state ? state.ioaRuleGroups : undefined; resourceInputs["lastUpdated"] = state ? state.lastUpdated : undefined; resourceInputs["name"] = state ? state.name : undefined; resourceInputs["networkVisibility"] = state ? state.networkVisibility : undefined; resourceInputs["preventSuspiciousProcesses"] = state ? state.preventSuspiciousProcesses : undefined; resourceInputs["quarantine"] = state ? state.quarantine : undefined; resourceInputs["scriptBasedExecutionMonitoring"] = state ? state.scriptBasedExecutionMonitoring : undefined; resourceInputs["sensorAntiMalware"] = state ? state.sensorAntiMalware : undefined; resourceInputs["tlsVisibility"] = state ? state.tlsVisibility : undefined; resourceInputs["uploadUnknownDetectionRelatedExecutables"] = state ? state.uploadUnknownDetectionRelatedExecutables : undefined; resourceInputs["uploadUnknownExecutables"] = state ? state.uploadUnknownExecutables : undefined; } else { const args = argsOrState; resourceInputs["cloudAntiMalware"] = args ? args.cloudAntiMalware : undefined; resourceInputs["customBlocking"] = args ? args.customBlocking : undefined; resourceInputs["description"] = args ? args.description : undefined; resourceInputs["driftPrevention"] = args ? args.driftPrevention : undefined; resourceInputs["emailProtocolVisibility"] = args ? args.emailProtocolVisibility : undefined; resourceInputs["enabled"] = args ? args.enabled : undefined; resourceInputs["filesystemVisibility"] = args ? args.filesystemVisibility : undefined; resourceInputs["ftpVisibility"] = args ? args.ftpVisibility : undefined; resourceInputs["hostGroups"] = args ? args.hostGroups : undefined; resourceInputs["httpVisibility"] = args ? args.httpVisibility : undefined; resourceInputs["ioaRuleGroups"] = args ? args.ioaRuleGroups : undefined; resourceInputs["name"] = args ? args.name : undefined; resourceInputs["networkVisibility"] = args ? args.networkVisibility : undefined; resourceInputs["preventSuspiciousProcesses"] = args ? args.preventSuspiciousProcesses : undefined; resourceInputs["quarantine"] = args ? args.quarantine : undefined; resourceInputs["scriptBasedExecutionMonitoring"] = args ? args.scriptBasedExecutionMonitoring : undefined; resourceInputs["sensorAntiMalware"] = args ? args.sensorAntiMalware : undefined; resourceInputs["tlsVisibility"] = args ? args.tlsVisibility : undefined; resourceInputs["uploadUnknownDetectionRelatedExecutables"] = args ? args.uploadUnknownDetectionRelatedExecutables : undefined; resourceInputs["uploadUnknownExecutables"] = args ? args.uploadUnknownExecutables : undefined; resourceInputs["lastUpdated"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); super(PreventionPolicyLinux.__pulumiType, name, resourceInputs, opts); } } exports.PreventionPolicyLinux = PreventionPolicyLinux; /** @internal */ PreventionPolicyLinux.__pulumiType = 'crowdstrike:index/preventionPolicyLinux:PreventionPolicyLinux'; //# sourceMappingURL=preventionPolicyLinux.js.map