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

com.pulumi.azurenative.workloads.inputs.SSLConfigurationArgs Maven / Gradle / Ivy

There is a newer version: 2.82.0
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.azurenative.workloads.inputs;

import com.pulumi.azurenative.workloads.enums.SslCryptoProvider;
import com.pulumi.core.Either;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


/**
 * Specify the HANA database TLS/SSL properties which will be used for enabling Azure Backup for this database. You need to specify these details if you have enabled secure communication for your HANA database.
 * 
 */
public final class SSLConfigurationArgs extends com.pulumi.resources.ResourceArgs {

    public static final SSLConfigurationArgs Empty = new SSLConfigurationArgs();

    /**
     * Specify the crypto provider being used (commoncrypto/openssl). If this argument is not provided, it is automatically determined by searching in the configuration files.
     * 
     */
    @Import(name="sslCryptoProvider")
    private @Nullable Output> sslCryptoProvider;

    /**
     * @return Specify the crypto provider being used (commoncrypto/openssl). If this argument is not provided, it is automatically determined by searching in the configuration files.
     * 
     */
    public Optional>> sslCryptoProvider() {
        return Optional.ofNullable(this.sslCryptoProvider);
    }

    /**
     * Specify the hostname as mentioned in the SSL certificate. If this argument is not provided, it is automatically determined by searching in the SSL certificate.
     * 
     */
    @Import(name="sslHostNameInCertificate")
    private @Nullable Output sslHostNameInCertificate;

    /**
     * @return Specify the hostname as mentioned in the SSL certificate. If this argument is not provided, it is automatically determined by searching in the SSL certificate.
     * 
     */
    public Optional> sslHostNameInCertificate() {
        return Optional.ofNullable(this.sslHostNameInCertificate);
    }

    /**
     * Specify the name of the keystore file that contains the client's identity (eg. sapsrv.pse). The script will search for the file in the appropriate directory depending on the crypto provider mentioned. If this argument is not provided, it is automatically determined by searching in the configuration files.
     * 
     */
    @Import(name="sslKeyStore")
    private @Nullable Output sslKeyStore;

    /**
     * @return Specify the name of the keystore file that contains the client's identity (eg. sapsrv.pse). The script will search for the file in the appropriate directory depending on the crypto provider mentioned. If this argument is not provided, it is automatically determined by searching in the configuration files.
     * 
     */
    public Optional> sslKeyStore() {
        return Optional.ofNullable(this.sslKeyStore);
    }

    /**
     * Specify the name of the trust store file that contains the server’s public certificates (eg. sapsrv.pse). The script will search for the file in the appropriate directory depending on the crypto provider mentioned. If this argument is not provided, it is automatically determined by searching in the configuration files.
     * 
     */
    @Import(name="sslTrustStore")
    private @Nullable Output sslTrustStore;

    /**
     * @return Specify the name of the trust store file that contains the server’s public certificates (eg. sapsrv.pse). The script will search for the file in the appropriate directory depending on the crypto provider mentioned. If this argument is not provided, it is automatically determined by searching in the configuration files.
     * 
     */
    public Optional> sslTrustStore() {
        return Optional.ofNullable(this.sslTrustStore);
    }

    private SSLConfigurationArgs() {}

    private SSLConfigurationArgs(SSLConfigurationArgs $) {
        this.sslCryptoProvider = $.sslCryptoProvider;
        this.sslHostNameInCertificate = $.sslHostNameInCertificate;
        this.sslKeyStore = $.sslKeyStore;
        this.sslTrustStore = $.sslTrustStore;
    }

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

    public static final class Builder {
        private SSLConfigurationArgs $;

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

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

        /**
         * @param sslCryptoProvider Specify the crypto provider being used (commoncrypto/openssl). If this argument is not provided, it is automatically determined by searching in the configuration files.
         * 
         * @return builder
         * 
         */
        public Builder sslCryptoProvider(@Nullable Output> sslCryptoProvider) {
            $.sslCryptoProvider = sslCryptoProvider;
            return this;
        }

