ALIYUN::RDS::AccountPrivilege

ALIYUN::RDS::AccountPrivilege用于授权账号访问数据库。

说明

如果您在一个资源栈中同时创建ALIYUN::RDS::Database和ALIYUN::RDS::Account资源,并使用ALIYUN::RDS::AccountPrivilege授权,那么需要在ALIYUN::RDS::Database资源中设置DependsOn属性,并在该属性中指定对应的ALIYUN::RDS::Account资源。

语法

{
  "Type": "ALIYUN::RDS::AccountPrivilege",
  "Properties": {
    "AccountPrivilege": String,
    "DBInstanceId": String,
    "DBName": String,
    "AccountName": String
  }
}

属性

属性名称

类型

必须

允许更新

描述

约束

AccountPrivilege

String

账号权限。

填了多少个 DBName 值,就需要填多少个该参数值。

取值:

  • ReadWrite:读写。

  • ReadOnly:只读

  • DDLOnly:仅执行DDL。

  • DMLOnly:只执行DML。

  • DBOwner:数据库所有者。

说明
  • MySQL和MariaDB可传入ReadWrite、ReadOnly、DDLOnly或DMLOnly。

  • SQL Server可传入ReadWrite、ReadOnly或DBOwner。

  • PostgreSQL云盘版可传入DBOwner。

DBInstanceId

String

实例ID。

无。

DBName

String

需要授权访问的数据库名称。

多个数据库名称之间用英文逗号(,)分隔。

AccountName

String

账号名称。

无。

返回值

Fn::GetAtt

无。

示例

YAML

ROSTemplateFormatVersion: '2015-09-01'
Parameters:
  DBInstanceId:
    Type: String
    AssociationProperty: ALIYUN::RDS::Instance::InstanceId
Resources:
  AccountPrivilege:
    Type: ALIYUN::RDS::AccountPrivilege
    Properties:
      AccountPrivilege: ReadOnly
      DBInstanceId:
        Ref: DBInstanceId
      DBName: dev
      AccountName: DBUser
Outputs: {}

JSON

{
  "ROSTemplateFormatVersion": "2015-09-01",
  "Parameters": {
    "DBInstanceId": {
      "Type": "String",
      "AssociationProperty": "ALIYUN::RDS::Instance::InstanceId"
    }
  },
  "Resources": {
    "AccountPrivilege": {
      "Type": "ALIYUN::RDS::AccountPrivilege",
      "Properties": {
        "AccountPrivilege": "ReadOnly",
        "DBInstanceId": {
          "Ref": "DBInstanceId"
        },
        "DBName": "dev",
        "AccountName": "DBUser"
      }
    }
  },
  "Outputs": {}
}