AmazonS3多部分上传

时间:2017-09-06 07:15:36

标签: java android amazon-s3 amazon uploading

我已使用多部分上传将图片上传到Amazon S3,如documentation中所述。

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

2 个答案:

答案 0 :(得分:1)

答案 1 :(得分:1)

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

     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);
            }

        }

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