import * as pulumi from "@pulumi/pulumi"; /** * Redis Cache Database supports creating multiple accounts. You can select different roles when creating an account. Each role grants different permissions, helping you manage the database with greater precision and enhance data security. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as volcenginecc from "@volcengine/pulumi-volcenginecc"; * * const redisAccountDemo = new volcenginecc.redis.Account("RedisAccountDemo", { * instanceId: "redis-mlrfiqivjttxxxxx", * accountName: "ccapi_test_1", * description: "this is a test", * password: "******", * roleName: "Administrator", * }); * ``` * * ## Import * * ```sh * $ pulumi import volcenginecc:redis/account:Account example "instance_id|account_name" * ``` */ export declare class Account extends pulumi.CustomResource { /** * Get an existing Account resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param state Any extra arguments used during the lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, state?: AccountState, opts?: pulumi.CustomResourceOptions): Account; /** * Returns true if the given object is an instance of Account. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is Account; /** * Account name. The name must meet the following requirements: It must start with a lowercase letter. It must end with a lowercase letter or number. The length must be 2–16 characters. It can only contain lowercase letters, numbers, and underscores (_). */ readonly accountName: pulumi.Output; /** * Account status. The value range is as follows: Available: Available. Unavailable: Unavailable. */ readonly accountStatus: pulumi.Output; /** * Account description, up to 256 characters. Note: If this parameter is empty, no account description is set. */ readonly description: pulumi.Output; /** * Instance ID. */ readonly instanceId: pulumi.Output; /** * Account password. The password must meet the following requirements: Length of 8–32 characters. Must include at least two of the following: uppercase letters, lowercase letters, numbers, or special characters. Supported special characters: ()`~!@#$%^&*-+=_|{}[];<>,.? */ readonly password: pulumi.Output; /** * Account role. The following default roles are supported: Administrator: Allows all Redis instance-supported commands on all Keys. ReadWrite: Allows all commands except admin class commands on all Keys. ReadOnly: Allows all read class commands on all Keys. NotDangerous: Allows all commands except dangerous class commands on all Keys. Note: For details on the specific commands supported by each role's ACL rules, see ACL syntax. */ readonly roleName: pulumi.Output; /** * Create a Account resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args: AccountArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering Account resources. */ export interface AccountState { /** * Account name. The name must meet the following requirements: It must start with a lowercase letter. It must end with a lowercase letter or number. The length must be 2–16 characters. It can only contain lowercase letters, numbers, and underscores (_). */ accountName?: pulumi.Input; /** * Account status. The value range is as follows: Available: Available. Unavailable: Unavailable. */ accountStatus?: pulumi.Input; /** * Account description, up to 256 characters. Note: If this parameter is empty, no account description is set. */ description?: pulumi.Input; /** * Instance ID. */ instanceId?: pulumi.Input; /** * Account password. The password must meet the following requirements: Length of 8–32 characters. Must include at least two of the following: uppercase letters, lowercase letters, numbers, or special characters. Supported special characters: ()`~!@#$%^&*-+=_|{}[];<>,.? */ password?: pulumi.Input; /** * Account role. The following default roles are supported: Administrator: Allows all Redis instance-supported commands on all Keys. ReadWrite: Allows all commands except admin class commands on all Keys. ReadOnly: Allows all read class commands on all Keys. NotDangerous: Allows all commands except dangerous class commands on all Keys. Note: For details on the specific commands supported by each role's ACL rules, see ACL syntax. */ roleName?: pulumi.Input; } /** * The set of arguments for constructing a Account resource. */ export interface AccountArgs { /** * Account name. The name must meet the following requirements: It must start with a lowercase letter. It must end with a lowercase letter or number. The length must be 2–16 characters. It can only contain lowercase letters, numbers, and underscores (_). */ accountName: pulumi.Input; /** * Account description, up to 256 characters. Note: If this parameter is empty, no account description is set. */ description?: pulumi.Input; /** * Instance ID. */ instanceId: pulumi.Input; /** * Account password. The password must meet the following requirements: Length of 8–32 characters. Must include at least two of the following: uppercase letters, lowercase letters, numbers, or special characters. Supported special characters: ()`~!@#$%^&*-+=_|{}[];<>,.? */ password: pulumi.Input; /** * Account role. The following default roles are supported: Administrator: Allows all Redis instance-supported commands on all Keys. ReadWrite: Allows all commands except admin class commands on all Keys. ReadOnly: Allows all read class commands on all Keys. NotDangerous: Allows all commands except dangerous class commands on all Keys. Note: For details on the specific commands supported by each role's ACL rules, see ACL syntax. */ roleName: pulumi.Input; }