更新时间:2025-12-29 GMT+08:00

创建ACL账号

功能介绍

为redis4.0/5.0实例创建权限访问账号,包含读写和只读权限。

如果实例默认账号已开启免密访问,您创建的普通账号不能使用,如需使用普通账号请先关闭默认账号的免密访问。

单机、主备实例默认账号的密码不能带有冒号(:),否则无法创建普通账号。

URI

POST /v2/{project_id}/instances/{instance_id}/accounts

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

参数解释

项目ID。获取方法请参见获取项目ID

约束限制

不涉及。

取值范围

不涉及。

默认取值

不涉及。

instance_id

String

参数解释

实例ID。可通过DCS控制台进入实例详情界面查看。

约束限制

不涉及。

取值范围

不涉及。

默认取值

不涉及。

请求参数

表2 请求Body参数

参数

是否必选

参数类型

描述

account_name

String

参数解释

ACL账号名称。

约束限制

  • 以字母开头。

  • 内容由字母、数字、中划线、下划线组成。

  • 长度范围[1~64]个字符。

取值范围

不涉及。

默认取值

不涉及。

account_role

String

参数解释

ACL账号权限。

约束限制

不涉及。

取值范围

  • read:只读账号

  • write:读写账号

默认取值

不涉及。

account_password

String

参数解释

ACL账号密码。

约束限制

  • 输入长度为8到64位的字符串。

  • 不能使用正序或逆序用户名作为密码。

  • 必须包含如下四种字符中的三种组合(不允许包含冒号):

    • 小写字母

    • 大写字母

    • 数字

    • 特殊字符包括(`~!@#$%^&*()-_=+\|{}'",<.>/?)

取值范围

不涉及。

默认取值

不涉及。

description

String

参数解释

ACL账号描述。

约束限制

长度不超过1024的字符串。

取值范围

不涉及。

默认取值

不涉及。

account_read_policy

String

参数解释

指定账号的读请求转发到主节点或备节点。

约束限制

  • 仅proxy集群和读写分离实例支持,proxy集群未开启读写分离不支持设置。

  • 读写分离配置参考“用户指南>管理实例>修改DCS实例配置参数”中backend-master-only参数说明。

取值范围

  • master:读请求转发到主节点。

  • replica:读请求转发到备节点。

  • master-replica:读请求转发到主备节点。

默认取值

默认不设置。不设置时,读请求按照实例读写分离配置进行转发。

  • 完全读写分离配置参考 “用户指南>管理实例>修改DCS实例配置参数”中read-only-slave-when-wr-split参数说明。

  • proxy集群实例

    • 默认未开启读写分离,读请求转发到主节点。

    • 开启读写分离

      • 默认开启完全读写分离,读请求转发到备节点。

      • 未开启完全读写分离,读请求随机转发到主备节点。

  • 读写分离实例

    • 默认支持读写分离

      • 默认开启完全读写分离,读请求转发到备节点。

      • 未开启完全读写分离,读请求随机转发到主备节点。

响应参数

状态码:200

ACL账号创建任务下发成功。

状态码:400

表3 响应Body参数

参数

参数类型

描述

error_msg

String

参数解释

错误信息。

取值范围

不涉及。

error_code

String

参数解释

错误码。

取值范围

请参见错误码

error_ext_msg

String

参数解释

扩展错误信息(暂未使用,赋值为null)。

取值范围

不涉及。

状态码:401

表4 响应Body参数

参数

参数类型

描述

error_msg

String

参数解释

错误信息。

取值范围

不涉及。

error_code

String

参数解释

错误码。

取值范围

请参见错误码

error_ext_msg

String

参数解释

扩展错误信息(暂未使用,赋值为null)。

取值范围

不涉及。

状态码:403

表5 响应Body参数

参数

参数类型

描述

error_msg

String

参数解释

错误信息。

取值范围

不涉及。

error_code

String

参数解释

错误码。

取值范围

请参见错误码

error_ext_msg

String

参数解释

扩展错误信息(暂未使用,赋值为null)。

取值范围

不涉及。

状态码:404

表6 响应Body参数

参数

参数类型

描述

error_msg

String

参数解释

错误信息。

取值范围

不涉及。

error_code

String

参数解释

错误码。

取值范围

请参见错误码

error_ext_msg

String

参数解释

扩展错误信息(暂未使用,赋值为null)。

取值范围

不涉及。

状态码:500

表7 响应Body参数

参数

参数类型

描述

error_msg

String

参数解释

错误信息。

取值范围

不涉及。

error_code

String

参数解释

错误码。

取值范围

请参见错误码

error_ext_msg

String

参数解释

扩展错误信息(暂未使用,赋值为null)。

取值范围

不涉及。

请求示例

创建ACL只读权限账号,账号名为user。

POST https:///{dcs_endpoint}/v2/{project_id}/instances/{instance_id}/accounts

{
  "account_name" : "user",
  "account_role" : "read",
  "account_password" : "xxxxx"
}

响应示例

状态码:400

参数解释

非法请求。

{
  "error_code" : "DCS.4961",
  "error_msg" : "Acl account request param invalid."
}

状态码

状态码

描述

200

ACL账号创建任务下发成功。

400

参数解释

非法请求。

401

认证失败。

403

请求被拒绝。

404

路径错误。

500

内部错误。

错误码

请参见错误码