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

com.pulumi.azurenative.aad.inputs.LdapsSettingsArgs Maven / Gradle / Ivy

The 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.aad.inputs;

import com.pulumi.azurenative.aad.enums.ExternalAccess;
import com.pulumi.azurenative.aad.enums.Ldaps;
import com.pulumi.core.Either;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.core.internal.Codegen;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


/**
 * Secure LDAP Settings
 * 
 */
public final class LdapsSettingsArgs extends com.pulumi.resources.ResourceArgs {

    public static final LdapsSettingsArgs Empty = new LdapsSettingsArgs();

    /**
     * A flag to determine whether or not Secure LDAP access over the internet is enabled or disabled.
     * 
     */
    @Import(name="externalAccess")
    private @Nullable Output> externalAccess;

    /**
     * @return A flag to determine whether or not Secure LDAP access over the internet is enabled or disabled.
     * 
     */
    public Optional>> externalAccess() {
        return Optional.ofNullable(this.externalAccess);
    }

    /**
     * A flag to determine whether or not Secure LDAP is enabled or disabled.
     * 
     */
    @Import(name="ldaps")
    private @Nullable Output> ldaps;

    /**
     * @return A flag to determine whether or not Secure LDAP is enabled or disabled.
     * 
     */
    public Optional>> ldaps() {
        return Optional.ofNullable(this.ldaps);
    }

    /**
     * The certificate required to configure Secure LDAP. The parameter passed here should be a base64encoded representation of the certificate pfx file.
     * 
     */
    @Import(name="pfxCertificate")
    private @Nullable Output pfxCertificate;

    /**
     * @return The certificate required to configure Secure LDAP. The parameter passed here should be a base64encoded representation of the certificate pfx file.
     * 
     */
    public Optional> pfxCertificate() {
        return Optional.ofNullable(this.pfxCertificate);
    }

    /**
     * The password to decrypt the provided Secure LDAP certificate pfx file.
     * 
     */
    @Import(name="pfxCertificatePassword")
    private @Nullable Output pfxCertificatePassword;

    /**
     * @return The password to decrypt the provided Secure LDAP certificate pfx file.
     * 
     */
    public Optional> pfxCertificatePassword() {
        return Optional.ofNullable(this.pfxCertificatePassword);
    }

    private LdapsSettingsArgs() {}

    private LdapsSettingsArgs(LdapsSettingsArgs $) {
        this.externalAccess = $.externalAccess;
        this.ldaps = $.ldaps;
        this.pfxCertificate = $.pfxCertificate;
        this.pfxCertificatePassword = $.pfxCertificatePassword;
    }

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

    public static final class Builder {
        private LdapsSettingsArgs $;

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

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

        /**
         * @param externalAccess A flag to determine whether or not Secure LDAP access over the internet is enabled or disabled.
         * 
         * @return builder
         * 
         */
        public Builder externalAccess(@Nullable Output> externalAccess) {
            $.externalAccess = externalAccess;
            return this;
        }

        /**
         * @param externalAccess A flag to determine whether or not Secure LDAP access over the internet is enabled or disabled.
         * 
         * @return builder
         * 
         */
        public Builder externalAccess(Either externalAccess) {
            return externalAccess(Output.of(externalAccess));
        }

        /**
         * @param externalAccess A flag to determine whether or not Secure LDAP access over the internet is enabled or disabled.
         * 
         * @return builder
         * 
         */
        public Builder externalAccess(String externalAccess) {
            return externalAccess(Either.ofLeft(externalAccess));
        }

        /**
         * @param externalAccess A flag to determine whether or not Secure LDAP access over the internet is enabled or disabled.
         * 
         * @return builder
         * 
         */
        public Builder externalAccess(ExternalAccess externalAccess) {
            return externalAccess(Either.ofRight(externalAccess));
        }

        /**
         * @param ldaps A flag to determine whether or not Secure LDAP is enabled or disabled.
         * 
         * @return builder
         * 
         */
        public Builder ldaps(@Nullable Output> ldaps) {
            $.ldaps = ldaps;
            return this;
        }

        /**
         * @param ldaps A flag to determine whether or not Secure LDAP is enabled or disabled.
         * 
         * @return builder
         * 
         */
        public Builder ldaps(Either ldaps) {
            return ldaps(Output.of(ldaps));
        }

        /**
         * @param ldaps A flag to determine whether or not Secure LDAP is enabled or disabled.
         * 
         * @return builder
         * 
         */
        public Builder ldaps(String ldaps) {
            return ldaps(Either.ofLeft(ldaps));
        }

        /**
         * @param ldaps A flag to determine whether or not Secure LDAP is enabled or disabled.
         * 
         * @return builder
         * 
         */
        public Builder ldaps(Ldaps ldaps) {
            return ldaps(Either.ofRight(ldaps));
        }

        /**
         * @param pfxCertificate The certificate required to configure Secure LDAP. The parameter passed here should be a base64encoded representation of the certificate pfx file.
         * 
         * @return builder
         * 
         */
        public Builder pfxCertificate(@Nullable Output pfxCertificate) {
            $.pfxCertificate = pfxCertificate;
            return this;
        }

        /**
         * @param pfxCertificate The certificate required to configure Secure LDAP. The parameter passed here should be a base64encoded representation of the certificate pfx file.
         * 
         * @return builder
         * 
         */
        public Builder pfxCertificate(String pfxCertificate) {
            return pfxCertificate(Output.of(pfxCertificate));
        }

        /**
         * @param pfxCertificatePassword The password to decrypt the provided Secure LDAP certificate pfx file.
         * 
         * @return builder
         * 
         */
        public Builder pfxCertificatePassword(@Nullable Output pfxCertificatePassword) {
            $.pfxCertificatePassword = pfxCertificatePassword;
            return this;
        }

        /**
         * @param pfxCertificatePassword The password to decrypt the provided Secure LDAP certificate pfx file.
         * 
         * @return builder
         * 
         */
        public Builder pfxCertificatePassword(String pfxCertificatePassword) {
            return pfxCertificatePassword(Output.of(pfxCertificatePassword));
        }

        public LdapsSettingsArgs build() {
            $.externalAccess = Codegen.stringProp("externalAccess").left(ExternalAccess.class).output().arg($.externalAccess).def("Disabled").getNullable();
            $.ldaps = Codegen.stringProp("ldaps").left(Ldaps.class).output().arg($.ldaps).def("Disabled").getNullable();
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy