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

com.pulumi.azurenative.avs.inputs.IdentitySourceArgs Maven / Gradle / Ivy

There is a newer version: 2.78.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.avs.inputs;

import com.pulumi.azurenative.avs.enums.SslEnum;
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;


/**
 * vCenter Single Sign On Identity Source
 * 
 */
public final class IdentitySourceArgs extends com.pulumi.resources.ResourceArgs {

    public static final IdentitySourceArgs Empty = new IdentitySourceArgs();

    /**
     * The domain's NetBIOS name
     * 
     */
    @Import(name="alias")
    private @Nullable Output alias;

    /**
     * @return The domain's NetBIOS name
     * 
     */
    public Optional> alias() {
        return Optional.ofNullable(this.alias);
    }

    /**
     * The base distinguished name for groups
     * 
     */
    @Import(name="baseGroupDN")
    private @Nullable Output baseGroupDN;

    /**
     * @return The base distinguished name for groups
     * 
     */
    public Optional> baseGroupDN() {
        return Optional.ofNullable(this.baseGroupDN);
    }

    /**
     * The base distinguished name for users
     * 
     */
    @Import(name="baseUserDN")
    private @Nullable Output baseUserDN;

    /**
     * @return The base distinguished name for users
     * 
     */
    public Optional> baseUserDN() {
        return Optional.ofNullable(this.baseUserDN);
    }

    /**
     * The domain's dns name
     * 
     */
    @Import(name="domain")
    private @Nullable Output domain;

    /**
     * @return The domain's dns name
     * 
     */
    public Optional> domain() {
        return Optional.ofNullable(this.domain);
    }

    /**
     * The name of the identity source
     * 
     */
    @Import(name="name")
    private @Nullable Output name;

    /**
     * @return The name of the identity source
     * 
     */
    public Optional> name() {
        return Optional.ofNullable(this.name);
    }

    /**
     * The password of the Active Directory user with a minimum of read-only access to Base DN for users and groups.
     * 
     */
    @Import(name="password")
    private @Nullable Output password;

    /**
     * @return The password of the Active Directory user with a minimum of read-only access to Base DN for users and groups.
     * 
     */
    public Optional> password() {
        return Optional.ofNullable(this.password);
    }

    /**
     * Primary server URL
     * 
     */
    @Import(name="primaryServer")
    private @Nullable Output primaryServer;

    /**
     * @return Primary server URL
     * 
     */
    public Optional> primaryServer() {
        return Optional.ofNullable(this.primaryServer);
    }

    /**
     * Secondary server URL
     * 
     */
    @Import(name="secondaryServer")
    private @Nullable Output secondaryServer;

    /**
     * @return Secondary server URL
     * 
     */
    public Optional> secondaryServer() {
        return Optional.ofNullable(this.secondaryServer);
    }

    /**
     * Protect LDAP communication using SSL certificate (LDAPS)
     * 
     */
    @Import(name="ssl")
    private @Nullable Output> ssl;

    /**
     * @return Protect LDAP communication using SSL certificate (LDAPS)
     * 
     */
    public Optional>> ssl() {
        return Optional.ofNullable(this.ssl);
    }

    /**
     * The ID of an Active Directory user with a minimum of read-only access to Base DN for users and group
     * 
     */
    @Import(name="username")
    private @Nullable Output username;

    /**
     * @return The ID of an Active Directory user with a minimum of read-only access to Base DN for users and group
     * 
     */
    public Optional> username() {
        return Optional.ofNullable(this.username);
    }

    private IdentitySourceArgs() {}

    private IdentitySourceArgs(IdentitySourceArgs $) {
        this.alias = $.alias;
        this.baseGroupDN = $.baseGroupDN;
        this.baseUserDN = $.baseUserDN;
        this.domain = $.domain;
        this.name = $.name;
        this.password = $.password;
        this.primaryServer = $.primaryServer;
        this.secondaryServer = $.secondaryServer;
        this.ssl = $.ssl;
        this.username = $.username;
    }

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

    public static final class Builder {
        private IdentitySourceArgs $;

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

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

        /**
         * @param alias The domain's NetBIOS name
         * 
         * @return builder
         * 
         */
        public Builder alias(@Nullable Output alias) {
            $.alias = alias;
            return this;
        }

        /**
         * @param alias The domain's NetBIOS name
         * 
         * @return builder
         * 
         */
        public Builder alias(String alias) {
            return alias(Output.of(alias));
        }

