2016-02-21 27 views

回答

2

你不能。

此外,除非你100%信任第三方,否則我不會允許他們原始訪問你的隊列,因爲它會打開你的濫用/錯誤。

  • 什麼阻止他們把隨機垃圾放入隊列中?
  • 什麼阻止他們清除隊列?
  • 什麼阻止他們與隊列交互嚴重?即讀取但不刪除消息

如果你信任他們足夠的上述,那麼你可以相信他們不會濫用你的使用限制。

您應該控制通過您控制的API訪問您的系統。您可以處理以上所有情況,包括限​​制費率。

或者在讀取/寫入/刪除超出特定限制時設置CloudWatch警報,並與第三方聯繫以告知其放慢速度。

+0

afaik我可以只允許特定的通話可用於公共使用,如只讀取/刪除消息API調用。我不需要絕對的保護與虐待,只是讓我感到安全並降低風險。託管自己的包裝API的成本對我來說太高了(可擴展性,容錯性 - 價格暴漲)。目前,我正在考慮使用CloudWatch收集隊列使用情況統計信息,並在達到閾值時撤銷隊列中的公共訪問。 – let4be

+0

這仍然需要一定程度的信任,您需要滿意 - 大概您的第三方會將消息放在隊列中供您處理?如果是這樣,你需要確保他們做的是正確的事情。如果你真的希望他們有寫訪問權限,你可以設置SNS/Lambda,並以這種方式進行速率限制 – tddmonkey

+0

我在ec2上運行的軟件填充隊列並管理它的生命週期,而我想提供只讀訪問權限-party(讀取/刪除api調用) – let4be