AWS - 无法从 s3 存储桶下载 cloudwatch logs

AWS - Unable to download cloudwatch logs from s3 bucket

提问人:boog 提问时间:10/7/2023 最后编辑:boog 更新时间:10/11/2023 访问量:60

问:

我们在 Application Load Balancer 上设置了一些 WAF 规则,并记录在 cloudwatch 中。我创建了一个 S3 存储桶来将这些 cloudwatch 日志导出到其中。我能够读写 s3 存储桶、查看文件等 - 但是下载按钮是灰色的。无法从 S3 存储桶下载任何内容。

这是存储桶上的策略,我错过了什么?最初创建此策略是因为 cloudwatch 无法导出到 s3 存储桶。现在,我的用户(创建 s3 存储桶的用户)无法下载其中包含的文件。

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "AllowCloudWatchLogsPutObject",
            "Effect": "Allow",
            "Principal": {
                "Service": "logs.amazonaws.com"
            },
            "Action": [
                "s3:GetBucketAcl",
                "s3:PutObject"
            ],
            "Resource": [
                "arn:aws:s3:::s3-bucket-name",
                "arn:aws:s3:::s3-bucket-name"
            ]
        }
    ]
}

编辑 - 我尝试了以下答案中列出的策略,但仍然无法从 GUI 中的 s3 存储桶下载文件夹。我现在制定了以下政策。此 IAM 用户能够在对象级别下载文件,但在尝试下载文件文件夹或包含文件文件夹的文件夹时,下载按钮为灰色。

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "AllAccess",
            "Effect": "Allow",
            "Principal": "*",
            "Action": "s3:*",
            "Resource": [
                "arn:aws:s3:::bucket-name",
                "arn:aws:s3:::bucket-name/*"
            ]
        }
    ]
}
网络服务 -S3 亚马逊 -CloudWatchLogs

评论

0赞 Mark B 10/7/2023
显示附加到您登录 AWS 控制台时所用用户账户的 IAM 策略。

答:

1赞 Jahangeer Alam 10/7/2023 #1

您可以在存储桶策略中添加新语句,该语句将允许用户从 S3 存储桶下载文件。 更新存储桶策略如下:-

{
"Version": "2012-10-17",
"Statement": [
    {
        "Sid": "AllowCloudWatchLogsPutObject",
        "Effect": "Allow",
        "Principal": {
            "Service": "logs.amazonaws.com"
        },
        "Action": [
            "s3:GetBucketAcl",
            "s3:PutObject"
        ],
        "Resource": [
            "arn:aws:s3:::aws-waf-logs-prod-op",
            "arn:aws:s3:::aws-waf-logs-prod-op/*"
        ]
    },
    {
        "Sid": "AllowUserGetObject",
        "Effect": "Allow",
        "Principal": "*",
        "Action": "s3:GetObject",
        "Resource": "arn:aws:s3:::aws-waf-logs-prod-op/*"
    }
  ]
}

评论

0赞 boog 10/7/2023
感谢您的输入,但是,当使用 IAM 用户登录时,我仍然无法从存储桶下载。这有关系吗?
0赞 Jahangeer Alam 10/7/2023
您是否仅使用IAM用户就面临此问题?您可以下载root用户或其他用户的文件吗?此外,请验证 IAM 用户是否有权从 S3 存储桶下载对象。
0赞 Mark B 10/7/2023
该存储桶策略仅授予 AWS 日志对存储桶的访问权限。附加到 AWS Web 控制台中使用的用户账户的 IAM 策略(问题是关于使用 AWS Web 控制台的问题)将是此处授予或拒绝访问权限的内容。
0赞 boog 10/8/2023
根用户可以从存储桶下载,但我们需要允许特定的 IAM 用户能够从存储桶下载数据
0赞 Jahangeer Alam 10/8/2023
请检查一次IAM用户权限。该 IAM 用户应具有下载权限。