All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.alicloud.threatdetection.Instance Maven / Gradle / Ivy

There is a newer version: 3.63.0-alpha.1727424957
Show newest version
// *** WARNING: this file was generated by pulumi-java-gen. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***

package com.pulumi.alicloud.threatdetection;

import com.pulumi.alicloud.Utilities;
import com.pulumi.alicloud.threatdetection.InstanceArgs;
import com.pulumi.alicloud.threatdetection.inputs.InstanceState;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Export;
import com.pulumi.core.annotations.ResourceType;
import com.pulumi.core.internal.Codegen;
import java.lang.Boolean;
import java.lang.Integer;
import java.lang.String;
import java.util.Optional;
import javax.annotation.Nullable;

/**
 * ## Import
 * 
 * Threat Detection Instance can be imported using the id, e.g.
 * 
 * ```sh
 * $ pulumi import alicloud:threatdetection/instance:Instance example <id>
 * ```
 * 
 */
@ResourceType(type="alicloud:threatdetection/instance:Instance")
public class Instance extends com.pulumi.resources.CustomResource {
    /**
     * Number of servers.
     * 
     */
    @Export(name="buyNumber", refs={String.class}, tree="[0]")
    private Output buyNumber;

    /**
     * @return Number of servers.
     * 
     */
    public Output> buyNumber() {
        return Codegen.optional(this.buyNumber);
    }
    /**
     * Container Image security scan. Interval type, value interval:[0,200000].
     * > **NOTE:**  The step size is 20, that is, only multiples of 20 can be filled in.
     * 
     * @deprecated
     * Field 'container_image_scan' has been deprecated from provider version 1.212.0. Container Image security scan. Interval type, value interval:[0,200000].> The step size is 20, that is, only multiples of 20 can be filled in.
     * 
     */
    @Deprecated /* Field 'container_image_scan' has been deprecated from provider version 1.212.0. Container Image security scan. Interval type, value interval:[0,200000].> The step size is 20, that is, only multiples of 20 can be filled in. */
    @Export(name="containerImageScan", refs={String.class}, tree="[0]")
    private Output containerImageScan;

    /**
     * @return Container Image security scan. Interval type, value interval:[0,200000].
     * > **NOTE:**  The step size is 20, that is, only multiples of 20 can be filled in.
     * 
     */
    public Output> containerImageScan() {
        return Codegen.optional(this.containerImageScan);
    }
    /**
     * Container Image security scan. Interval type, value interval:[0,200000].
     * > **NOTE:**  The step size is 20, that is, only multiples of 20 can be filled in.
     * 
     */
    @Export(name="containerImageScanNew", refs={String.class}, tree="[0]")
    private Output containerImageScanNew;

    /**
     * @return Container Image security scan. Interval type, value interval:[0,200000].
     * > **NOTE:**  The step size is 20, that is, only multiples of 20 can be filled in.
     * 
     */
    public Output> containerImageScanNew() {
        return Codegen.optional(this.containerImageScanNew);
    }
    /**
     * The creation time of the resource.
     * 
     */
    @Export(name="createTime", refs={String.class}, tree="[0]")
    private Output createTime;

    /**
     * @return The creation time of the resource.
     * 
     */
    public Output createTime() {
        return this.createTime;
    }
    /**
     * Number of cloud honeypot licenses. Interval type, value interval:[20,500].
     * > **NOTE:**  This module can only be purchased when honeypot_switch = 1, starting with 20.
     * 
     */
    @Export(name="honeypot", refs={String.class}, tree="[0]")
    private Output honeypot;

    /**
     * @return Number of cloud honeypot licenses. Interval type, value interval:[20,500].
     * > **NOTE:**  This module can only be purchased when honeypot_switch = 1, starting with 20.
     * 
     */
    public Output> honeypot() {
        return Codegen.optional(this.honeypot);
    }
    /**
     * Cloud honeypot. Value:
     * - 1: Yes.
     * - 2: No.
     * 
     */
    @Export(name="honeypotSwitch", refs={String.class}, tree="[0]")
    private Output honeypotSwitch;

    /**
     * @return Cloud honeypot. Value:
     * - 1: Yes.
     * - 2: No.
     * 
     */
    public Output honeypotSwitch() {
        return this.honeypotSwitch;
    }
    /**
     * Change configuration type, value
     * - Upgrade: Upgrade.
     * - Downgrade: Downgrade.
     * 
     */
    @Export(name="modifyType", refs={String.class}, tree="[0]")
    private Output modifyType;

    /**
     * @return Change configuration type, value
     * - Upgrade: Upgrade.
     * - Downgrade: Downgrade.
     * 
     */
    public Output> modifyType() {
        return Codegen.optional(this.modifyType);
    }
    /**
     * The payment type of the resource.
     * 
     */
    @Export(name="paymentType", refs={String.class}, tree="[0]")
    private Output paymentType;

    /**
     * @return The payment type of the resource.
     * 
     */
    public Output paymentType() {
        return this.paymentType;
    }
    /**
     * Prepaid cycle. The unit is Monthly, please enter an integer multiple of 12 for annual paid products.
     * > **NOTE:**  must be set when creating a prepaid instance.
     * 
     */
    @Export(name="period", refs={Integer.class}, tree="[0]")
    private Output period;

    /**
     * @return Prepaid cycle. The unit is Monthly, please enter an integer multiple of 12 for annual paid products.
     * > **NOTE:**  must be set when creating a prepaid instance.
     * 
     */
    public Output> period() {
        return Codegen.optional(this.period);
    }
    /**
     * Number of application protection licenses. Interval type, value interval:[1,100000000].
     * 
     */
    @Export(name="raspCount", refs={String.class}, tree="[0]")
    private Output raspCount;

    /**
     * @return Number of application protection licenses. Interval type, value interval:[1,100000000].
     * 
     */
    public Output> raspCount() {
        return Codegen.optional(this.raspCount);
    }
    /**
     * Automatic renewal cycle, in months.
     * > **NOTE:**  When **RenewalStatus** is set to **AutoRenewal**, it must be set.
     * 
     */
    @Export(name="renewPeriod", refs={Integer.class}, tree="[0]")
    private Output renewPeriod;

    /**
     * @return Automatic renewal cycle, in months.
     * > **NOTE:**  When **RenewalStatus** is set to **AutoRenewal**, it must be set.
     * 
     */
    public Output renewPeriod() {
        return this.renewPeriod;
    }
    /**
     * Automatic renewal period unit, value:
     * - M: month.
     * - Y: years.
     * > **NOTE:**  Must be set when RenewalStatus = AutoRenewal.
     * 
     */
    @Export(name="renewalPeriodUnit", refs={String.class}, tree="[0]")
    private Output renewalPeriodUnit;

    /**
     * @return Automatic renewal period unit, value:
     * - M: month.
     * - Y: years.
     * > **NOTE:**  Must be set when RenewalStatus = AutoRenewal.
     * 
     */
    public Output renewalPeriodUnit() {
        return this.renewalPeriodUnit;
    }
    /**
     * Automatic renewal status, default ManualRenewal, valid values:
     * - AutoRenewal: automatic renewal.
     * - ManualRenewal: manual renewal.
     * 
     */
    @Export(name="renewalStatus", refs={String.class}, tree="[0]")
    private Output renewalStatus;

    /**
     * @return Automatic renewal status, default ManualRenewal, valid values:
     * - AutoRenewal: automatic renewal.
     * - ManualRenewal: manual renewal.
     * 
     */
    public Output> renewalStatus() {
        return Codegen.optional(this.renewalStatus);
    }
    /**
     * Anti-ransomware capacity. Unit: GB. Interval type, value interval:[0,9999999999].
     * > **NOTE:**  The step size is 10, that is, only multiples of 10 can be filled in.
     * 
     */
    @Export(name="sasAntiRansomware", refs={String.class}, tree="[0]")
    private Output sasAntiRansomware;

    /**
     * @return Anti-ransomware capacity. Unit: GB. Interval type, value interval:[0,9999999999].
     * > **NOTE:**  The step size is 10, that is, only multiples of 10 can be filled in.
     * 
     */
    public Output> sasAntiRansomware() {
        return Codegen.optional(this.sasAntiRansomware);
    }
    /**
     * Cloud platform configuration check scan times, interval type, value range:[1000,9999999999].
     * > **NOTE:**  You must have sas_cspm_switch = 1 to purchase this module. The step size is 100, that is, only multiples of 10 can be filled in.
     * 
     */
    @Export(name="sasCspm", refs={String.class}, tree="[0]")
    private Output sasCspm;

    /**
     * @return Cloud platform configuration check scan times, interval type, value range:[1000,9999999999].
     * > **NOTE:**  You must have sas_cspm_switch = 1 to purchase this module. The step size is 100, that is, only multiples of 10 can be filled in.
     * 
     */
    public Output> sasCspm() {
        return Codegen.optional(this.sasCspm);
    }
    /**
     * Cloud platform configuration check switch. Value:
     * - 0: No.
     * - 1: Yes.
     * 
     */
    @Export(name="sasCspmSwitch", refs={String.class}, tree="[0]")
    private Output sasCspmSwitch;

