更新时间:2024-04-19 GMT+08:00

查询主题策略

功能介绍

查询主题的策略信息。

调用方法

请参见如何调用API

URI

GET /v2/{project_id}/notifications/topics/{topic_urn}/attributes

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

项目ID。获取项目ID请参考 获取项目ID

topic_urn

String

Topic的唯一的资源标识,可通过查询主题列表获取该标识。

表2 Query参数

参数

是否必选

参数类型

描述

name

String

主题策略名称。只支持特定的策略名称,请参见Topic属性表

请求参数

表3 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

用户Token。

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

响应参数

状态码: 200

表4 响应Body参数

参数

参数类型

描述

request_id

String

请求的唯一标识ID。

attributes

TopicAttribute object

属性的键值对。access_policy:topic的访问策略。introduction:topic的简介。

表5 TopicAttribute

参数

参数类型

描述

access_policy

AccessPolicy object

topic的访问策略

introduction

String

topic的简介

表6 AccessPolicy

参数

参数类型

描述

Version

String

访问策略规范版本。目前只支持“2016-09-07”。

Id

String

策略的唯一标识。不能为空。

Statement

Array of Statement objects

访问策略是通过Statement语句来定义的。一个访问策略可包含一条或多条Statement语句。通过Statement语句向其他用户或云服务授权对主题的操作。

表7 Statement

参数

参数类型

描述

Sid

String

Statement语句的ID。 Statement语句ID必须是唯一的,例如statement01、statement02。

Effect

String

Statement语句的效果。“Allow”或者“Deny”。

Principal

String

Statement语句作用的对象。 目前支持“CSP”和“Service”两类对象。

“CSP”对象指的是其他用户,可以作用于多个用户。

“Service”对象指的是云服务,可以作用于多个云服务。

Principal元素和NotPrincipal元素两者任选其一。选定后, “CSP”对象填写内容的格式为urn:csp:iam::domainId:root或“*”,其中domainId为其他用户的“账号ID”,“*”指作用于所有人。

“Service”对象填写内容的格式为小写的云服务名称缩写。

NotPrincipal

String

NotPrincipal:Statement语句排除作用的对象。

目前支持“CSP”和“Service”两类对象。

“CSP”对象指的是其他用户,可以作用于多个用户。

“Service”对象指的是云服务,可以作用于多个云服务。

Principal元素和NotPrincipal元素两者任选其一。选定后, “CSP”对象填写内容的格式为urn:csp:iam::domainId:root或“*”,其中domainId为其他用户的“账号ID”,“*”指作用于所有人。

“Service”对象填写内容的格式为小写的云服务名称缩写。

Action

String

Statement语句作用的操作。允许使用通配符来表示一类操作,例如:SMN:Update*、SMN:Delete*。如果只填写“*”,表示Statement语句作用的操作为该资源支持的所有操作。Action元素和NotAction元素两者任选其一。目前支持的操作有:SMN:UpdateTopicSMN:DeleteTopicSMN:QueryTopicDetailSMN:ListTopicAttributesSMN:UpdateTopicAttributeSMN:DeleteTopicAttributesSMN:DeleteTopicAttributeByNameSMN:ListSubscriptionsByTopicSMN:SubscribeSMN:UnsubscribeSMN:Publish

NotAction

String

Statement语句排除作用的操作。允许使用通配符来表示一类操作,例如:SMN:Update*、SMN:Delete*。如果只填写“*”,表示Statement语句作用的操作为该资源支持的所有操作。Action元素和NotAction元素两者任选其一。目前支持的操作有:SMN:UpdateTopicSMN:DeleteTopicSMN:QueryTopicDetailSMN:ListTopicAttributesSMN:UpdateTopicAttributeSMN:DeleteTopicAttributesSMN:DeleteTopicAttributeByNameSMN:ListSubscriptionsByTopicSMN:SubscribeSMN:UnsubscribeSMN:Publish

Resource

String

Statement语句作用的主题。

Resource和NotResource两者任选其一。选定后,填写内容为主题URN。

NotResource

String

Statement语句排除作用的主题。

Resource和NotResource两者任选其一。选定后,填写内容为主题URN。

状态码: 400

表8 响应Body参数

参数

参数类型

描述

request_id

String

请求的唯一标识ID。

code

String

服务异常错误信息编码。

message

String

服务异常错误信息描述。

状态码: 403

表9 响应Body参数

参数

参数类型

描述

request_id

String

请求的唯一标识ID。

code

String

服务异常错误信息编码。

message

String

服务异常错误信息描述。

状态码: 404

表10 响应Body参数

参数

参数类型

描述

request_id

String

请求的唯一标识ID。

code

String

服务异常错误信息编码。

message

String

服务异常错误信息描述。

状态码: 500

表11 响应Body参数

参数

参数类型

描述

request_id

String

请求的唯一标识ID。

code

String

服务异常错误信息编码。

message

String

服务异常错误信息描述。

请求示例

查询主题策略

GET https://{SMN_Endpoint}/v2/{project_id}/notifications/topics/urn:smn:regionId:8bad8a40e0f7462f8c1676e3f93a8183:test_create_topic_v2/attributes?name=access_policy

null

响应示例

状态码: 200

OK

{
  "request_id" : "6837531fd3f54550927b930180a706bf",
  "attributes" : {
    "access_policy" : {
      "Version" : "2016-09-07",
      "Id" : "__default_policy_ID",
      "Statement" : [ {
        "Sid" : "__user_pub_0",
        "Effect" : "Allow",
        "Principal" : [ {
          "CSP" : [ "urn:csp:iam::93dc1b4697ac493d9b7d089569f86b32:root" ]
        } ],
        "Action" : [ "SMN:Publish", "SMN:QueryTopicDetail" ],
        "Resource" : "urn:smn:regionId:8bad8a40e0f7462f8c1676e3f93a8183:aaa"
      }, {
        "Sid" : "__service_pub_0",
        "Effect" : "Allow",
        "Principal" : [ {
          "Service" : [ "obs" ]
        } ],
        "Action" : [ "SMN:Publish", "SMN:QueryTopicDetail" ],
        "Resource" : "urn:smn:regionId:8bad8a40e0f7462f8c1676e3f93a8183:aaa"
      } ]
    }
  }
}

状态码

状态码

描述

200

OK

400

Bad Request

403

Unauthorized

404

Not Found

500

Internal Server Error

错误码

请参见错误码