一個 DevOps 團隊使用 AWS Identity and Access Management (IAM) 管理權限。一個附加了 AWS 受管 ReadOnlyAccess 政策的 EC2 執行個體設定檔角色,被連接到一個在 Amazon EC2 上執行的應用程式。當該應用程式嘗試從一個使用 KMS 金鑰加密的 Amazon S3 儲存貯體讀取物件時,它收到一個 AccessDenied 錯誤。該 S3 儲存貯體政策允許帳戶中的所有人存取,並且該物件沒有 ACL。管理員應該怎麼做才能解決 IAM 存取問題?
選擇一個答案
點擊一個選項來檢查您的答案。
正確答案: 將授予 kms:Decrypt 權限的內嵌政策附加到 IAM 角色。.
為什麼這是答案
正確答案是將授予 kms:Decrypt 權限的內嵌政策附加到 IAM 角色。當 S3 物件使用 KMS 金鑰加密時,除了 S3 讀取權限外,還需要 KMS 解密權限才能存取這些物件。ReadOnlyAccess 政策不包含 KMS 權限,因此應用程式收到 AccessDenied 錯誤。將 kms:Decrypt 權限作為內嵌政策附加到 EC2 執行個體設定檔角色,將允許應用程式解密並讀取加密的 S3 物件。 修改 ReadOnlyAccess 受管政策不是最佳實踐,因為它是一個 AWS 受管政策,通常不應直接修改。將 EC2 IAM 角色新增為 S3 儲存貯體政策中的 Principal 無法解決問題,因為問題出在 KMS 解密權限的缺失,而非 S3 儲存貯體存取權限。授予 S3: 權限的內嵌政策是過度授權,且無法解決 KMS 解密權限的缺失。
通過考試 — 無需無休止地尋找答案
集中一處獲取此考試的所有核實題目和解釋,節省數小時的準備時間。1,000 多種認證 · 20 多種語言 · 免費開始。
更快通過您的考試 → 無需信用卡