ALIYUN::POLARDB::Account

ALIYUN::POLARDB::Account类型用于为PolarDB数据库创建账号。

语法

{
  "Type": "ALIYUN::POLARDB::Account",
  "Properties": {
    "DBClusterId": String,
    "AccountDescription": String,
    "AccountName": String,
    "AccountPrivilege": String,
    "DBName": String,
    "AccountType": String,
    "PrivForAllDB": String,
    "AccountPassword": String
  }
}

属性

属性名称

类型

必须

允许更新

描述

约束

DBClusterId

String

集群ID。

AccountDescription

String

账号描述信息。

长度为2~256个字符。不能以http://https://开头。

AccountName

String

账号名。

长度不超过16个字符。以小写英文字母开头,可包含小写英文字母、数字和下划线(_)。

AccountPrivilege

String

账号权限。

取值:

  • ReadWrite(默认值):读写。

  • ReadOnly:只读。

  • DMLOnly:只允许DML。

  • DDLOnly:只允许DDL。

说明

本参数仅适用于PolarRDB MySQL集群普通账号。

DBName

String

授权访问的数据库名称。

多个数据库名以英文逗号(,)分隔。

说明

本参数仅适用于PolarDB MySQL集群普通账号。

PrivForAllDB

String

是否授权当前集群所有库及后续新增所有库的权限。

取值范围如下:

  • 0 或不填:不授权。

  • 1:授权。

说明
  • 必须要传入AccountPrivilege参数才能生效。

  • 当参数设置为1时,表示AccountPrivilege会被授权到所有的库。

AccountType

String

账号类型。

取值:

  • Normal:普通账号。

  • Super(默认值):高权限账号。

AccountPassword

String

密码。

长度为8~32个字符。可包含英文字母、数字和以下特殊字符:

!#$%^&*()_+-=

返回值

Fn::GetAtt

示例

ROSTemplateFormatVersion: '2015-09-01'
Parameters:
  DBClusterId:
    Type: String
    Description: The ID of the ApsaraDB for POLARDB cluster for which a database account is to be created.
  AccountName:
    Type: String
    Description: The name of the database account to be used.
    Default: mytest
  AccountPassword:
    Type: String
    Description: |-
      The password of the database account. The password must comply with the following rules:
      - It must consist of uppercase letters, lowercase letters, digits, and special characters.
      - Special characters include exclamation points (!), number signs (#), dollar signs ($), percent signs (%), carets (^), ampersands (&), asterisks (*), parentheses (()), underscores (_), plus signs (+), hyphens (-), and equal signs (=).
      - It must be 8 to 32 characters in length.
    MinLength: 8
    MaxLength: 32
Resources:
  Account:
    Type: ALIYUN::POLARDB::Account
    Properties:
      DBClusterId:
        Ref: DBClusterId
      AccountName:
        Ref: AccountName
      AccountPrivilege: ReadOnly
      AccountPassword:
        Ref: AccountPassword
      AccountType: Normal
{
  "ROSTemplateFormatVersion": "2015-09-01",
  "Parameters": {
    "DBClusterId": {
      "Type": "String",
      "Description": "The ID of the ApsaraDB for POLARDB cluster for which a database account is to be created."
    },
    "AccountName": {
      "Type": "String",
      "Description": "The name of the database account to be used.",
      "Default": "mytest"
    },
    "AccountPassword": {
      "Type": "String",
      "Description": "The password of the database account. The password must comply with the following rules:\n- It must consist of uppercase letters, lowercase letters, digits, and special characters.\n- Special characters include exclamation points (!), number signs (#), dollar signs ($), percent signs (%), carets (^), ampersands (&), asterisks (*), parentheses (()), underscores (_), plus signs (+), hyphens (-), and equal signs (=).\n- It must be 8 to 32 characters in length.",
      "MinLength": 8,
      "MaxLength": 32
    }
  },
  "Resources": {
    "Account": {
      "Type": "ALIYUN::POLARDB::Account",
      "Properties": {
        "DBClusterId": {
          "Ref": "DBClusterId"
        },
        "AccountName": {
          "Ref": "AccountName"
        },
        "AccountPrivilege": "ReadOnly",
        "AccountPassword": {
          "Ref": "AccountPassword"
        },
        "AccountType": "Normal"
      }
    }
  }
}