Java 有没有一种方法可以列出请求者付费的Amazon S3存储桶中的对象?

Java 有没有一种方法可以列出请求者付费的Amazon S3存储桶中的对象?,java,amazon-s3,amazon-web-services,jets3t,Java,Amazon S3,Amazon Web Services,Jets3t,我试图在aws publicdatasets bucket中获取commoncrawl的对象名称列表。我一直在考虑使用Jets3t创建SignedGetUrl,但我不确定是否可以通过以下方法获得对象列表: credentials = new AWSCredentials(accessId, secretId); restS3Service = new RestS3Service(credentials); restS3Service.setRequesterPaysEna

我试图在aws publicdatasets bucket中获取commoncrawl的对象名称列表。我一直在考虑使用Jets3t创建SignedGetUrl,但我不确定是否可以通过以下方法获得对象列表:

    credentials = new AWSCredentials(accessId, secretId);
    restS3Service = new RestS3Service(credentials);
    restS3Service.setRequesterPaysEnabled(true);
    Calendar cal = Calendar.getInstance();
    cal.set(Calendar.HOUR, cal.get(Calendar.HOUR)+1);
    Date expiryDate = new Date(cal.getTimeInMillis());
    String getUrl = restS3Service.createSignedGetUrl(bucketName, null,
            expiryDate, false);

    S3Object obj = signedUrlHandler.getObjectWithSignedUrl(getUrl);
该功能可用于共享bucket,并允许通过身份验证的AWS用户而不是bucket所有者支付共享bucket的使用费

所以,如果您想创建一个签名URL,那么没有任何人可以通过签名URL访问该对象。如何识别访问它的AWS帐户,或者当没有S3用户访问它时会发生什么

我认为这是不可能的