AmazonS3 分段上传

AmazonS3 multipart uploading

documentation所述,我已使用分段上传将图像上传到 Amazon S3。

但是上传的文件可以直接访问而无需访问密钥或任何东西。使用从特定文件的响应中获取的远程 URL 进行测试。 有没有办法限制对上传文件的访问? 如果我想添加文件夹和文件,还有没有办法在这里更改上传 URL?

要管理对文件的访问,您需要按照此处的说明进行操作:http://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html

这里有更详细的介绍:http://docs.aws.amazon.com/AmazonS3/latest/dev/intro-managing-access-s3-resources.html

是的,您可以使用以下方法创建文件夹。

     AmazonS3 amazons3Client = new AmazonS3Client(new ProfileCredentialsProvider());
     public void createFolder(String bucketName, String folderName)
        {
            try
            {

                        ObjectMetadata objectMetaData = new ObjectMetadata();
                        objectMetaData.setContentLength(0);
                        InputStream emptyContent = new ByteArrayInputStream(new byte[0]);
                        amazons3Client.putObject(new PutObjectRequest(bucketName, folderName + "/", emptyContent, objectMetaData));
            }
            catch (Exception exception)
            {
                LOGGER.error("Exception In Create Folder", exception);
            }

        }

您可以使用政策的访问权限,它将适用于特定于您的存储桶,请通过以下内容link 您可以允许特定 IP 访问。 http://docs.aws.amazon.com/AmazonS3/latest/dev/example-bucket-policies.html