        /**
         * @param sslCryptoProvider Specify the crypto provider being used (commoncrypto/openssl). If this argument is not provided, it is automatically determined by searching in the configuration files.
         * 
         * @return builder
         * 
         */
        public Builder sslCryptoProvider(Either sslCryptoProvider) {
            return sslCryptoProvider(Output.of(sslCryptoProvider));
        }

        /**
         * @param sslCryptoProvider Specify the crypto provider being used (commoncrypto/openssl). If this argument is not provided, it is automatically determined by searching in the configuration files.
         * 
         * @return builder
         * 
         */
        public Builder sslCryptoProvider(String sslCryptoProvider) {
            return sslCryptoProvider(Either.ofLeft(sslCryptoProvider));
        }

        /**
         * @param sslCryptoProvider Specify the crypto provider being used (commoncrypto/openssl). If this argument is not provided, it is automatically determined by searching in the configuration files.
         * 
         * @return builder
         * 
         */
        public Builder sslCryptoProvider(SslCryptoProvider sslCryptoProvider) {
            return sslCryptoProvider(Either.ofRight(sslCryptoProvider));
        }

        /**
         * @param sslHostNameInCertificate Specify the hostname as mentioned in the SSL certificate. If this argument is not provided, it is automatically determined by searching in the SSL certificate.
         * 
         * @return builder
         * 
         */
        public Builder sslHostNameInCertificate(@Nullable Output sslHostNameInCertificate) {
            $.sslHostNameInCertificate = sslHostNameInCertificate;
            return this;
        }

        /**
         * @param sslHostNameInCertificate Specify the hostname as mentioned in the SSL certificate. If this argument is not provided, it is automatically determined by searching in the SSL certificate.
         * 
         * @return builder
         * 
         */
        public Builder sslHostNameInCertificate(String sslHostNameInCertificate) {
            return sslHostNameInCertificate(Output.of(sslHostNameInCertificate));
        }

        /**
         * @param sslKeyStore Specify the name of the keystore file that contains the client's identity (eg. sapsrv.pse). The script will search for the file in the appropriate directory depending on the crypto provider mentioned. If this argument is not provided, it is automatically determined by searching in the configuration files.
         * 
         * @return builder
         * 
         */
        public Builder sslKeyStore(@Nullable Output sslKeyStore) {
            $.sslKeyStore = sslKeyStore;
            return this;
        }

        /**
         * @param sslKeyStore Specify the name of the keystore file that contains the client's identity (eg. sapsrv.pse). The script will search for the file in the appropriate directory depending on the crypto provider mentioned. If this argument is not provided, it is automatically determined by searching in the configuration files.
         * 
         * @return builder
         * 
         */
        public Builder sslKeyStore(String sslKeyStore) {
            return sslKeyStore(Output.of(sslKeyStore));
        }

        /**
         * @param sslTrustStore Specify the name of the trust store file that contains the server’s public certificates (eg. sapsrv.pse). The script will search for the file in the appropriate directory depending on the crypto provider mentioned. If this argument is not provided, it is automatically determined by searching in the configuration files.
         * 
         * @return builder
         * 
         */
        public Builder sslTrustStore(@Nullable Output sslTrustStore) {
            $.sslTrustStore = sslTrustStore;
            return this;
        }

        /**
         * @param sslTrustStore Specify the name of the trust store file that contains the server’s public certificates (eg. sapsrv.pse). The script will search for the file in the appropriate directory depending on the crypto provider mentioned. If this argument is not provided, it is automatically determined by searching in the configuration files.
         * 
         * @return builder
         * 
         */
        public Builder sslTrustStore(String sslTrustStore) {
            return sslTrustStore(Output.of(sslTrustStore));
        }

        public SSLConfigurationArgs build() {
            return $;
        }
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy