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

com.pulumi.okta.policy.MfaArgs 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.okta.policy;

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


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

    public static final MfaArgs Empty = new MfaArgs();

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

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

    @Import(name="duo")
    private @Nullable Output> duo;

    public Optional>> duo() {
        return Optional.ofNullable(this.duo);
    }

    /**
     * @deprecated
     * Since okta now support multiple external_idps, this will be deprecated. Please use `external_idps` instead
     * 
     */
    @Deprecated /* Since okta now support multiple external_idps, this will be deprecated. Please use `external_idps` instead */
    @Import(name="externalIdp")
    private @Nullable Output> externalIdp;

    /**
     * @deprecated
     * Since okta now support multiple external_idps, this will be deprecated. Please use `external_idps` instead
     * 
     */
    @Deprecated /* Since okta now support multiple external_idps, this will be deprecated. Please use `external_idps` instead */
    public Optional>> externalIdp() {
        return Optional.ofNullable(this.externalIdp);
    }

    @Import(name="externalIdps")
    private @Nullable Output>> externalIdps;

    public Optional>>> externalIdps() {
        return Optional.ofNullable(this.externalIdps);
    }

    @Import(name="fidoU2f")
    private @Nullable Output> fidoU2f;

    public Optional>> fidoU2f() {
        return Optional.ofNullable(this.fidoU2f);
    }

    @Import(name="fidoWebauthn")
    private @Nullable Output> fidoWebauthn;

    public Optional>> fidoWebauthn() {
        return Optional.ofNullable(this.fidoWebauthn);
    }

    @Import(name="googleOtp")
    private @Nullable Output> googleOtp;

    public Optional>> googleOtp() {
        return Optional.ofNullable(this.googleOtp);
    }

    /**
     * List of Group IDs to Include
     * 
     */
    @Import(name="groupsIncludeds")
    private @Nullable Output> groupsIncludeds;

    /**
     * @return List of Group IDs to Include
     * 
     */
    public Optional>> groupsIncludeds() {
        return Optional.ofNullable(this.groupsIncludeds);
    }

    @Import(name="hotp")
    private @Nullable Output> hotp;

    public Optional>> hotp() {
        return Optional.ofNullable(this.hotp);
    }

    /**
     * Is the policy using Okta Identity Engine (OIE) with authenticators instead of factors?
     * 
     */
    @Import(name="isOie")
    private @Nullable Output isOie;

    /**
     * @return Is the policy using Okta Identity Engine (OIE) with authenticators instead of factors?
     * 
     */
    public Optional> isOie() {
        return Optional.ofNullable(this.isOie);
    }

    /**
     * Policy Name
     * 
     */
    @Import(name="name")
    private @Nullable Output name;

    /**
     * @return Policy Name
     * 
     */
    public Optional> name() {
        return Optional.ofNullable(this.name);
    }

    @Import(name="oktaCall")
    private @Nullable Output> oktaCall;

    public Optional>> oktaCall() {
        return Optional.ofNullable(this.oktaCall);
    }

    @Import(name="oktaEmail")
    private @Nullable Output> oktaEmail;

    public Optional>> oktaEmail() {
        return Optional.ofNullable(this.oktaEmail);
    }

    @Import(name="oktaOtp")
    private @Nullable Output> oktaOtp;

    public Optional>> oktaOtp() {
        return Optional.ofNullable(this.oktaOtp);
    }

    @Import(name="oktaPassword")
    private @Nullable Output> oktaPassword;

    public Optional>> oktaPassword() {
        return Optional.ofNullable(this.oktaPassword);
    }

    @Import(name="oktaPush")
    private @Nullable Output> oktaPush;

    public Optional>> oktaPush() {
        return Optional.ofNullable(this.oktaPush);
    }

    @Import(name="oktaQuestion")
    private @Nullable Output> oktaQuestion;

    public Optional>> oktaQuestion() {
        return Optional.ofNullable(this.oktaQuestion);
    }

    @Import(name="oktaSms")
    private @Nullable Output> oktaSms;

    public Optional>> oktaSms() {
        return Optional.ofNullable(this.oktaSms);
    }

    @Import(name="oktaVerify")
    private @Nullable Output> oktaVerify;

    public Optional>> oktaVerify() {
        return Optional.ofNullable(this.oktaVerify);
    }

    @Import(name="onpremMfa")
    private @Nullable Output> onpremMfa;

    public Optional>> onpremMfa() {
        return Optional.ofNullable(this.onpremMfa);
    }

    @Import(name="phoneNumber")
    private @Nullable Output> phoneNumber;

    public Optional>> phoneNumber() {
        return Optional.ofNullable(this.phoneNumber);
    }

    /**
     * Policy Priority, this attribute can be set to a valid priority. To avoid endless diff situation we error if an invalid priority is provided. API defaults it to the last (lowest) if not there.
     * 
     */
    @Import(name="priority")
    private @Nullable Output priority;

    /**
     * @return Policy Priority, this attribute can be set to a valid priority. To avoid endless diff situation we error if an invalid priority is provided. API defaults it to the last (lowest) if not there.
     * 
     */
    public Optional> priority() {
        return Optional.ofNullable(this.priority);
    }

    @Import(name="rsaToken")
    private @Nullable Output> rsaToken;

    public Optional>> rsaToken() {
        return Optional.ofNullable(this.rsaToken);
    }

    @Import(name="securityQuestion")
    private @Nullable Output> securityQuestion;

    public Optional>> securityQuestion() {
        return Optional.ofNullable(this.securityQuestion);
    }

    /**
     * Policy Status: `ACTIVE` or `INACTIVE`. Default: `ACTIVE`
     * 
     */
    @Import(name="status")
    private @Nullable Output status;

    /**
     * @return Policy Status: `ACTIVE` or `INACTIVE`. Default: `ACTIVE`
     * 
     */
    public Optional> status() {
        return Optional.ofNullable(this.status);
    }

    @Import(name="symantecVip")
    private @Nullable Output> symantecVip;

    public Optional>> symantecVip() {
        return Optional.ofNullable(this.symantecVip);
    }

    @Import(name="webauthn")
    private @Nullable Output> webauthn;

    public Optional>> webauthn() {
        return Optional.ofNullable(this.webauthn);
    }

    @Import(name="yubikeyToken")
    private @Nullable Output> yubikeyToken;

    public Optional>> yubikeyToken() {
        return Optional.ofNullable(this.yubikeyToken);
    }

    private MfaArgs() {}

    private MfaArgs(MfaArgs $) {
        this.description = $.description;
        this.duo = $.duo;
        this.externalIdp = $.externalIdp;
        this.externalIdps = $.externalIdps;
        this.fidoU2f = $.fidoU2f;
        this.fidoWebauthn = $.fidoWebauthn;
        this.googleOtp = $.googleOtp;
        this.groupsIncludeds = $.groupsIncludeds;
        this.hotp = $.hotp;
        this.isOie = $.isOie;
        this.name = $.name;
        this.oktaCall = $.oktaCall;
        this.oktaEmail = $.oktaEmail;
        this.oktaOtp = $.oktaOtp;
        this.oktaPassword = $.oktaPassword;
        this.oktaPush = $.oktaPush;
        this.oktaQuestion = $.oktaQuestion;
        this.oktaSms = $.oktaSms;
        this.oktaVerify = $.oktaVerify;
        this.onpremMfa = $.onpremMfa;
        this.phoneNumber = $.phoneNumber;
        this.priority = $.priority;
        this.rsaToken = $.rsaToken;
        this.securityQuestion = $.securityQuestion;
        this.status = $.status;
        this.symantecVip = $.symantecVip;
        this.webauthn = $.webauthn;
        this.yubikeyToken = $.yubikeyToken;
    }

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

    public static final class Builder {
        private MfaArgs $;

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

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

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

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

        public Builder duo(@Nullable Output> duo) {
            $.duo = duo;
            return this;
        }

        public Builder duo(Map duo) {
            return duo(Output.of(duo));
        }

        /**
         * @return builder
         * 
         * @deprecated
         * Since okta now support multiple external_idps, this will be deprecated. Please use `external_idps` instead
         * 
         */
        @Deprecated /* Since okta now support multiple external_idps, this will be deprecated. Please use `external_idps` instead */
        public Builder externalIdp(@Nullable Output> externalIdp) {
            $.externalIdp = externalIdp;
            return this;
        }

        /**
         * @return builder
         * 
         * @deprecated
         * Since okta now support multiple external_idps, this will be deprecated. Please use `external_idps` instead
         * 
         */
        @Deprecated /* Since okta now support multiple external_idps, this will be deprecated. Please use `external_idps` instead */
        public Builder externalIdp(Map externalIdp) {
            return externalIdp(Output.of(externalIdp));
        }

        public Builder externalIdps(@Nullable Output>> externalIdps) {
            $.externalIdps = externalIdps;
            return this;
        }

        public Builder externalIdps(List> externalIdps) {
            return externalIdps(Output.of(externalIdps));
        }

        public Builder externalIdps(Map... externalIdps) {
            return externalIdps(List.of(externalIdps));
        }

        public Builder fidoU2f(@Nullable Output> fidoU2f) {
            $.fidoU2f = fidoU2f;
            return this;
        }

        public Builder fidoU2f(Map fidoU2f) {
            return fidoU2f(Output.of(fidoU2f));
        }

        public Builder fidoWebauthn(@Nullable Output> fidoWebauthn) {
            $.fidoWebauthn = fidoWebauthn;
            return this;
        }

        public Builder fidoWebauthn(Map fidoWebauthn) {
            return fidoWebauthn(Output.of(fidoWebauthn));
        }

        public Builder googleOtp(@Nullable Output> googleOtp) {
            $.googleOtp = googleOtp;
            return this;
        }

        public Builder googleOtp(Map googleOtp) {
            return googleOtp(Output.of(googleOtp));
        }

        /**
         * @param groupsIncludeds List of Group IDs to Include
         * 
         * @return builder
         * 
         */
        public Builder groupsIncludeds(@Nullable Output> groupsIncludeds) {
            $.groupsIncludeds = groupsIncludeds;
            return this;
        }

        /**
         * @param groupsIncludeds List of Group IDs to Include
         * 
         * @return builder
         * 
         */
        public Builder groupsIncludeds(List groupsIncludeds) {
            return groupsIncludeds(Output.of(groupsIncludeds));
        }

        /**
         * @param groupsIncludeds List of Group IDs to Include
         * 
         * @return builder
         * 
         */
        public Builder groupsIncludeds(String... groupsIncludeds) {
            return groupsIncludeds(List.of(groupsIncludeds));
        }

        public Builder hotp(@Nullable Output> hotp) {
            $.hotp = hotp;
            return this;
        }

        public Builder hotp(Map hotp) {
            return hotp(Output.of(hotp));
        }

        /**
         * @param isOie Is the policy using Okta Identity Engine (OIE) with authenticators instead of factors?
         * 
         * @return builder
         * 
         */
        public Builder isOie(@Nullable Output isOie) {
            $.isOie = isOie;
            return this;
        }

        /**
         * @param isOie Is the policy using Okta Identity Engine (OIE) with authenticators instead of factors?
         * 
         * @return builder
         * 
         */
        public Builder isOie(Boolean isOie) {
            return isOie(Output.of(isOie));
        }

        /**
         * @param name Policy Name
         * 
         * @return builder
         * 
         */
        public Builder name(@Nullable Output name) {
            $.name = name;
            return this;
        }

        /**
         * @param name Policy Name
         * 
         * @return builder
         * 
         */
        public Builder name(String name) {
            return name(Output.of(name));
        }

        public Builder oktaCall(@Nullable Output> oktaCall) {
            $.oktaCall = oktaCall;
            return this;
        }

        public Builder oktaCall(Map oktaCall) {
            return oktaCall(Output.of(oktaCall));
        }

        public Builder oktaEmail(@Nullable Output> oktaEmail) {
            $.oktaEmail = oktaEmail;
            return this;
        }

        public Builder oktaEmail(Map oktaEmail) {
            return oktaEmail(Output.of(oktaEmail));
        }

        public Builder oktaOtp(@Nullable Output> oktaOtp) {
            $.oktaOtp = oktaOtp;
            return this;
        }

        public Builder oktaOtp(Map oktaOtp) {
            return oktaOtp(Output.of(oktaOtp));
        }

        public Builder oktaPassword(@Nullable Output> oktaPassword) {
            $.oktaPassword = oktaPassword;
            return this;
        }

        public Builder oktaPassword(Map oktaPassword) {
            return oktaPassword(Output.of(oktaPassword));
        }

        public Builder oktaPush(@Nullable Output> oktaPush) {
            $.oktaPush = oktaPush;
            return this;
        }

        public Builder oktaPush(Map oktaPush) {
            return oktaPush(Output.of(oktaPush));
        }

        public Builder oktaQuestion(@Nullable Output> oktaQuestion) {
            $.oktaQuestion = oktaQuestion;
            return this;
        }

        public Builder oktaQuestion(Map oktaQuestion) {
            return oktaQuestion(Output.of(oktaQuestion));
        }

        public Builder oktaSms(@Nullable Output> oktaSms) {
            $.oktaSms = oktaSms;
            return this;
        }

        public Builder oktaSms(Map oktaSms) {
            return oktaSms(Output.of(oktaSms));
        }

        public Builder oktaVerify(@Nullable Output> oktaVerify) {
            $.oktaVerify = oktaVerify;
            return this;
        }

        public Builder oktaVerify(Map oktaVerify) {
            return oktaVerify(Output.of(oktaVerify));
        }

        public Builder onpremMfa(@Nullable Output> onpremMfa) {
            $.onpremMfa = onpremMfa;
            return this;
        }

        public Builder onpremMfa(Map onpremMfa) {
            return onpremMfa(Output.of(onpremMfa));
        }

        public Builder phoneNumber(@Nullable Output> phoneNumber) {
            $.phoneNumber = phoneNumber;
            return this;
        }

        public Builder phoneNumber(Map phoneNumber) {
            return phoneNumber(Output.of(phoneNumber));
        }

        /**
         * @param priority Policy Priority, this attribute can be set to a valid priority. To avoid endless diff situation we error if an invalid priority is provided. API defaults it to the last (lowest) if not there.
         * 
         * @return builder
         * 
         */
        public Builder priority(@Nullable Output priority) {
            $.priority = priority;
            return this;
        }

        /**
         * @param priority Policy Priority, this attribute can be set to a valid priority. To avoid endless diff situation we error if an invalid priority is provided. API defaults it to the last (lowest) if not there.
         * 
         * @return builder
         * 
         */
        public Builder priority(Integer priority) {
            return priority(Output.of(priority));
        }

        public Builder rsaToken(@Nullable Output> rsaToken) {
            $.rsaToken = rsaToken;
            return this;
        }

        public Builder rsaToken(Map rsaToken) {
            return rsaToken(Output.of(rsaToken));
        }

        public Builder securityQuestion(@Nullable Output> securityQuestion) {
            $.securityQuestion = securityQuestion;
            return this;
        }

        public Builder securityQuestion(Map securityQuestion) {
            return securityQuestion(Output.of(securityQuestion));
        }

        /**
         * @param status Policy Status: `ACTIVE` or `INACTIVE`. Default: `ACTIVE`
         * 
         * @return builder
         * 
         */
        public Builder status(@Nullable Output status) {
            $.status = status;
            return this;
        }

        /**
         * @param status Policy Status: `ACTIVE` or `INACTIVE`. Default: `ACTIVE`
         * 
         * @return builder
         * 
         */
        public Builder status(String status) {
            return status(Output.of(status));
        }

        public Builder symantecVip(@Nullable Output> symantecVip) {
            $.symantecVip = symantecVip;
            return this;
        }

        public Builder symantecVip(Map symantecVip) {
            return symantecVip(Output.of(symantecVip));
        }

        public Builder webauthn(@Nullable Output> webauthn) {
            $.webauthn = webauthn;
            return this;
        }

        public Builder webauthn(Map webauthn) {
            return webauthn(Output.of(webauthn));
        }

        public Builder yubikeyToken(@Nullable Output> yubikeyToken) {
            $.yubikeyToken = yubikeyToken;
            return this;
        }

        public Builder yubikeyToken(Map yubikeyToken) {
            return yubikeyToken(Output.of(yubikeyToken));
        }

        public MfaArgs build() {
            return $;
        }
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy