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

com.pulumi.ise.identitymanagement.inputs.CertificateAuthenticationProfileState 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.ise.identitymanagement.inputs;

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


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

    public static final CertificateAuthenticationProfileState Empty = new CertificateAuthenticationProfileState();

    /**
     * Allow as username - Default value: `false`
     * 
     */
    @Import(name="allowedAsUserName")
    private @Nullable Output allowedAsUserName;

    /**
     * @return Allow as username - Default value: `false`
     * 
     */
    public Optional> allowedAsUserName() {
        return Optional.ofNullable(this.allowedAsUserName);
    }

    /**
     * Attribute name of the Certificate Profile - used only when CERTIFICATE is chosen in `username_from`. - Choices:
     * `SUBJECT_COMMON_NAME`, `SUBJECT_ALTERNATIVE_NAME`, `SUBJECT_SERIAL_NUMBER`, `SUBJECT`,
     * `SUBJECT_ALTERNATIVE_NAME_OTHER_NAME`, `SUBJECT_ALTERNATIVE_NAME_EMAIL`, `SUBJECT_ALTERNATIVE_NAME_DNS` - Default value:
     * `SUBJECT_COMMON_NAME`
     * 
     */
    @Import(name="certificateAttributeName")
    private @Nullable Output certificateAttributeName;

    /**
     * @return Attribute name of the Certificate Profile - used only when CERTIFICATE is chosen in `username_from`. - Choices:
     * `SUBJECT_COMMON_NAME`, `SUBJECT_ALTERNATIVE_NAME`, `SUBJECT_SERIAL_NUMBER`, `SUBJECT`,
     * `SUBJECT_ALTERNATIVE_NAME_OTHER_NAME`, `SUBJECT_ALTERNATIVE_NAME_EMAIL`, `SUBJECT_ALTERNATIVE_NAME_DNS` - Default value:
     * `SUBJECT_COMMON_NAME`
     * 
     */
    public Optional> certificateAttributeName() {
        return Optional.ofNullable(this.certificateAttributeName);
    }

    /**
     * Description
     * 
     */
    @Import(name="description")
    private @Nullable Output description;

    /**
     * @return Description
     * 
     */
    public Optional> description() {
        return Optional.ofNullable(this.description);
    }

    /**
     * Referred IDStore name for the Certificate Profile or `[not applicable]` in case no identity store is chosen - Default
     * value: `[not applicable]`
     * 
     */
    @Import(name="externalIdentityStoreName")
    private @Nullable Output externalIdentityStoreName;

    /**
     * @return Referred IDStore name for the Certificate Profile or `[not applicable]` in case no identity store is chosen - Default
     * value: `[not applicable]`
     * 
     */
    public Optional> externalIdentityStoreName() {
        return Optional.ofNullable(this.externalIdentityStoreName);
    }

    /**
     * Match mode of the Certificate Profile. Allowed values: NEVER, RESOLVE_IDENTITY_AMBIGUITY, BINARY_COMPARISON - Choices:
     * `NEVER`, `RESOLVE_IDENTITY_AMBIGUITY`, `BINARY_COMPARISON` - Default value: `NEVER`
     * 
     */
    @Import(name="matchMode")
    private @Nullable Output matchMode;

    /**
     * @return Match mode of the Certificate Profile. Allowed values: NEVER, RESOLVE_IDENTITY_AMBIGUITY, BINARY_COMPARISON - Choices:
     * `NEVER`, `RESOLVE_IDENTITY_AMBIGUITY`, `BINARY_COMPARISON` - Default value: `NEVER`
     * 
     */
    public Optional> matchMode() {
        return Optional.ofNullable(this.matchMode);
    }

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

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

    /**
     * The attribute in the certificate where the user name should be taken from. Allowed values: `CERTIFICATE` (for a specific
     * attribute as defined in certificateAttributeName), `UPN` (for using any Subject or Alternative Name Attributes in the
     * Certificate - an option only in AD) - Choices: `CERTIFICATE`, `UPN` - Default value: `CERTIFICATE`
     * 
     */
    @Import(name="usernameFrom")
    private @Nullable Output usernameFrom;

    /**
     * @return The attribute in the certificate where the user name should be taken from. Allowed values: `CERTIFICATE` (for a specific
     * attribute as defined in certificateAttributeName), `UPN` (for using any Subject or Alternative Name Attributes in the
     * Certificate - an option only in AD) - Choices: `CERTIFICATE`, `UPN` - Default value: `CERTIFICATE`
     * 
     */
    public Optional> usernameFrom() {
        return Optional.ofNullable(this.usernameFrom);
    }

    private CertificateAuthenticationProfileState() {}

    private CertificateAuthenticationProfileState(CertificateAuthenticationProfileState $) {
        this.allowedAsUserName = $.allowedAsUserName;
        this.certificateAttributeName = $.certificateAttributeName;
        this.description = $.description;
        this.externalIdentityStoreName = $.externalIdentityStoreName;
        this.matchMode = $.matchMode;
        this.name = $.name;
        this.usernameFrom = $.usernameFrom;
    }

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

    public static final class Builder {
        private CertificateAuthenticationProfileState $;

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

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

        /**
         * @param allowedAsUserName Allow as username - Default value: `false`
         * 
         * @return builder
         * 
         */
        public Builder allowedAsUserName(@Nullable Output allowedAsUserName) {
            $.allowedAsUserName = allowedAsUserName;
            return this;
        }

        /**
         * @param allowedAsUserName Allow as username - Default value: `false`
         * 
         * @return builder
         * 
         */
        public Builder allowedAsUserName(Boolean allowedAsUserName) {
            return allowedAsUserName(Output.of(allowedAsUserName));
        }

        /**
         * @param certificateAttributeName Attribute name of the Certificate Profile - used only when CERTIFICATE is chosen in `username_from`. - Choices:
         * `SUBJECT_COMMON_NAME`, `SUBJECT_ALTERNATIVE_NAME`, `SUBJECT_SERIAL_NUMBER`, `SUBJECT`,
         * `SUBJECT_ALTERNATIVE_NAME_OTHER_NAME`, `SUBJECT_ALTERNATIVE_NAME_EMAIL`, `SUBJECT_ALTERNATIVE_NAME_DNS` - Default value:
         * `SUBJECT_COMMON_NAME`
         * 
         * @return builder
         * 
         */
        public Builder certificateAttributeName(@Nullable Output certificateAttributeName) {
            $.certificateAttributeName = certificateAttributeName;
            return this;
        }

        /**
         * @param certificateAttributeName Attribute name of the Certificate Profile - used only when CERTIFICATE is chosen in `username_from`. - Choices:
         * `SUBJECT_COMMON_NAME`, `SUBJECT_ALTERNATIVE_NAME`, `SUBJECT_SERIAL_NUMBER`, `SUBJECT`,
         * `SUBJECT_ALTERNATIVE_NAME_OTHER_NAME`, `SUBJECT_ALTERNATIVE_NAME_EMAIL`, `SUBJECT_ALTERNATIVE_NAME_DNS` - Default value:
         * `SUBJECT_COMMON_NAME`
         * 
         * @return builder
         * 
         */
        public Builder certificateAttributeName(String certificateAttributeName) {
            return certificateAttributeName(Output.of(certificateAttributeName));
        }

        /**
         * @param description Description
         * 
         * @return builder
         * 
         */
        public Builder description(@Nullable Output description) {
            $.description = description;
            return this;
        }

        /**
         * @param description Description
         * 
         * @return builder
         * 
         */
        public Builder description(String description) {
            return description(Output.of(description));
        }

        /**
         * @param externalIdentityStoreName Referred IDStore name for the Certificate Profile or `[not applicable]` in case no identity store is chosen - Default
         * value: `[not applicable]`
         * 
         * @return builder
         * 
         */
        public Builder externalIdentityStoreName(@Nullable Output externalIdentityStoreName) {
            $.externalIdentityStoreName = externalIdentityStoreName;
            return this;
        }

        /**
         * @param externalIdentityStoreName Referred IDStore name for the Certificate Profile or `[not applicable]` in case no identity store is chosen - Default
         * value: `[not applicable]`
         * 
         * @return builder
         * 
         */
        public Builder externalIdentityStoreName(String externalIdentityStoreName) {
            return externalIdentityStoreName(Output.of(externalIdentityStoreName));
        }

        /**
         * @param matchMode Match mode of the Certificate Profile. Allowed values: NEVER, RESOLVE_IDENTITY_AMBIGUITY, BINARY_COMPARISON - Choices:
         * `NEVER`, `RESOLVE_IDENTITY_AMBIGUITY`, `BINARY_COMPARISON` - Default value: `NEVER`
         * 
         * @return builder
         * 
         */
        public Builder matchMode(@Nullable Output matchMode) {
            $.matchMode = matchMode;
            return this;
        }

        /**
         * @param matchMode Match mode of the Certificate Profile. Allowed values: NEVER, RESOLVE_IDENTITY_AMBIGUITY, BINARY_COMPARISON - Choices:
         * `NEVER`, `RESOLVE_IDENTITY_AMBIGUITY`, `BINARY_COMPARISON` - Default value: `NEVER`
         * 
         * @return builder
         * 
         */
        public Builder matchMode(String matchMode) {
            return matchMode(Output.of(matchMode));
        }

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

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

        /**
         * @param usernameFrom The attribute in the certificate where the user name should be taken from. Allowed values: `CERTIFICATE` (for a specific
         * attribute as defined in certificateAttributeName), `UPN` (for using any Subject or Alternative Name Attributes in the
         * Certificate - an option only in AD) - Choices: `CERTIFICATE`, `UPN` - Default value: `CERTIFICATE`
         * 
         * @return builder
         * 
         */
        public Builder usernameFrom(@Nullable Output usernameFrom) {
            $.usernameFrom = usernameFrom;
            return this;
        }

        /**
         * @param usernameFrom The attribute in the certificate where the user name should be taken from. Allowed values: `CERTIFICATE` (for a specific
         * attribute as defined in certificateAttributeName), `UPN` (for using any Subject or Alternative Name Attributes in the
         * Certificate - an option only in AD) - Choices: `CERTIFICATE`, `UPN` - Default value: `CERTIFICATE`
         * 
         * @return builder
         * 
         */
        public Builder usernameFrom(String usernameFrom) {
            return usernameFrom(Output.of(usernameFrom));
        }

        public CertificateAuthenticationProfileState build() {
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy