如何在 AWS 中添加特定 CloudFormation、EC2、RDS 和 S3 訪問限制 - IAM
我要做的是為需要訪問我們帳戶中的 CloudFormation 的外部團隊創建一個組。我想對他們的組設置限制,以便他們只能查看和編輯自己的網站,而不能查看我團隊帳戶中的其他網站。
我有一個測試策略,應該允許使用者只能查看特定的 EC2 實例(範例如下),但是當我作為受限組輸入登錄時,我收到一條消息,顯示“獲取實例數據時發生錯誤:您無權執行此操作。”
{ "Statement":[{ "Effect":"Allow", "Action":"ec2:*", "Resource":arn:aws:ec2:us-east-1:NUMBERS:instance/instance-ID", "Condition":{ "ArnEquals":{ "ec2:Owner":"arn:aws:ec2:us-east-1:NUMBERS:instance/instance-ID" } } } ] }
有沒有辦法為某些 CloudFormation 設置組限制,包括它們的 EC2 實例、RDS 和 S3 儲存桶?
謝謝,
不幸的是,截至今天, AWS Identity and Access Management (IAM)並未完全涵蓋這一特定方面,因為EC2 和 RDS 資源的資源級權限尚不適用於所有 API 操作,請參閱例如Amazon Resource Names for Amazon 中的此註釋EC2:
重要目前,並非所有 API 操作都支持單個 ARN;稍後我們將為其他 Amazon EC2 資源添加對其他 API 操作和 ARN 的支持。有關您可以將哪些 ARN 與哪些 Amazon EC2 API 操作一起使用以及每個 ARN 支持的條件鍵的資訊,請參閱Amazon EC2 API 操作支持的資源和條件。
您會發現在撰寫本文時, Amazon EC2 API 操作的受支持資源和條件
ec2:Describe*
中確實不存在所有操作,這導致了您遇到的錯誤。
- 請參閱我對如何使用 IAM 策略將使用者限制在 AWS 中的特定實例卷的初始回答,以了解如何拆分關於支持和不支持資源級別權限的部分的 IAM 策略以避免此類錯誤(顯然這不會阻止使用者查看您的所有帳戶)。
另請參閱授予 IAM 使用者對 Amazon EC2 資源所需的權限以獲取上述簡明摘要以及您可以在 IAM 策略語句中使用的 ARN 和 Amazon EC2 條件鍵的詳細資訊,以授予使用者創建或修改特定 Amazon EC2 資源的權限-此頁面還提到 AWS 將在 2014 年增加對其他操作、ARN 和條件鍵的支持。
替代/解決方法
根據具體情況,只預置一個單獨的 AWS 賬戶可能會更容易,該賬戶可以通過跨賬戶訪問與您的 IAM 策略明智地集成:在 AWS 賬戶之間共享資源並通過整合賬單明智地計費。