所以我有一個dynamodb表,我用iam控制檯在只讀訪問表的組中創建一個用戶。是否允許將dynamodb只讀用戶的密鑰公開?
在客戶端JavaScript中擁有此用戶私鑰有什麼問題,以便我可以對錶進行GET請求籤名並使用ajax從表中直接拉取?我的意思是,如果表中的所有信息都是公開可用的,那麼只讀訪問密鑰是否已知並不重要?
我知道我可以設置一個令牌自動售貨機,但我想知道只讀訪問一個表的整個內容是公開可用的,我可以繞過TVM而不在乎暴露私鑰嗎?
所以我有一個dynamodb表,我用iam控制檯在只讀訪問表的組中創建一個用戶。是否允許將dynamodb只讀用戶的密鑰公開?
在客戶端JavaScript中擁有此用戶私鑰有什麼問題,以便我可以對錶進行GET請求籤名並使用ajax從表中直接拉取?我的意思是,如果表中的所有信息都是公開可用的,那麼只讀訪問密鑰是否已知並不重要?
我知道我可以設置一個令牌自動售貨機,但我想知道只讀訪問一個表的整個內容是公開可用的,我可以繞過TVM而不在乎暴露私鑰嗎?
你可能是DoS攻擊的受害者,這將是一種防禦的痛苦。
假設攻擊者獲取您的密鑰並開始發出大量請求:您可以讓所有讀取的單元消耗,這會給其他客戶端帶來問題。如果取消該令牌,則所有其他合法用戶也會遇到問題。最後,如果你有自動縮放,你可能會得到一個巨大的賬單。
這實際上似乎是一個非常糟糕的主意。你應該在你的javascript和Dynamo之間實現一個web服務。這將提供一些好處:
感謝您的洞察。使用臨時(即tvm生成的)鑰匙的情況下,這種情況也是可能的,其具有12小時的默認壽命? – user2237076