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

com.pulumi.azure.securitycenter.inputs.StorageDefenderState Maven / Gradle / Ivy

// *** 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.azure.securitycenter.inputs;

import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import java.lang.Boolean;
import java.lang.Integer;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


public final class StorageDefenderState extends com.pulumi.resources.ResourceArgs {

    public static final StorageDefenderState Empty = new StorageDefenderState();

    /**
     * The max GB to be scanned per Month. Must be `-1` or above `0`. Omit this property or set to `-1` if no capping is needed. Defaults to `-1`.
     * 
     */
    @Import(name="malwareScanningOnUploadCapGbPerMonth")
    private @Nullable Output malwareScanningOnUploadCapGbPerMonth;

    /**
     * @return The max GB to be scanned per Month. Must be `-1` or above `0`. Omit this property or set to `-1` if no capping is needed. Defaults to `-1`.
     * 
     */
    public Optional> malwareScanningOnUploadCapGbPerMonth() {
        return Optional.ofNullable(this.malwareScanningOnUploadCapGbPerMonth);
    }

    /**
     * Whether On Upload malware scanning should be enabled. Defaults to `false`.
     * 
     */
    @Import(name="malwareScanningOnUploadEnabled")
    private @Nullable Output malwareScanningOnUploadEnabled;

    /**
     * @return Whether On Upload malware scanning should be enabled. Defaults to `false`.
     * 
     */
    public Optional> malwareScanningOnUploadEnabled() {
        return Optional.ofNullable(this.malwareScanningOnUploadEnabled);
    }

    /**
     * Whether the settings defined for this storage account should override the settings defined for the subscription. Defaults to `false`.
     * 
     */
    @Import(name="overrideSubscriptionSettingsEnabled")
    private @Nullable Output overrideSubscriptionSettingsEnabled;

    /**
     * @return Whether the settings defined for this storage account should override the settings defined for the subscription. Defaults to `false`.
     * 
     */
    public Optional> overrideSubscriptionSettingsEnabled() {
        return Optional.ofNullable(this.overrideSubscriptionSettingsEnabled);
    }

    /**
     * The Event Grid Topic where every scan result will be sent to. When you set an Event Grid custom topic, you must set `override_subscription_settings_enabled` to `true` to override the subscription-level settings.
     * 
     */
    @Import(name="scanResultsEventGridTopicId")
    private @Nullable Output scanResultsEventGridTopicId;

    /**
     * @return The Event Grid Topic where every scan result will be sent to. When you set an Event Grid custom topic, you must set `override_subscription_settings_enabled` to `true` to override the subscription-level settings.
     * 
     */
    public Optional> scanResultsEventGridTopicId() {
        return Optional.ofNullable(this.scanResultsEventGridTopicId);
    }

    /**
     * Whether Sensitive Data Discovery should be enabled. Defaults to `false`.
     * 
     */
    @Import(name="sensitiveDataDiscoveryEnabled")
    private @Nullable Output sensitiveDataDiscoveryEnabled;

    /**
     * @return Whether Sensitive Data Discovery should be enabled. Defaults to `false`.
     * 
     */
    public Optional> sensitiveDataDiscoveryEnabled() {
        return Optional.ofNullable(this.sensitiveDataDiscoveryEnabled);
    }

    /**
     * The ID of the storage account the defender applied to. Changing this forces a new resource to be created.
     * 
     */
    @Import(name="storageAccountId")
    private @Nullable Output storageAccountId;

    /**
     * @return The ID of the storage account the defender applied to. Changing this forces a new resource to be created.
     * 
     */
    public Optional> storageAccountId() {
        return Optional.ofNullable(this.storageAccountId);
    }

    private StorageDefenderState() {}

    private StorageDefenderState(StorageDefenderState $) {
        this.malwareScanningOnUploadCapGbPerMonth = $.malwareScanningOnUploadCapGbPerMonth;
        this.malwareScanningOnUploadEnabled = $.malwareScanningOnUploadEnabled;
        this.overrideSubscriptionSettingsEnabled = $.overrideSubscriptionSettingsEnabled;
        this.scanResultsEventGridTopicId = $.scanResultsEventGridTopicId;
        this.sensitiveDataDiscoveryEnabled = $.sensitiveDataDiscoveryEnabled;
        this.storageAccountId = $.storageAccountId;
    }

    public static Builder builder() {
        return new Builder();
    }
    public static Builder builder(StorageDefenderState defaults) {
        return new Builder(defaults);
    }

    public static final class Builder {
        private StorageDefenderState $;

        public Builder() {
            $ = new StorageDefenderState();
        }

        public Builder(StorageDefenderState defaults) {
            $ = new StorageDefenderState(Objects.requireNonNull(defaults));
        }