    /**
     * @return Cloud platform configuration check switch. Value:
     * - 0: No.
     * - 1: Yes.
     * 
     */
    public Output sasCspmSwitch() {
        return this.sasCspmSwitch;
    }
    /**
     * Security screen. Value:
     * - true: Yes.
     * - false: No.
     * 
     */
    @Export(name="sasSc", refs={Boolean.class}, tree="[0]")
    private Output sasSc;

    /**
     * @return Security screen. Value:
     * - true: Yes.
     * - false: No.
     * 
     */
    public Output> sasSc() {
        return Codegen.optional(this.sasSc);
    }
    /**
     * Number of malicious file detections. Unit: 10,000 times. Interval type, value interval:[10,9999999999].
     * > **NOTE:**  This module can only be purchased when sas_sdk_switch = 1. The step size is 10, that is, only multiples of 10 can be filled in.
     * 
     */
    @Export(name="sasSdk", refs={String.class}, tree="[0]")
    private Output sasSdk;

    /**
     * @return Number of malicious file detections. Unit: 10,000 times. Interval type, value interval:[10,9999999999].
     * > **NOTE:**  This module can only be purchased when sas_sdk_switch = 1. The step size is 10, that is, only multiples of 10 can be filled in.
     * 
     */
    public Output> sasSdk() {
        return Codegen.optional(this.sasSdk);
    }
    /**
     * Malicious file detection SDK.
     * 
     */
    @Export(name="sasSdkSwitch", refs={String.class}, tree="[0]")
    private Output sasSdkSwitch;

    /**
     * @return Malicious file detection SDK.
     * 
     */
    public Output sasSdkSwitch() {
        return this.sasSdkSwitch;
    }
    /**
     * Log analysis storage capacity. Unit: GB. Interval type, value interval:[0,600000].
     * > **NOTE:**  The step size is 10, that is, only multiples of 10 can be filled in.
     * 
     */
    @Export(name="sasSlsStorage", refs={String.class}, tree="[0]")
    private Output sasSlsStorage;

    /**
     * @return Log analysis storage capacity. Unit: GB. Interval type, value interval:[0,600000].
     * > **NOTE:**  The step size is 10, that is, only multiples of 10 can be filled in.
     * 
     */
    public Output> sasSlsStorage() {
        return Codegen.optional(this.sasSlsStorage);
    }
    /**
     * Web tamper-proof switch. Value:
     * - 0: No.
     * - 1: Yes.
     * 
     */
    @Export(name="sasWebguardBoolean", refs={String.class}, tree="[0]")
    private Output sasWebguardBoolean;

    /**
     * @return Web tamper-proof switch. Value:
     * - 0: No.
     * - 1: Yes.
     * 
     */
    public Output sasWebguardBoolean() {
        return this.sasWebguardBoolean;
    }
    /**
     * Tamper-proof authorization number. Value:
     * - 0: No
     * - 1: Yes.
     * 
     */
    @Export(name="sasWebguardOrderNum", refs={String.class}, tree="[0]")
    private Output sasWebguardOrderNum;

    /**
     * @return Tamper-proof authorization number. Value:
     * - 0: No
     * - 1: Yes.
     * 
     */
    public Output> sasWebguardOrderNum() {
        return Codegen.optional(this.sasWebguardOrderNum);
    }
    /**
     * The status of the resource.
     * 
     */
    @Export(name="status", refs={String.class}, tree="[0]")
    private Output status;

    /**
     * @return The status of the resource.
     * 
     */
    public Output status() {
        return this.status;
    }
    /**
     * Threat Analysis log storage capacity. Interval type, value interval:[0,9999999999].
     * > **NOTE:**  This module can only be purchased when Threat_analysis_switch = 1. The step size is 10, that is, only multiples of 10 can be filled in.
     * 
     */
    @Export(name="threatAnalysis", refs={String.class}, tree="[0]")
    private Output threatAnalysis;

    /**
     * @return Threat Analysis log storage capacity. Interval type, value interval:[0,9999999999].
     * > **NOTE:**  This module can only be purchased when Threat_analysis_switch = 1. The step size is 10, that is, only multiples of 10 can be filled in.
     * 
     */
    public Output> threatAnalysis() {
        return Codegen.optional(this.threatAnalysis);
    }
    /**
     * Threat analysis. Value:
     * - 0: No.
     * - 1: Yes.
     * 
     */
    @Export(name="threatAnalysisSwitch", refs={String.class}, tree="[0]")
    private Output threatAnalysisSwitch;

    /**
     * @return Threat analysis. Value:
     * - 0: No.
     * - 1: Yes.
     * 
     */
    public Output threatAnalysisSwitch() {
        return this.threatAnalysisSwitch;
    }
    /**
     * Number of cores.
     * 
     */
    @Export(name="vCore", refs={String.class}, tree="[0]")
    private Output vCore;

    /**
     * @return Number of cores.
     * 
     */
    public Output> vCore() {
        return Codegen.optional(this.vCore);
    }
    /**
     * Select the security center version. Value:
     * - level7: Antivirus Edition.
     * - level3: Premium version.
     * - level2: Enterprise Edition.
     * - level8: Ultimate.
     * - level10: Purchase value-added services only.
     * 
     */
    @Export(name="versionCode", refs={String.class}, tree="[0]")
    private Output versionCode;

    /**
     * @return Select the security center version. Value:
     * - level7: Antivirus Edition.
     * - level3: Premium version.
     * - level2: Enterprise Edition.
     * - level8: Ultimate.
     * - level10: Purchase value-added services only.
     * 
     */
    public Output versionCode() {
        return this.versionCode;
    }
    /**
     * Vulnerability repair times, interval type, value range:[20,100000000].
     * > **NOTE:**  This module can only be purchased when vul_switch = 1. Only when the version_code value is level7 or level10. other versions do not need to be purchased separately.
     * 
     */
    @Export(name="vulCount", refs={String.class}, tree="[0]")
    private Output vulCount;

    /**
     * @return Vulnerability repair times, interval type, value range:[20,100000000].
     * > **NOTE:**  This module can only be purchased when vul_switch = 1. Only when the version_code value is level7 or level10. other versions do not need to be purchased separately.
     * 
     */
    public Output> vulCount() {
        return Codegen.optional(this.vulCount);
    }
    /**
     * Vulnerability fix switch. Value:
     * - 0: No.
     * - 1: Yes.
     * > **NOTE:**  When the value of version_code is level7 or level10, the purchase is allowed. Other versions do not need to be purchased separately.
     * 
     */
    @Export(name="vulSwitch", refs={String.class}, tree="[0]")
    private Output vulSwitch;

    /**
     * @return Vulnerability fix switch. Value:
     * - 0: No.
     * - 1: Yes.
     * > **NOTE:**  When the value of version_code is level7 or level10, the purchase is allowed. Other versions do not need to be purchased separately.
     * 
     */
    public Output vulSwitch() {
        return this.vulSwitch;
    }

    /**
     *
     * @param name The _unique_ name of the resulting resource.
     */
    public Instance(java.lang.String name) {
        this(name, InstanceArgs.Empty);
    }
    /**
     *
     * @param name The _unique_ name of the resulting resource.
     * @param args The arguments to use to populate this resource's properties.
     */
    public Instance(java.lang.String name, InstanceArgs args) {
        this(name, args, null);
    }
    /**
     *
     * @param name The _unique_ name of the resulting resource.
     * @param args The arguments to use to populate this resource's properties.
     * @param options A bag of options that control this resource's behavior.
     */
    public Instance(java.lang.String name, InstanceArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) {
        super("alicloud:threatdetection/instance:Instance", name, makeArgs(args, options), makeResourceOptions(options, Codegen.empty()), false);
    }

    private Instance(java.lang.String name, Output id, @Nullable InstanceState state, @Nullable com.pulumi.resources.CustomResourceOptions options) {
        super("alicloud:threatdetection/instance:Instance", name, state, makeResourceOptions(options, id), false);
    }

    private static InstanceArgs makeArgs(InstanceArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) {
        if (options != null && options.getUrn().isPresent()) {
            return null;
        }
        return args == null ? InstanceArgs.Empty : args;
    }

    private static com.pulumi.resources.CustomResourceOptions makeResourceOptions(@Nullable com.pulumi.resources.CustomResourceOptions options, @Nullable Output id) {
        var defaultOptions = com.pulumi.resources.CustomResourceOptions.builder()
            .version(Utilities.getVersion())
            .build();
        return com.pulumi.resources.CustomResourceOptions.merge(defaultOptions, options, id);
    }

    /**
     * Get an existing Host 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
     * @param options Optional settings to control the behavior of the CustomResource.
     */
    public static Instance get(java.lang.String name, Output id, @Nullable InstanceState state, @Nullable com.pulumi.resources.CustomResourceOptions options) {
        return new Instance(name, id, state, options);
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy