我想找出是哪位使用者開啟了我的 Amazon Simple Storage Service (Amazon S3) 儲存貯體的公開存取權限。
簡短描述
查看 AWS CloudTrail 事件歷史記錄,以找出更新儲存貯體存取控制清單 (ACL) 或儲存貯體政策以允許公開存取的使用者。
**注意:**CloudTrail 事件歷史記錄會顯示過去最多 90 天的日誌。如果事件發生在 90 天前,那麼您必須查詢儲存貯體中的 CloudTrail 日誌,以取得資訊。
若要查看您的 CloudTrail 事件日誌,請使用以下其中一種方式:
- CloudTrail 主控台
- AWS Command Line Interface (AWS CLI)
解決方法
**注意:**如果您在執行 AWS Command Line Interface (AWS CLI) 命令時收到錯誤,請參閱AWS CLI 錯誤疑難排解。此外,請確定您使用的是最新的 AWS CLI 版本。
使用 CloudTrail 主控台
若要找出開啟您 S3 儲存貯體公開存取權限的使用者,請完成以下步驟:
- 開啟 CloudTrail console (CloudTrail 主控台)。
- 從導覽列中的區域選取器中,選擇您儲存貯體所在的 AWS 區域。
- 從導覽窗格中,選擇 Event history (事件歷史記錄)。
- 在 Lookup attribute (尋找屬性),選取要用於尋找已授予儲存貯體公開存取權限事件的篩選條件:
若要依儲存貯體名稱篩選事件,請選取 Resource name (資源名稱),然後輸入儲存貯體名稱。
若要根據儲存貯體 ACL 的變更來篩選事件,請選取 Event name (事件名稱),然後輸入 PutBucketAcl。
若要根據儲存貯體政策的變更來篩選事件,請選取 Event name (事件名稱),然後輸入 PutBucketPolicy。
- 找到授予您儲存貯體公開存取權限的事件後,請查看該事件中的 User name (使用者名稱) 欄位。然後,展開該事件項目並選擇 View event record (查看事件記錄),以查看更多詳細資料,例如使用者的 Amazon Resource Name (ARN)。
使用 AWS CLI
若要列出與您的儲存貯體相關的所有 CloudTrail 事件,請執行以下 lookup-events 命令:
aws cloudtrail lookup-events --lookup-attributes AttributeKey=ResourceName,AttributeValue=example-bucket-name --region example-region
若要只列出儲存貯體發生變更的事件,請執行以下命令:
aws cloudtrail lookup-events --lookup-attributes AttributeKey=EventName,AttributeValue=PutBucketAcl --region example-region
若要只列出儲存貯體政策發生變更的事件,請執行以下命令:
aws cloudtrail lookup-events --lookup-attributes AttributeKey=EventName,AttributeValue=PutBucketPolicy --region example-region
相關資訊
使用 CloudTrail 事件歷史記錄
CloudTrail 記錄內容