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

com.pulumi.alicloud.rds.RdsAccountArgs Maven / Gradle / Ivy

There is a newer version: 3.63.0-alpha.1727424957
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.alicloud.rds;

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


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

    public static final RdsAccountArgs Empty = new RdsAccountArgs();

    /**
     * The description of the account. The value must be 2 to 256 characters in length. The value can contain letters, digits, underscores (_), and hyphens (-), and must start with a letter.
     * 
     * > **NOTE:** The name cannot start with http:// or https://.
     * 
     */
    @Import(name="accountDescription")
    private @Nullable Output accountDescription;

    /**
     * @return The description of the account. The value must be 2 to 256 characters in length. The value can contain letters, digits, underscores (_), and hyphens (-), and must start with a letter.
     * 
     * > **NOTE:** The name cannot start with http:// or https://.
     * 
     */
    public Optional> accountDescription() {
        return Optional.ofNullable(this.accountDescription);
    }

    /**
     * The name of the database account.
     * * The name must be unique.
     * * The name can contain lowercase letters, digits, and underscores (_). For MySQL databases, the name can contain uppercase letters.
     * * The name must start with a letter and end with a letter or digit.
     * * For MySQL databases, the name of the privileged account cannot be the same as that of the standard account. For example, if the name of the privileged account is Test1, the name of the standard account cannot be test1.
     * * The length of the value must meet the following requirements:
     * * If the instance runs MySQL 5.7 or MySQL 8.0, the value must be 2 to 32 characters in length.
     * * If the instance runs MySQL 5.6, the value must be 2 to 16 characters in length.
     * * If the instance runs SQL Server, the value must be 2 to 64 characters in length.
     * * If the instance runs PostgreSQL with cloud disks, the value must be 2 to 63 characters in length.
     * * If the instance runs PostgreSQL with local disks, the value must be 2 to 16 characters in length.
     * * If the instance runs MariaDB, the value must be 2 to 16 characters in length.
     * * For more information about invalid characters, See [Forbidden keywords](https://help.aliyun.com/zh/rds/developer-reference/forbidden-keywords?spm=api-workbench.API%20Document.0.0.529e2defHKoZ3o).
     * 
     */
    @Import(name="accountName")
    private @Nullable Output accountName;

    /**
     * @return The name of the database account.
     * * The name must be unique.
     * * The name can contain lowercase letters, digits, and underscores (_). For MySQL databases, the name can contain uppercase letters.
     * * The name must start with a letter and end with a letter or digit.
     * * For MySQL databases, the name of the privileged account cannot be the same as that of the standard account. For example, if the name of the privileged account is Test1, the name of the standard account cannot be test1.
     * * The length of the value must meet the following requirements:
     * * If the instance runs MySQL 5.7 or MySQL 8.0, the value must be 2 to 32 characters in length.
     * * If the instance runs MySQL 5.6, the value must be 2 to 16 characters in length.
     * * If the instance runs SQL Server, the value must be 2 to 64 characters in length.
     * * If the instance runs PostgreSQL with cloud disks, the value must be 2 to 63 characters in length.
     * * If the instance runs PostgreSQL with local disks, the value must be 2 to 16 characters in length.
     * * If the instance runs MariaDB, the value must be 2 to 16 characters in length.
     * * For more information about invalid characters, See [Forbidden keywords](https://help.aliyun.com/zh/rds/developer-reference/forbidden-keywords?spm=api-workbench.API%20Document.0.0.529e2defHKoZ3o).
     * 
     */
    public Optional> accountName() {
        return Optional.ofNullable(this.accountName);
    }

    /**
     * The password of the account.
     * * The value must be 8 to 32 characters in length.
     * * The password must contain at least three of the following character types: uppercase letters, lowercase letters, digits, and special characters.
     * * Special characters include ! {@literal @} # $ % ^ & * ( ) _ + - =
     * 
     */
    @Import(name="accountPassword")
    private @Nullable Output accountPassword;

    /**
     * @return The password of the account.
     * * The value must be 8 to 32 characters in length.
     * * The password must contain at least three of the following character types: uppercase letters, lowercase letters, digits, and special characters.
     * * Special characters include ! {@literal @} # $ % ^ & * ( ) _ + - =
     * 
     */
    public Optional> accountPassword() {
        return Optional.ofNullable(this.accountPassword);
    }

    /**
     * The account type. Valid values:
     * * Normal: standard account (default).
     * * Super: privileged account.
     * * Sysadmin: system admin account. The account type is available only for ApsaraDB RDS for SQL Server instances.
     * 
     * > **NOTE:** Before you create a system admin account, check whether the RDS instance meets all prerequisites. For more information, See [Create a system admin account](https://help.aliyun.com/zh/rds/apsaradb-rds-for-sql-server/create-a-system-admin-account-for-an-apsaradb-rds-for-sql-server-instance?spm=api-workbench.API%20Document.0.0.529e2defHKoZ3o).
     * 
     */
    @Import(name="accountType")
    private @Nullable Output accountType;

    /**
     * @return The account type. Valid values:
     * * Normal: standard account (default).
     * * Super: privileged account.
     * * Sysadmin: system admin account. The account type is available only for ApsaraDB RDS for SQL Server instances.
     * 
     * > **NOTE:** Before you create a system admin account, check whether the RDS instance meets all prerequisites. For more information, See [Create a system admin account](https://help.aliyun.com/zh/rds/apsaradb-rds-for-sql-server/create-a-system-admin-account-for-an-apsaradb-rds-for-sql-server-instance?spm=api-workbench.API%20Document.0.0.529e2defHKoZ3o).
     * 
     */
    public Optional> accountType() {
        return Optional.ofNullable(this.accountType);
    }

    /**
     * The ID of the instance.
     * 
     */
    @Import(name="dbInstanceId")
    private @Nullable Output dbInstanceId;

    /**
     * @return The ID of the instance.
     * 
     */
    public Optional> dbInstanceId() {
        return Optional.ofNullable(this.dbInstanceId);
    }

    /**
     * The attribute has been deprecated from 1.120.0 and using `account_description` instead.
     * 
     * @deprecated
     * Field 'description' has been deprecated from provider version 1.120.0. New field 'account_description' instead.
     * 
     */
    @Deprecated /* Field 'description' has been deprecated from provider version 1.120.0. New field 'account_description' instead. */
    @Import(name="description")
    private @Nullable Output description;

    /**
     * @return The attribute has been deprecated from 1.120.0 and using `account_description` instead.
     * 
     * @deprecated
     * Field 'description' has been deprecated from provider version 1.120.0. New field 'account_description' instead.
     * 
     */
    @Deprecated /* Field 'description' has been deprecated from provider version 1.120.0. New field 'account_description' instead. */
    public Optional> description() {
        return Optional.ofNullable(this.description);
    }

    /**
     * The attribute has been deprecated from 1.120.0 and using `db_instance_id` instead.
     * 
     * @deprecated
     * Field 'instance_id' has been deprecated from provider version 1.120.0. New field 'db_instance_id' instead.
     * 
     */
    @Deprecated /* Field 'instance_id' has been deprecated from provider version 1.120.0. New field 'db_instance_id' instead. */
    @Import(name="instanceId")
    private @Nullable Output instanceId;

    /**
     * @return The attribute has been deprecated from 1.120.0 and using `db_instance_id` instead.
     * 
     * @deprecated
     * Field 'instance_id' has been deprecated from provider version 1.120.0. New field 'db_instance_id' instead.
     * 
     */
    @Deprecated /* Field 'instance_id' has been deprecated from provider version 1.120.0. New field 'db_instance_id' instead. */
    public Optional> instanceId() {
        return Optional.ofNullable(this.instanceId);
    }

    /**
     * An KMS encrypts password used to a db account. If the `account_password` is filled in, this field will be ignored.
     * 
     */
    @Import(name="kmsEncryptedPassword")
    private @Nullable Output kmsEncryptedPassword;

    /**
     * @return An KMS encrypts password used to a db account. If the `account_password` is filled in, this field will be ignored.
     * 
     */
    public Optional> kmsEncryptedPassword() {
        return Optional.ofNullable(this.kmsEncryptedPassword);
    }

    /**
     * An KMS encryption context used to decrypt `kms_encrypted_password` before creating or updating a db account with `kms_encrypted_password`. See [Encryption Context](https://www.alibabacloud.com/help/doc-detail/42975.htm). It is valid when `kms_encrypted_password` is set.
     * 
     */
    @Import(name="kmsEncryptionContext")
    private @Nullable Output> kmsEncryptionContext;

    /**
     * @return An KMS encryption context used to decrypt `kms_encrypted_password` before creating or updating a db account with `kms_encrypted_password`. See [Encryption Context](https://www.alibabacloud.com/help/doc-detail/42975.htm). It is valid when `kms_encrypted_password` is set.
     * 
     */
    public Optional>> kmsEncryptionContext() {
        return Optional.ofNullable(this.kmsEncryptionContext);
    }

    /**
     * The attribute has been deprecated from 1.120.0 and using `account_name` instead.
     * 
     * @deprecated
     * Field 'name' has been deprecated from provider version 1.120.0. New field 'account_name' instead.
     * 
     */
    @Deprecated /* Field 'name' has been deprecated from provider version 1.120.0. New field 'account_name' instead. */
    @Import(name="name")
    private @Nullable Output name;

    /**
     * @return The attribute has been deprecated from 1.120.0 and using `account_name` instead.
     * 
     * @deprecated
     * Field 'name' has been deprecated from provider version 1.120.0. New field 'account_name' instead.
     * 
     */
    @Deprecated /* Field 'name' has been deprecated from provider version 1.120.0. New field 'account_name' instead. */
    public Optional> name() {
        return Optional.ofNullable(this.name);
    }

    /**
     * The attribute has been deprecated from 1.120.0 and using `account_password` instead.
     * 
     * @deprecated
     * Field 'password' has been deprecated from provider version 1.120.0. New field 'account_password' instead.
     * 
     */
    @Deprecated /* Field 'password' has been deprecated from provider version 1.120.0. New field 'account_password' instead. */
    @Import(name="password")
    private @Nullable Output password;

    /**
     * @return The attribute has been deprecated from 1.120.0 and using `account_password` instead.
     * 
     * @deprecated
     * Field 'password' has been deprecated from provider version 1.120.0. New field 'account_password' instead.
     * 
     */
    @Deprecated /* Field 'password' has been deprecated from provider version 1.120.0. New field 'account_password' instead. */
    public Optional> password() {
        return Optional.ofNullable(this.password);
    }

    /**
     * Resets permissions flag of the privileged account. Default to `false`. Set it to `true` can resets permissions of the privileged account.
     * 
     */
    @Import(name="resetPermissionFlag")
    private @Nullable Output resetPermissionFlag;

    /**
     * @return Resets permissions flag of the privileged account. Default to `false`. Set it to `true` can resets permissions of the privileged account.
     * 
     */
    public Optional> resetPermissionFlag() {
        return Optional.ofNullable(this.resetPermissionFlag);
    }

    /**
     * The attribute has been deprecated from 1.120.0 and using `account_type` instead.
     * 
     * > **NOTE**: Only MySQL engine is supported resets permissions of the privileged account.
     * 
     * @deprecated
     * Field 'type' has been deprecated from provider version 1.120.0. New field 'account_type' instead.
     * 
     */
    @Deprecated /* Field 'type' has been deprecated from provider version 1.120.0. New field 'account_type' instead. */
    @Import(name="type")
    private @Nullable Output type;

    /**
     * @return The attribute has been deprecated from 1.120.0 and using `account_type` instead.
     * 
     * > **NOTE**: Only MySQL engine is supported resets permissions of the privileged account.
     * 
     * @deprecated
     * Field 'type' has been deprecated from provider version 1.120.0. New field 'account_type' instead.
     * 
     */
    @Deprecated /* Field 'type' has been deprecated from provider version 1.120.0. New field 'account_type' instead. */
    public Optional> type() {
        return Optional.ofNullable(this.type);
    }

    private RdsAccountArgs() {}

    private RdsAccountArgs(RdsAccountArgs $) {
        this.accountDescription = $.accountDescription;
        this.accountName = $.accountName;
        this.accountPassword = $.accountPassword;
        this.accountType = $.accountType;
        this.dbInstanceId = $.dbInstanceId;
        this.description = $.description;
        this.instanceId = $.instanceId;
        this.kmsEncryptedPassword = $.kmsEncryptedPassword;
        this.kmsEncryptionContext = $.kmsEncryptionContext;
        this.name = $.name;
        this.password = $.password;
        this.resetPermissionFlag = $.resetPermissionFlag;
        this.type = $.type;
    }

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

    public static final class Builder {
        private RdsAccountArgs $;

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

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

        /**
         * @param accountDescription The description of the account. The value must be 2 to 256 characters in length. The value can contain letters, digits, underscores (_), and hyphens (-), and must start with a letter.
         * 
         * > **NOTE:** The name cannot start with http:// or https://.
         * 
         * @return builder
         * 
         */
        public Builder accountDescription(@Nullable Output accountDescription) {
            $.accountDescription = accountDescription;
            return this;
        }

        /**
         * @param accountDescription The description of the account. The value must be 2 to 256 characters in length. The value can contain letters, digits, underscores (_), and hyphens (-), and must start with a letter.
         * 
         * > **NOTE:** The name cannot start with http:// or https://.
         * 
         * @return builder
         * 
         */
        public Builder accountDescription(String accountDescription) {
            return accountDescription(Output.of(accountDescription));
        }

        /**
         * @param accountName The name of the database account.
         * * The name must be unique.
         * * The name can contain lowercase letters, digits, and underscores (_). For MySQL databases, the name can contain uppercase letters.
         * * The name must start with a letter and end with a letter or digit.
         * * For MySQL databases, the name of the privileged account cannot be the same as that of the standard account. For example, if the name of the privileged account is Test1, the name of the standard account cannot be test1.
         * * The length of the value must meet the following requirements:
         * * If the instance runs MySQL 5.7 or MySQL 8.0, the value must be 2 to 32 characters in length.
         * * If the instance runs MySQL 5.6, the value must be 2 to 16 characters in length.
         * * If the instance runs SQL Server, the value must be 2 to 64 characters in length.
         * * If the instance runs PostgreSQL with cloud disks, the value must be 2 to 63 characters in length.
         * * If the instance runs PostgreSQL with local disks, the value must be 2 to 16 characters in length.
         * * If the instance runs MariaDB, the value must be 2 to 16 characters in length.
         * * For more information about invalid characters, See [Forbidden keywords](https://help.aliyun.com/zh/rds/developer-reference/forbidden-keywords?spm=api-workbench.API%20Document.0.0.529e2defHKoZ3o).
         * 
         * @return builder
         * 
         */
        public Builder accountName(@Nullable Output accountName) {
            $.accountName = accountName;
            return this;
        }

        /**
         * @param accountName The name of the database account.
         * * The name must be unique.
         * * The name can contain lowercase letters, digits, and underscores (_). For MySQL databases, the name can contain uppercase letters.
         * * The name must start with a letter and end with a letter or digit.
         * * For MySQL databases, the name of the privileged account cannot be the same as that of the standard account. For example, if the name of the privileged account is Test1, the name of the standard account cannot be test1.
         * * The length of the value must meet the following requirements:
         * * If the instance runs MySQL 5.7 or MySQL 8.0, the value must be 2 to 32 characters in length.
         * * If the instance runs MySQL 5.6, the value must be 2 to 16 characters in length.
         * * If the instance runs SQL Server, the value must be 2 to 64 characters in length.
         * * If the instance runs PostgreSQL with cloud disks, the value must be 2 to 63 characters in length.
         * * If the instance runs PostgreSQL with local disks, the value must be 2 to 16 characters in length.
         * * If the instance runs MariaDB, the value must be 2 to 16 characters in length.
         * * For more information about invalid characters, See [Forbidden keywords](https://help.aliyun.com/zh/rds/developer-reference/forbidden-keywords?spm=api-workbench.API%20Document.0.0.529e2defHKoZ3o).
         * 
         * @return builder
         * 
         */
        public Builder accountName(String accountName) {
            return accountName(Output.of(accountName));
        }

        /**
         * @param accountPassword The password of the account.
         * * The value must be 8 to 32 characters in length.
         * * The password must contain at least three of the following character types: uppercase letters, lowercase letters, digits, and special characters.
         * * Special characters include ! {@literal @} # $ % ^ & * ( ) _ + - =
         * 
         * @return builder
         * 
         */
        public Builder accountPassword(@Nullable Output accountPassword) {
            $.accountPassword = accountPassword;
            return this;
        }

        /**
         * @param accountPassword The password of the account.
         * * The value must be 8 to 32 characters in length.
         * * The password must contain at least three of the following character types: uppercase letters, lowercase letters, digits, and special characters.
         * * Special characters include ! {@literal @} # $ % ^ & * ( ) _ + - =
         * 
         * @return builder
         * 
         */
        public Builder accountPassword(String accountPassword) {
            return accountPassword(Output.of(accountPassword));
        }

        /**
         * @param accountType The account type. Valid values:
         * * Normal: standard account (default).
         * * Super: privileged account.
         * * Sysadmin: system admin account. The account type is available only for ApsaraDB RDS for SQL Server instances.
         * 
         * > **NOTE:** Before you create a system admin account, check whether the RDS instance meets all prerequisites. For more information, See [Create a system admin account](https://help.aliyun.com/zh/rds/apsaradb-rds-for-sql-server/create-a-system-admin-account-for-an-apsaradb-rds-for-sql-server-instance?spm=api-workbench.API%20Document.0.0.529e2defHKoZ3o).
         * 
         * @return builder
         * 
         */
        public Builder accountType(@Nullable Output accountType) {
            $.accountType = accountType;
            return this;
        }

        /**
         * @param accountType The account type. Valid values:
         * * Normal: standard account (default).
         * * Super: privileged account.
         * * Sysadmin: system admin account. The account type is available only for ApsaraDB RDS for SQL Server instances.
         * 
         * > **NOTE:** Before you create a system admin account, check whether the RDS instance meets all prerequisites. For more information, See [Create a system admin account](https://help.aliyun.com/zh/rds/apsaradb-rds-for-sql-server/create-a-system-admin-account-for-an-apsaradb-rds-for-sql-server-instance?spm=api-workbench.API%20Document.0.0.529e2defHKoZ3o).
         * 
         * @return builder
         * 
         */
        public Builder accountType(String accountType) {
            return accountType(Output.of(accountType));
        }

        /**
         * @param dbInstanceId The ID of the instance.
         * 
         * @return builder
         * 
         */
        public Builder dbInstanceId(@Nullable Output dbInstanceId) {
            $.dbInstanceId = dbInstanceId;
            return this;
        }

        /**
         * @param dbInstanceId The ID of the instance.
         * 
         * @return builder
         * 
         */
        public Builder dbInstanceId(String dbInstanceId) {
            return dbInstanceId(Output.of(dbInstanceId));
        }

        /**
         * @param description The attribute has been deprecated from 1.120.0 and using `account_description` instead.
         * 
         * @return builder
         * 
         * @deprecated
         * Field 'description' has been deprecated from provider version 1.120.0. New field 'account_description' instead.
         * 
         */
        @Deprecated /* Field 'description' has been deprecated from provider version 1.120.0. New field 'account_description' instead. */
        public Builder description(@Nullable Output description) {
            $.description = description;
            return this;
        }

        /**
         * @param description The attribute has been deprecated from 1.120.0 and using `account_description` instead.
         * 
         * @return builder
         * 
         * @deprecated
         * Field 'description' has been deprecated from provider version 1.120.0. New field 'account_description' instead.
         * 
         */
        @Deprecated /* Field 'description' has been deprecated from provider version 1.120.0. New field 'account_description' instead. */
        public Builder description(String description) {
            return description(Output.of(description));
        }

        /**
         * @param instanceId The attribute has been deprecated from 1.120.0 and using `db_instance_id` instead.
         * 
         * @return builder
         * 
         * @deprecated
         * Field 'instance_id' has been deprecated from provider version 1.120.0. New field 'db_instance_id' instead.
         * 
         */
        @Deprecated /* Field 'instance_id' has been deprecated from provider version 1.120.0. New field 'db_instance_id' instead. */
        public Builder instanceId(@Nullable Output instanceId) {
            $.instanceId = instanceId;
            return this;
        }

        /**
         * @param instanceId The attribute has been deprecated from 1.120.0 and using `db_instance_id` instead.
         * 
         * @return builder
         * 
         * @deprecated
         * Field 'instance_id' has been deprecated from provider version 1.120.0. New field 'db_instance_id' instead.
         * 
         */
        @Deprecated /* Field 'instance_id' has been deprecated from provider version 1.120.0. New field 'db_instance_id' instead. */
        public Builder instanceId(String instanceId) {
            return instanceId(Output.of(instanceId));
        }

        /**
         * @param kmsEncryptedPassword An KMS encrypts password used to a db account. If the `account_password` is filled in, this field will be ignored.
         * 
         * @return builder
         * 
         */
        public Builder kmsEncryptedPassword(@Nullable Output kmsEncryptedPassword) {
            $.kmsEncryptedPassword = kmsEncryptedPassword;
            return this;
        }

        /**
         * @param kmsEncryptedPassword An KMS encrypts password used to a db account. If the `account_password` is filled in, this field will be ignored.
         * 
         * @return builder
         * 
         */
        public Builder kmsEncryptedPassword(String kmsEncryptedPassword) {
            return kmsEncryptedPassword(Output.of(kmsEncryptedPassword));
        }

        /**
         * @param kmsEncryptionContext An KMS encryption context used to decrypt `kms_encrypted_password` before creating or updating a db account with `kms_encrypted_password`. See [Encryption Context](https://www.alibabacloud.com/help/doc-detail/42975.htm). It is valid when `kms_encrypted_password` is set.
         * 
         * @return builder
         * 
         */
        public Builder kmsEncryptionContext(@Nullable Output> kmsEncryptionContext) {
            $.kmsEncryptionContext = kmsEncryptionContext;
            return this;
        }

        /**
         * @param kmsEncryptionContext An KMS encryption context used to decrypt `kms_encrypted_password` before creating or updating a db account with `kms_encrypted_password`. See [Encryption Context](https://www.alibabacloud.com/help/doc-detail/42975.htm). It is valid when `kms_encrypted_password` is set.
         * 
         * @return builder
         * 
         */
        public Builder kmsEncryptionContext(Map kmsEncryptionContext) {
            return kmsEncryptionContext(Output.of(kmsEncryptionContext));
        }

        /**
         * @param name The attribute has been deprecated from 1.120.0 and using `account_name` instead.
         * 
         * @return builder
         * 
         * @deprecated
         * Field 'name' has been deprecated from provider version 1.120.0. New field 'account_name' instead.
         * 
         */
        @Deprecated /* Field 'name' has been deprecated from provider version 1.120.0. New field 'account_name' instead. */
        public Builder name(@Nullable Output name) {
            $.name = name;
            return this;
        }

        /**
         * @param name The attribute has been deprecated from 1.120.0 and using `account_name` instead.
         * 
         * @return builder
         * 
         * @deprecated
         * Field 'name' has been deprecated from provider version 1.120.0. New field 'account_name' instead.
         * 
         */
        @Deprecated /* Field 'name' has been deprecated from provider version 1.120.0. New field 'account_name' instead. */
        public Builder name(String name) {
            return name(Output.of(name));
        }

        /**
         * @param password The attribute has been deprecated from 1.120.0 and using `account_password` instead.
         * 
         * @return builder
         * 
         * @deprecated
         * Field 'password' has been deprecated from provider version 1.120.0. New field 'account_password' instead.
         * 
         */
        @Deprecated /* Field 'password' has been deprecated from provider version 1.120.0. New field 'account_password' instead. */
        public Builder password(@Nullable Output password) {
            $.password = password;
            return this;
        }

        /**
         * @param password The attribute has been deprecated from 1.120.0 and using `account_password` instead.
         * 
         * @return builder
         * 
         * @deprecated
         * Field 'password' has been deprecated from provider version 1.120.0. New field 'account_password' instead.
         * 
         */
        @Deprecated /* Field 'password' has been deprecated from provider version 1.120.0. New field 'account_password' instead. */
        public Builder password(String password) {
            return password(Output.of(password));
        }

        /**
         * @param resetPermissionFlag Resets permissions flag of the privileged account. Default to `false`. Set it to `true` can resets permissions of the privileged account.
         * 
         * @return builder
         * 
         */
        public Builder resetPermissionFlag(@Nullable Output resetPermissionFlag) {
            $.resetPermissionFlag = resetPermissionFlag;
            return this;
        }

        /**
         * @param resetPermissionFlag Resets permissions flag of the privileged account. Default to `false`. Set it to `true` can resets permissions of the privileged account.
         * 
         * @return builder
         * 
         */
        public Builder resetPermissionFlag(Boolean resetPermissionFlag) {
            return resetPermissionFlag(Output.of(resetPermissionFlag));
        }

        /**
         * @param type The attribute has been deprecated from 1.120.0 and using `account_type` instead.
         * 
         * > **NOTE**: Only MySQL engine is supported resets permissions of the privileged account.
         * 
         * @return builder
         * 
         * @deprecated
         * Field 'type' has been deprecated from provider version 1.120.0. New field 'account_type' instead.
         * 
         */
        @Deprecated /* Field 'type' has been deprecated from provider version 1.120.0. New field 'account_type' instead. */
        public Builder type(@Nullable Output type) {
            $.type = type;
            return this;
        }

        /**
         * @param type The attribute has been deprecated from 1.120.0 and using `account_type` instead.
         * 
         * > **NOTE**: Only MySQL engine is supported resets permissions of the privileged account.
         * 
         * @return builder
         * 
         * @deprecated
         * Field 'type' has been deprecated from provider version 1.120.0. New field 'account_type' instead.
         * 
         */
        @Deprecated /* Field 'type' has been deprecated from provider version 1.120.0. New field 'account_type' instead. */
        public Builder type(String type) {
            return type(Output.of(type));
        }

        public RdsAccountArgs build() {
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy