File upload 将通过SMTP上载到S3的文件公开

File upload 将通过SMTP上载到S3的文件公开,file-upload,amazon-web-services,amazon-s3,bucket,cloudmailin,File Upload,Amazon Web Services,Amazon S3,Bucket,Cloudmailin,我正在使用cloudmailin.com将电子邮件中的附件上传到S3存储桶。bucket本身有公共设置,但我无法从数据链接访问上传的数据,因为S3显然没有将其他用户上传的文件公开 目前,我正在使用下面的bucket策略,该策略旨在公开bucket的内容: { "Version": "2008-10-17", "Statement": [ { "Sid": "AllowPublicRead", "Effect": "A

我正在使用cloudmailin.com将电子邮件中的附件上传到S3存储桶。bucket本身有公共设置,但我无法从数据链接访问上传的数据,因为S3显然没有将其他用户上传的文件公开

目前,我正在使用下面的bucket策略,该策略旨在公开bucket的内容:

{
    "Version": "2008-10-17",
    "Statement": [
        {
            "Sid": "AllowPublicRead",
            "Effect": "Allow",
            "Principal": {
                "AWS": "*"
            },
            "Action": "s3:GetObject",
            "Resource": "arn:aws:s3:::mjkaufer_cloudmailin/*"
        }
    ]
}
这仅在我手动将某些内容上载到S3时有效。如果我手动上传一些东西,我可以查看链接,它可以在一个新窗口中打开。但是如果它是从cloudmailin上传的,我就无法查看该文件

有人知道解决办法吗?我只需要让第三方(cloudmailin)上传到bucket的文件可见


谢谢。

问题在于,当CloudMailin将您的附件上载到AWS S3时,它需要设置它们的ACL权限。AWS为此提供了一些“固定权限”。CloudMailin真正感兴趣的只有以下两个:

  • bucket owner full control
    -这是您当前设置的,它授予bucket owner对上传附件的完全控制权
  • public read
    -这将授予您作为bucket所有者的完全控制权,但也将为每个人设置只读权限
如果您登录到您的地址列表并在需要编辑的地址上单击“管理”。然后前往“编辑附件存储”并选择“公共读取”,然后CloudMailin将在电子邮件附件上载到S3时设置此固定策略