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

com.pulumi.azurenative.datafactory.inputs.WebActivityAuthenticationArgs 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.azurenative.datafactory.inputs;

import com.pulumi.azurenative.datafactory.inputs.AzureKeyVaultSecretReferenceArgs;
import com.pulumi.azurenative.datafactory.inputs.CredentialReferenceArgs;
import com.pulumi.azurenative.datafactory.inputs.SecureStringArgs;
import com.pulumi.core.Either;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import java.lang.Object;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


/**
 * Web activity authentication properties.
 * 
 */
public final class WebActivityAuthenticationArgs extends com.pulumi.resources.ResourceArgs {

    public static final WebActivityAuthenticationArgs Empty = new WebActivityAuthenticationArgs();

    /**
     * The credential reference containing authentication information.
     * 
     */
    @Import(name="credential")
    private @Nullable Output credential;

    /**
     * @return The credential reference containing authentication information.
     * 
     */
    public Optional> credential() {
        return Optional.ofNullable(this.credential);
    }

    /**
     * Password for the PFX file or basic authentication / Secret when used for ServicePrincipal
     * 
     */
    @Import(name="password")
    private @Nullable Output> password;

    /**
     * @return Password for the PFX file or basic authentication / Secret when used for ServicePrincipal
     * 
     */
    public Optional>> password() {
        return Optional.ofNullable(this.password);
    }

    /**
     * Base64-encoded contents of a PFX file or Certificate when used for ServicePrincipal
     * 
     */
    @Import(name="pfx")
    private @Nullable Output> pfx;

    /**
     * @return Base64-encoded contents of a PFX file or Certificate when used for ServicePrincipal
     * 
     */
    public Optional>> pfx() {
        return Optional.ofNullable(this.pfx);
    }

    /**
     * Resource for which Azure Auth token will be requested when using MSI Authentication. Type: string (or Expression with resultType string).
     * 
     */
    @Import(name="resource")
    private @Nullable Output resource;

    /**
     * @return Resource for which Azure Auth token will be requested when using MSI Authentication. Type: string (or Expression with resultType string).
     * 
     */
    public Optional> resource() {
        return Optional.ofNullable(this.resource);
    }

    /**
     * Web activity authentication (Basic/ClientCertificate/MSI/ServicePrincipal)
     * 
     */
    @Import(name="type")
    private @Nullable Output type;

    /**
     * @return Web activity authentication (Basic/ClientCertificate/MSI/ServicePrincipal)
     * 
     */
    public Optional> type() {
        return Optional.ofNullable(this.type);
    }

    /**
     * TenantId for which Azure Auth token will be requested when using ServicePrincipal Authentication. Type: string (or Expression with resultType string).
     * 
     */
    @Import(name="userTenant")
    private @Nullable Output userTenant;

    /**
     * @return TenantId for which Azure Auth token will be requested when using ServicePrincipal Authentication. Type: string (or Expression with resultType string).
     * 
     */
    public Optional> userTenant() {
        return Optional.ofNullable(this.userTenant);
    }

    /**
     * Web activity authentication user name for basic authentication or ClientID when used for ServicePrincipal. Type: string (or Expression with resultType string).
     * 
     */
    @Import(name="username")
    private @Nullable Output username;

    /**
     * @return Web activity authentication user name for basic authentication or ClientID when used for ServicePrincipal. Type: string (or Expression with resultType string).
     * 
     */
    public Optional> username() {
        return Optional.ofNullable(this.username);
    }

    private WebActivityAuthenticationArgs() {}

    private WebActivityAuthenticationArgs(WebActivityAuthenticationArgs $) {
        this.credential = $.credential;
        this.password = $.password;
        this.pfx = $.pfx;
        this.resource = $.resource;
        this.type = $.type;
        this.userTenant = $.userTenant;
        this.username = $.username;
    }

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

    public static final class Builder {
        private WebActivityAuthenticationArgs $;

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

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

        /**
         * @param credential The credential reference containing authentication information.
         * 
         * @return builder
         * 
         */
        public Builder credential(@Nullable Output credential) {
            $.credential = credential;
            return this;
        }

        /**
         * @param credential The credential reference containing authentication information.
         * 
         * @return builder
         * 
         */
        public Builder credential(CredentialReferenceArgs credential) {
            return credential(Output.of(credential));
        }

        /**
         * @param password Password for the PFX file or basic authentication / Secret when used for ServicePrincipal
         * 
         * @return builder
         * 
         */
        public Builder password(@Nullable Output> password) {
            $.password = password;
            return this;
        }

        /**
         * @param password Password for the PFX file or basic authentication / Secret when used for ServicePrincipal
         * 
         * @return builder
         * 
         */
        public Builder password(Either password) {
            return password(Output.of(password));
        }

        /**
         * @param password Password for the PFX file or basic authentication / Secret when used for ServicePrincipal
         * 
         * @return builder
         * 
         */
        public Builder password(AzureKeyVaultSecretReferenceArgs password) {
            return password(Either.ofLeft(password));
        }

        /**
         * @param password Password for the PFX file or basic authentication / Secret when used for ServicePrincipal
         * 
         * @return builder
         * 
         */
        public Builder password(SecureStringArgs password) {
            return password(Either.ofRight(password));
        }

        /**
         * @param pfx Base64-encoded contents of a PFX file or Certificate when used for ServicePrincipal
         * 
         * @return builder
         * 
         */
        public Builder pfx(@Nullable Output> pfx) {
            $.pfx = pfx;
            return this;
        }

        /**
         * @param pfx Base64-encoded contents of a PFX file or Certificate when used for ServicePrincipal
         * 
         * @return builder
         * 
         */
        public Builder pfx(Either pfx) {
            return pfx(Output.of(pfx));
        }

        /**
         * @param pfx Base64-encoded contents of a PFX file or Certificate when used for ServicePrincipal
         * 
         * @return builder
         * 
         */
        public Builder pfx(AzureKeyVaultSecretReferenceArgs pfx) {
            return pfx(Either.ofLeft(pfx));
        }

        /**
         * @param pfx Base64-encoded contents of a PFX file or Certificate when used for ServicePrincipal
         * 
         * @return builder
         * 
         */
        public Builder pfx(SecureStringArgs pfx) {
            return pfx(Either.ofRight(pfx));
        }

        /**
         * @param resource Resource for which Azure Auth token will be requested when using MSI Authentication. Type: string (or Expression with resultType string).
         * 
         * @return builder
         * 
         */
        public Builder resource(@Nullable Output resource) {
            $.resource = resource;
            return this;
        }

        /**
         * @param resource Resource for which Azure Auth token will be requested when using MSI Authentication. Type: string (or Expression with resultType string).
         * 
         * @return builder
         * 
         */
        public Builder resource(Object resource) {
            return resource(Output.of(resource));
        }

        /**
         * @param type Web activity authentication (Basic/ClientCertificate/MSI/ServicePrincipal)
         * 
         * @return builder
         * 
         */
        public Builder type(@Nullable Output type) {
            $.type = type;
            return this;
        }

        /**
         * @param type Web activity authentication (Basic/ClientCertificate/MSI/ServicePrincipal)
         * 
         * @return builder
         * 
         */
        public Builder type(String type) {
            return type(Output.of(type));
        }

        /**
         * @param userTenant TenantId for which Azure Auth token will be requested when using ServicePrincipal Authentication. Type: string (or Expression with resultType string).
         * 
         * @return builder
         * 
         */
        public Builder userTenant(@Nullable Output userTenant) {
            $.userTenant = userTenant;
            return this;
        }

        /**
         * @param userTenant TenantId for which Azure Auth token will be requested when using ServicePrincipal Authentication. Type: string (or Expression with resultType string).
         * 
         * @return builder
         * 
         */
        public Builder userTenant(Object userTenant) {
            return userTenant(Output.of(userTenant));
        }

        /**
         * @param username Web activity authentication user name for basic authentication or ClientID when used for ServicePrincipal. Type: string (or Expression with resultType string).
         * 
         * @return builder
         * 
         */
        public Builder username(@Nullable Output username) {
            $.username = username;
            return this;
        }

        /**
         * @param username Web activity authentication user name for basic authentication or ClientID when used for ServicePrincipal. Type: string (or Expression with resultType string).
         * 
         * @return builder
         * 
         */
        public Builder username(Object username) {
            return username(Output.of(username));
        }

        public WebActivityAuthenticationArgs build() {
            return $;
        }
    }

}