        /**
         * @param malwareScanningOnUploadCapGbPerMonth The max GB to be scanned per Month. Must be `-1` or above `0`. Omit this property or set to `-1` if no capping is needed. Defaults to `-1`.
         * 
         * @return builder
         * 
         */
        public Builder malwareScanningOnUploadCapGbPerMonth(@Nullable Output malwareScanningOnUploadCapGbPerMonth) {
            $.malwareScanningOnUploadCapGbPerMonth = malwareScanningOnUploadCapGbPerMonth;
            return this;
        }

        /**
         * @param malwareScanningOnUploadCapGbPerMonth The max GB to be scanned per Month. Must be `-1` or above `0`. Omit this property or set to `-1` if no capping is needed. Defaults to `-1`.
         * 
         * @return builder
         * 
         */
        public Builder malwareScanningOnUploadCapGbPerMonth(Integer malwareScanningOnUploadCapGbPerMonth) {
            return malwareScanningOnUploadCapGbPerMonth(Output.of(malwareScanningOnUploadCapGbPerMonth));
        }

        /**
         * @param malwareScanningOnUploadEnabled Whether On Upload malware scanning should be enabled. Defaults to `false`.
         * 
         * @return builder
         * 
         */
        public Builder malwareScanningOnUploadEnabled(@Nullable Output malwareScanningOnUploadEnabled) {
            $.malwareScanningOnUploadEnabled = malwareScanningOnUploadEnabled;
            return this;
        }

        /**
         * @param malwareScanningOnUploadEnabled Whether On Upload malware scanning should be enabled. Defaults to `false`.
         * 
         * @return builder
         * 
         */
        public Builder malwareScanningOnUploadEnabled(Boolean malwareScanningOnUploadEnabled) {
            return malwareScanningOnUploadEnabled(Output.of(malwareScanningOnUploadEnabled));
        }

        /**
         * @param overrideSubscriptionSettingsEnabled Whether the settings defined for this storage account should override the settings defined for the subscription. Defaults to `false`.
         * 
         * @return builder
         * 
         */
        public Builder overrideSubscriptionSettingsEnabled(@Nullable Output overrideSubscriptionSettingsEnabled) {
            $.overrideSubscriptionSettingsEnabled = overrideSubscriptionSettingsEnabled;
            return this;
        }

        /**
         * @param overrideSubscriptionSettingsEnabled Whether the settings defined for this storage account should override the settings defined for the subscription. Defaults to `false`.
         * 
         * @return builder
         * 
         */
        public Builder overrideSubscriptionSettingsEnabled(Boolean overrideSubscriptionSettingsEnabled) {
            return overrideSubscriptionSettingsEnabled(Output.of(overrideSubscriptionSettingsEnabled));
        }

        /**
         * @param scanResultsEventGridTopicId The Event Grid Topic where every scan result will be sent to. When you set an Event Grid custom topic, you must set `override_subscription_settings_enabled` to `true` to override the subscription-level settings.
         * 
         * @return builder
         * 
         */
        public Builder scanResultsEventGridTopicId(@Nullable Output scanResultsEventGridTopicId) {
            $.scanResultsEventGridTopicId = scanResultsEventGridTopicId;
            return this;
        }

        /**
         * @param scanResultsEventGridTopicId The Event Grid Topic where every scan result will be sent to. When you set an Event Grid custom topic, you must set `override_subscription_settings_enabled` to `true` to override the subscription-level settings.
         * 
         * @return builder
         * 
         */
        public Builder scanResultsEventGridTopicId(String scanResultsEventGridTopicId) {
            return scanResultsEventGridTopicId(Output.of(scanResultsEventGridTopicId));
        }

        /**
         * @param sensitiveDataDiscoveryEnabled Whether Sensitive Data Discovery should be enabled. Defaults to `false`.
         * 
         * @return builder
         * 
         */
        public Builder sensitiveDataDiscoveryEnabled(@Nullable Output sensitiveDataDiscoveryEnabled) {
            $.sensitiveDataDiscoveryEnabled = sensitiveDataDiscoveryEnabled;
            return this;
        }

        /**
         * @param sensitiveDataDiscoveryEnabled Whether Sensitive Data Discovery should be enabled. Defaults to `false`.
         * 
         * @return builder
         * 
         */
        public Builder sensitiveDataDiscoveryEnabled(Boolean sensitiveDataDiscoveryEnabled) {
            return sensitiveDataDiscoveryEnabled(Output.of(sensitiveDataDiscoveryEnabled));
        }

        /**
         * @param storageAccountId The ID of the storage account the defender applied to. Changing this forces a new resource to be created.
         * 
         * @return builder
         * 
         */
        public Builder storageAccountId(@Nullable Output storageAccountId) {
            $.storageAccountId = storageAccountId;
            return this;
        }

        /**
         * @param storageAccountId The ID of the storage account the defender applied to. Changing this forces a new resource to be created.
         * 
         * @return builder
         * 
         */
        public Builder storageAccountId(String storageAccountId) {
            return storageAccountId(Output.of(storageAccountId));
        }

        public StorageDefenderState build() {
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy