3

對於小型CloudFormation和CodePipeline模板,我們可以「嘗試 - 測試」以針對所需角色獲取最小特權IAM策略。針對雲計算的最小特權AWS IAM策略

這通常包括:

  • 以最小的政策
  • 創建堆棧
  • 它失敗開始 - 堆棧不具有權限someService:someAction
  • 服務行動加入政策
  • 更新堆棧並重試

對於較大的CloudFormation模板,此方法太耗時。
您是如何開發最低特權IAM政策

思路:

  • 允許「*」,然後刮cloudtrail事件和上市事件構建地圖爲等效的角色 - 那麼角色降至只有那些在cloudtrail日誌中列出。

  • 訪問顧問

回答

1

Grant least privilege是有充分證據IAM Best Practice。該文檔建議遞增地添加特定的權限,使用Access Advisor標籤來確定哪些服務實際上是正在使用的應用程序(可能使用在測試階段更廣泛的一組權限):

這是更安全的開始與最小的一組權限並根據需要授予額外的權限,而不是從過於寬鬆的權限開始,然後再嘗試收緊權限。

定義正確的權限集合需要一些研究來確定特定任務需要什麼,特定服務支持哪些操作以及執行這些操作需要什麼權限。

有助於此的一個功能是Access Advisor選項卡,每當您檢查用戶,組,角色或策略時,該選項卡均可用於IAM控制檯摘要頁面。此選項卡包含有關用戶,組,角色或使用策略的任何人實際使用哪些服務的信息。您可以使用此信息來識別不必要的權限,以便您可以優化您的IAM策略以更好地遵守最小特權原則。有關更多信息,請參閱Service Last Accessed Data

這種方法類似於刮CloudTrail由特定IAM角色/應用程序生成API的事件,儘管後者可能更困難,以便找到相關的事件在整個事件流進行過濾,而訪問顧問列表已經爲您篩選。