閱讀812 返回首頁    go windows


創建授權__資源授權接口_Open API_消息隊列 MQ-阿裏雲

本文介紹 OnsEmpowerCreate 接口,調用該接口可以將目標 Topic 授權給指定用戶使用,包括發布消息和訂閱消息的權限。

1. 使用場景

MQ 的 Topic 資源屬於申請的 Owner 賬號所有,當需要跨賬號訪問 Topic 資源時,Owner 賬號可以使用授權接口對目標賬號進行發布消息或者接收消息的權限授予。

授權注意事項:

  • 授權可以支持三種權限:發布、訂閱、發布&訂閱。
  • 發起授權的賬號必須是資源的 Owner 賬號,目標賬號可以是子賬號或者主賬號。
  • 授權後,目標賬號仍然需要創建自己的訂閱 CID,而不是使用 Owner 賬號的 CID 來收消息。

2. 請求參數列表

名稱 類型 是否必須 描述
OnsRegionId String 當前查詢 MQ 所在區域,可以通過 OnsRegionList 方法獲取
OnsPlatform String 該請求來源,默認是從 POP 平台
PreventCache Long 用於 CSRF 校驗,設置為係統當前時間即可
EmpowerUser Long 授權的目標用戶 User ID,支持子賬號 ID
Topic String 授權的目標 Topic,該 Topic 必須是當前用戶所有
Relation Integer 授權類型,2代表授權發送,4代表授權訂閱,6代表授權發送和訂閱

3. 返回參數列表

名稱 類型 描述
RequestId String 為公共參數,每個請求獨一無二
HelpUrl String 幫助鏈接

4. 相關 API

  • OnsEmpowerList:查看授權列表
  • OnsEmpowerDelet:刪除授權

5. 使用示例

調用示例

  1. public static void main(String []args) {
  2. public static void main(String []args) {
  3. String regionId = "cn-hangzhou";
  4. String accessKey = "XXXXXXXXXXXXXXXXX";
  5. String secretKey = "XXXXXXXXXXXXXXXXX";
  6. String endPointName ="cn-hangzhou";
  7. String productName ="Ons";
  8. String domain ="ons.cn-hangzhou.aliyuncs.com";
  9. /**
  10. *根據自己需要訪問的區域選擇Region,並設置對應的接入點
  11. */
  12. try {
  13. DefaultProfile.addEndpoint(endPointName,regionId,productName,domain);
  14. } catch (ClientException e) {
  15. e.printStackTrace();
  16. }
  17. IClientProfile profile= DefaultProfile.getProfile(regionId,accessKey,secretKey);
  18. IAcsClient iAcsClient= new DefaultAcsClient(profile);
  19. OnsEmpowerCreateRequest request = new OnsEmpowerCreateRequest();
  20. request.setOnsRegionId("cn-qingdao-publictest");
  21. request.setPreventCache(System.currentTimeMillis());
  22. request.setAcceptFormat(FormatType.JSON);
  23. request.setEmpowerUser("167535647680831312");
  24. request.setTopic("topic_for_public_msg_test");
  25. request.setRelation(2);
  26. try {
  27. OnsEmpowerCreateResponse response=iAcsClient.getAcsResponse(request);
  28. System.out.println(response.getRequestId());
  29. } catch (ServerException e) {
  30. e.printStackTrace();
  31. } catch (ClientException e) {
  32. e.printStackTrace();
  33. }
  34. }

最後更新:2016-11-23 16:04:05

  上一篇:go CID 投遞統計__發布訂閱統計接口_Open API_消息隊列 MQ-阿裏雲
  下一篇:go 查看授權__資源授權接口_Open API_消息隊列 MQ-阿裏雲