You need to enable JavaScript to run this app.
导航
CreateDBAccount
最近更新时间:2024.12.12 21:46:14首次发布时间:2024.12.04 11:23:22

调用 CreateDBAccount 接口为目标 MongoDB 实例创建账号。

请求类型

同步请求。

注意事项

仅支持创建高权限账号(即 AccountTypeUserAdmin )和普通账号(即 AccountTypeNormal )。关于不同类型账号的更多详情,请参见账号类型

请求参数

参数
类型
是否必选
示例值
描述
InstanceId
String
mongo-replica-7e0f6190****

实例 ID。

说明

您可以调用 DescribeDBInstances 接口查询目标地域下所有 MongoDB 实例的基本信息,包括实例 ID。

AccountName
String
apitest

账号名称。名称需同时满足如下要求:

  • 长度为 1~32 个字符。
  • 由大小写字母、数字、下划线(_)、中划线(-)组成。
  • 以字母开头,字母或数字结尾。
  • 账号名称不允许与如下任意一个系统预留账号的名称重复:rootsystem_inspector__systemmgr
    例如,您可以将账号名称设置为 test__system__system__test,但不允许设置为 __system

    说明

    • 除 root 账号外,上述系统预留账号均不会在 MongoDB 控制台上展示。更多详情,请参见查看账号信息
    • 您无需关注这些系统预留账号的权限或操作,强烈建议不要对这些预留账号进行任何修改、删除或重命名操作,否则会影响数据库账号正常运行。
  • 账号名称不允许以 vedb_mongodb_ 开头。
    例如,您可以将账号名称设置为 testvedb_mongodb_,但不允许设置为 vedb_mongodb_test
AccountPassword
String
Pwd@12****

账号密码。密码需同时满足如下要求:

  • 长度为 8~32 个字符。
  • 至少包含大写字母、小写字母、数字或特殊字符中的任意三种。
  • 支持的特殊字符为:_#!@$%^&*()+=-

说明

若您在密码中使用了特殊字符,在连接实例时可能需要对特殊字符进行转义。更多详情,请参见需要转义的特殊字符

AuthDB
String
admin

账号所属的目标数据库。

说明

若不设置该参数,新建账号将默认属于 admin 库。

AccountDBPrivileges
Object[]

账号所授予的数据库及权限列表。

说明

若不设置该参数,默认不会为账号授予任何数据库的任何权限。

AccountDesc
String
testdesc

账号的备注信息。备注信息需同时满足如下条件:

  • 长度为 0~256 个字符。
  • 可以包含数字、中文、英文、下划线(_)、短横线(-)。

说明

若不设置该参数,账号备注信息默认为空。

返回参数

本接口无特有的返回参数。更多信息请见返回结构

示例

请求示例

在 admin 数据库中创建一个拥有如下权限的数据库账号:

  • 拥有 admin 库的 readuserAdminreadAnyDatabase

    readWriteAnyDatabaseuserAdminAnyDatabasedbAdminAnyDatabaseclusterMonitor 和 backup 权限。
  • 拥有 local 库的 read 权限。
  • 拥有 config 库的 read 权限。
  • 拥有自建数据库 testdbreadreadWritedbAdminuserAdmin 和 dbOwner 权限。
POST https://mongodb.volcengineapi.com/?Action=CreateDBAccount&Version=2022-01-01 HTTP/1.1
Host: mongodb.volcengineapi.com
{
  "InstanceId": "mongo-replica-7e0f6190****",
  "AccountName": "apitest",
  "AuthDB": "admin",
  "AccountPassword": "Pwd@12****",
  "AccountDesc": "test_desc",
  "AccountDBPrivileges": [
    {
      "DBName": "admin",
      "RoleNames": [
        "read",
        "userAdmin",
        "readAnyDatabase",
        "readWriteAnyDatabase",
        "userAdminAnyDatabase",
        "dbAdminAnyDatabase",
        "clusterMonitor",
        "backup"
      ]
    },
    {
      "DBName": "config",
      "RoleNames": [
        "read"
      ]
    },
    {
      "DBName": "local",
      "RoleNames": [
        "read"
      ]
    },
    {
      "DBName": "testdb",
      "RoleNames": [
        "read",
        "readWrite",
        "dbAdmin",
        "userAdmin",
        "dbOwner"
      ]
    }
  ]
}

返回示例

{
    "ResponseMetadata": {
        "RequestId": "2023060411042010023228002****",
        "Action": "CreateDBAccount",
        "Version": "2022-01-01",
        "Service": "mongodb",
        "Region": "cn-beijing"
    },
    "Result": null
}

错误码

更多详情,请参见错误码