簡體   English   中英

需要幫助拒絕沒有特定標簽的 S3 存儲桶創建

[英]Need help to deny S3 bucket creation without specific Tags

我想創建一個 IAM 策略,只允許“測試”用戶在創建時創建帶有“名稱”和“存儲桶”標簽的 S3 存儲桶。 但是做不到。

我已經嘗試過這個,但即使在指定的條件下,用戶也無法創建存儲桶。

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Deny",
            "Action": "s3:CreateBucket",
            "Resource": "*",
            "Condition": {
                "StringNotEquals": {
                    "aws:RequestTag/Name": "Bucket"
                }
            }
        }
    ]
}

提前致謝。

Amazon S3操作、資源和條件鍵 - 服務授權參考文檔頁面列出了可應用於CreateBucket命令的條件。

標簽包括在此列表中。 因此,無法根據使用命令指定的標簽來限制CreateBucket命令。

正如 John Rotenstein 指出的那樣,這不可能(至少現在)明確否認這一點,但人們可以為此做一些選擇,因為這種類型的標記策略在許多組織中都很常見。

合規報告

您可以使用AWS Config服務來檢測不合規的 S3 存儲桶資源。 您可以使用 Config rule 為 S3 存儲桶定義標記策略

這不會阻止用戶創建存儲桶,但它會提供一種審核您的帳戶並主動通知的方法。

自動修復

如果您希望自動刪除或標記存儲桶,您可以創建一個由 CloudTrail API在創建存儲桶時觸發的 lambda 函數。

可以實施 Lambda 來檢查標簽,如果存儲桶不合規,則嘗試刪除存儲桶或通過您定義的其他一些流程將其標記為刪除。

@pop 我相信您不能使用 IAM 策略或 SCP 來執行此操作,因為按照設計,S3 創建標簽 API 被配置為作為對 CreateBucket API 的后續調用觸發。 因此,即使您添加了此標簽,您的 IAM 策略也會阻止創建 S3 存儲桶本身。 與其他 AWS 服務相比,這是為 S3 服務設計的。

在我看來,唯一的選擇是部署后操作,即選擇一個事件驅動模型,您可以在其中使用 S3 事件根據存儲桶的創建方式采取行動(刪除存儲桶/添加訪問阻止存儲桶策略等)。

暫無
暫無

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

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