更新时间:2024-07-03 GMT+08:00

更新Topic权限

功能介绍

更新Topic权限。

URI

POST /v2/{project_id}/mqs/instances/{instance_id}/topics/accesspolicy

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

项目ID,获取方式请参见API参考的“附录 > 获取项目ID”章节。

instance_id

String

实例ID。

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

用户Token。通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。

表3 请求Body参数

参数

是否必选

参数类型

描述

topics

Array of UpdateTopicAccessPolicyTopicsObject objects

策略列表。

表4 UpdateTopicAccessPolicyTopicsObject

参数

是否必选

参数类型

描述

name

String

Topic名称。

policies

Array of UpdateTopicAccessPolicyPoliciesObject objects

权限列表。

description

String

描述。

sensitive_word

String

敏感字段。

表5 UpdateTopicAccessPolicyPoliciesObject

参数

是否必选

参数类型

描述

app_id

String

集成应用Key。

app_key

String

集成应用Key。

app_name

String

应用名称。

access_policy

String

权限类型。

  • all:发布+订阅

  • pub:发布

  • sub:订阅

owner

Boolean

是否为创建Topic时所选择的应用。

默认为false。

tag

String

权限类型对应的标签。

当权限类型是all时,发布和订阅的标签用符号“&”隔开。

当有多个标签时,标签用符号“||”隔开。

响应参数

状态码: 400

表6 响应Body参数

参数

参数类型

描述

error_code

String

错误码。

error_msg

String

错误信息。

状态码: 403

表7 响应Body参数

参数

参数类型

描述

error_code

String

错误码。

error_msg

String

错误信息。

请求示例

把Topic所属集成应用的权限修改为仅可发布消息

POST https://{endpoint}/v2/{project_id}/mqs/instances/{instance_id}/topics/accesspolicy

{
  "topics" : [ {
    "name" : "topic-test-mqs",
    "policies" : [ {
      "owner" : true,
      "access_policy" : "pub",
      "app_name" : "app-dhytest",
      "tag" : "",
      "app_id" : "cd28a9d9-2184-42ce-9fbe-f3785b6caada"
    } ],
    "sensitive_word" : "",
    "description" : ""
  } ]
}

响应示例

状态码: 400

Bad Request

{
  "error_code" : 400,
  "error_msg" : "Bad Request"
}

状态码: 403

Forbidden

{
  "error_code" : 403,
  "error_msg" : "Forbidden"
}

状态码

状态码

描述

204

No Content

400

Bad Request

403

Forbidden

错误码

请参见错误码