        /**
         * @param baseGroupDN The base distinguished name for groups
         * 
         * @return builder
         * 
         */
        public Builder baseGroupDN(@Nullable Output baseGroupDN) {
            $.baseGroupDN = baseGroupDN;
            return this;
        }

        /**
         * @param baseGroupDN The base distinguished name for groups
         * 
         * @return builder
         * 
         */
        public Builder baseGroupDN(String baseGroupDN) {
            return baseGroupDN(Output.of(baseGroupDN));
        }

        /**
         * @param baseUserDN The base distinguished name for users
         * 
         * @return builder
         * 
         */
        public Builder baseUserDN(@Nullable Output baseUserDN) {
            $.baseUserDN = baseUserDN;
            return this;
        }

        /**
         * @param baseUserDN The base distinguished name for users
         * 
         * @return builder
         * 
         */
        public Builder baseUserDN(String baseUserDN) {
            return baseUserDN(Output.of(baseUserDN));
        }

        /**
         * @param domain The domain's dns name
         * 
         * @return builder
         * 
         */
        public Builder domain(@Nullable Output domain) {
            $.domain = domain;
            return this;
        }

        /**
         * @param domain The domain's dns name
         * 
         * @return builder
         * 
         */
        public Builder domain(String domain) {
            return domain(Output.of(domain));
        }

        /**
         * @param name The name of the identity source
         * 
         * @return builder
         * 
         */
        public Builder name(@Nullable Output name) {
            $.name = name;
            return this;
        }

        /**
         * @param name The name of the identity source
         * 
         * @return builder
         * 
         */
        public Builder name(String name) {
            return name(Output.of(name));
        }

        /**
         * @param password The password of the Active Directory user with a minimum of read-only access to Base DN for users and groups.
         * 
         * @return builder
         * 
         */
        public Builder password(@Nullable Output password) {
            $.password = password;
            return this;
        }

        /**
         * @param password The password of the Active Directory user with a minimum of read-only access to Base DN for users and groups.
         * 
         * @return builder
         * 
         */
        public Builder password(String password) {
            return password(Output.of(password));
        }

        /**
         * @param primaryServer Primary server URL
         * 
         * @return builder
         * 
         */
        public Builder primaryServer(@Nullable Output primaryServer) {
            $.primaryServer = primaryServer;
            return this;
        }

        /**
         * @param primaryServer Primary server URL
         * 
         * @return builder
         * 
         */
        public Builder primaryServer(String primaryServer) {
            return primaryServer(Output.of(primaryServer));
        }

        /**
         * @param secondaryServer Secondary server URL
         * 
         * @return builder
         * 
         */
        public Builder secondaryServer(@Nullable Output secondaryServer) {
            $.secondaryServer = secondaryServer;
            return this;
        }

        /**
         * @param secondaryServer Secondary server URL
         * 
         * @return builder
         * 
         */
        public Builder secondaryServer(String secondaryServer) {
            return secondaryServer(Output.of(secondaryServer));
        }

        /**
         * @param ssl Protect LDAP communication using SSL certificate (LDAPS)
         * 
         * @return builder
         * 
         */
        public Builder ssl(@Nullable Output> ssl) {
            $.ssl = ssl;
            return this;
        }

        /**
         * @param ssl Protect LDAP communication using SSL certificate (LDAPS)
         * 
         * @return builder
         * 
         */
        public Builder ssl(Either ssl) {
            return ssl(Output.of(ssl));
        }

        /**
         * @param ssl Protect LDAP communication using SSL certificate (LDAPS)
         * 
         * @return builder
         * 
         */
        public Builder ssl(String ssl) {
            return ssl(Either.ofLeft(ssl));
        }

        /**
         * @param ssl Protect LDAP communication using SSL certificate (LDAPS)
         * 
         * @return builder
         * 
         */
        public Builder ssl(SslEnum ssl) {
            return ssl(Either.ofRight(ssl));
        }

        /**
         * @param username The ID of an Active Directory user with a minimum of read-only access to Base DN for users and group
         * 
         * @return builder
         * 
         */
        public Builder username(@Nullable Output username) {
            $.username = username;
            return this;
        }

        /**
         * @param username The ID of an Active Directory user with a minimum of read-only access to Base DN for users and group
         * 
         * @return builder
         * 
         */
        public Builder username(String username) {
            return username(Output.of(username));
        }

        public IdentitySourceArgs build() {
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy