簡體   English   中英

是否可以將來自EC2實例的訪問限制為僅使用來自特定帳戶的S3存儲桶?

[英]Is it possible to restrict access from EC2 instance to use only S3 buckets from specific account?

目標 :我想將敏感數據保存在s3存儲桶中,並在私有雲中的EC2實例上進行處理。 我研究了可以通過IP和用戶(iam)arn設置S3存儲桶策略的可能性,因此我認為s3存儲桶中的數據“安全”。 但是我擔心下一個場景:
1)有vpc
2)里面有一個EC2符號
3)有一個處於受控(允許)帳戶下的用戶,該用戶具有連接和使用ec2實例和存儲桶的權限。 定義並配置存儲桶,使其僅與已知(授權)ec2實例一起使用。
安全漏洞:用戶在ec2實例上上傳惡意軟件應用程序,並且在處理數據期間執行惡意軟件應用程序,該數據會將數據傳輸到其他AWS賬戶下的其他(未經授權)存儲桶。
在我的情況下,不能選擇禁止將數據上傳到ec2-instance。
問題:是否可以通過某種方式限制對vpc firewal的訪問,使其可以訪問某些特定的s3存儲桶,但將拒絕訪問任何其他存儲桶? 假設用戶可能將惡意軟件應用程序上傳到ec2實例,並在其中將數據上傳到其他存儲桶(在第三方AWS賬戶下)。

您提出的問題並沒有真正的解決方案,但是再次,您似乎正在嘗試解決錯誤的問題(如果我正確理解了您的問題)。

如果您遇到無法信任的用戶處於能夠“連接並使用ec2實例和存儲桶並使用它們”並上載和執行VPC內部應用程序代碼的情況,那么所有的賭注都將關閉,游戲已經結束。 關閉應用程序是唯一可用的修復程序。 通過阻止惡意代碼將敏感數據上傳到S3中的其他存儲桶來限制損害的方法,絕對是您的后顧之憂。 除了將數據放回S3中但位於不同存儲桶中之外,惡意用戶還有許多其他選擇。

我也可能比您預期的更廣泛地解釋“連接並使用ec2實例和存儲桶”,而您的意思是用戶能夠將數據上傳到您的應用程序。 好吧,好吧...但是您的擔憂似乎仍然集中在錯誤的地方。

我有一些用戶可以在其中上傳數據的應用程序。 他們可以上載他們想要的所有惡意軟件,但是上載數據中所包含的任何代碼(惡意或良性)都將永遠無法執行。 我的系統永遠不會將上載的數據與要執行的內容混淆,也不會以遙不可及的方式進行處理。 如果您的代碼可以,那么您又遇到了一個問題,只能通過修復代碼來解決問題,而不能通過限制實例可以訪問哪些存儲桶來解決。

實際上,當我說沒有解決方案時,我撒了謊。 有一個解決方案,但這很荒謬:

在EC2或外部某個地方設置反向Web代理,但是當然會使惡意用戶無法訪問其配置。 在此代理的配置中,將其配置為僅允許訪問所需的存儲桶。 以apache為例,如果存儲桶名為“ mybucket”,則可能看起來像這樣:

ProxyPass /mybucket http://s3.amazonaws.com/mybucket

代理上的其他配置將拒絕您實例以外的任何地方對代理的訪問。 然后,不要允許您的實例直接訪問s3端點,而只能允許對代理的出站http(通過受感染實例的安全組使用)。 對您的存儲桶以外的存儲桶的請求將不會通過代理進行,這是目前唯一的“出路”。 問題解決了。 至少,您希望解決的特定問題可以通過此方法的一些變體來解決。

更新以澄清:

要以正常方式訪問名為“ mybucket”的存儲桶,有兩種方法:

http://s3.amazonaws.com/mybucket/object_key
http://mybucket.s3.amazonaws.com/object_key

使用此配置,您將通過安全組配置阻止(不允許)從您的實例對所有S3端點的所有訪問,這將阻止使用任何一種方法訪問存儲桶。 相反,您將允許從實例訪問代理。

例如,如果代理位於172.31.31.31,則可以按以下方式訪問存儲桶及其對象:

http://172.31.31.31/mybucket/object_key

代理配置為僅允許轉發路徑中的某些模式-拒絕其他任何模式-將控制特定存儲桶是否可訪問。

使用VPC端點 這使您可以限制VPC中的EC2實例可以訪問哪些S3存儲桶。 它還允許您在VPC和S3服務之間創建專用連接,因此您不必允許廣泛的出站Internet訪問。 IAM策略示例顯示了如何控制對存儲桶的訪問。

S3的VPC端點還有一個額外的好處 ,即某些主要的軟件倉庫(例如Amazon的yum倉庫和Ubuntu的apt-get倉庫)都托管在S3中,因此您也可以允許您的EC2實例獲取其補丁程序而無需提供廣泛的互聯網訪問權限。 那是一個很大的勝利。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM