当前位置: 首页 > 知识库问答 >
问题:

S3桶策略:S3Client.ListObjects()期间的“org.xml.sax.SAXParseException:文件过早结束”

乔凯康
2023-03-14

尝试将对listObjects操作的访问添加到存储桶策略以从s3获取读取,收到错误:

错误操作不适用于语句中的任何资源

{
           "Sid": "AllowListingOfUserFolder",
           "Action": ["s3:ListBucket"],
           "Effect": "Allow",
           "Principal":{"AWS":"arn:aws:iam::<ID>:user/my_user"},
           "Resource": "arn:aws:s3:::outputbucket/*",
           "Condition":{"StringLike":{"s3:prefix":["folder/*"]}}

        }

政策出了什么问题?

           {
               "Sid": "AllowListingOfUserFolder",
               "Action": ["s3:ListBucket"],
               "Effect": "Allow",
               "Principal":{"AWS":"arn:aws:iam::<ID>:user/my_user"},
               "Resource": "arn:aws:s3:::outputbucket"
            }
ObjectListing objects = s3Client.listObjects(outputBucketName, outputKeyPrefix);

共有1个答案

李光华
2023-03-14

回答我自己的问题。正如https://forums.aws.amazon.com/thread.jspa中提到的,threadid=160117是bucketname的问题。我使用了路径到bucketName+文件夹,但喊只有bucketName

>

  • com.example.bucketname/folder<-错误
  • com.example.bucketname/<-更正

    ListObjectsRequest ListObjectsRequest=new ListObjectsRequest().WithBucketName(“com.example.bucketName/”).WithPrefix(“folder/”)

  •  类似资料:
    • 试图将对listObjects操作的访问添加到bucket策略以从s3读取,收到错误: 错误操作不适用于语句中的任何资源 政策有什么问题? UPD完全删除资源和条件中的“/*”,并收到一个错误: 组织。xml。萨克斯。SAXParseException:文件过早结束。 此代码失败: 请求处理失败;嵌套异常为com。amazonaws。SdkClientException:无法使用处理程序类com解

    • 问题内容: 我收到非常奇怪的“文件过早结束”。我们的一台服务器上最近几天的异常。在 相同的 XML配置在另一台服务器上的罚款。我们在这两台服务器上都使用Tomcat 5.0.28。这段代码已经使用了7年以上,直到最近的服务器崩溃后,我们才在其中一台服务器上遇到此问题。XML和Java解析代码没有变化。:( 我唯一看到的区别是Java版本- 问题服务器 Java版本“ 1.6.0_16” Java

    • 所以我就做了如下的桶策略: {“版本”:“2012-10-17”,“ID”:“HTTP引用策略示例”,“语句”:[{“SID”:“允许从www.example.com和example.com发起的get请求”,“Effect”:“Allow”,“Principal”:“”Action“:”S3:“,”Resource“:”arn:aws:s3:::exampleBucket/“,”Conditio

    • 我最近通过控制台在AWS上创建了一个S3桶,带有默认settigns(显然除了名称)。我尝试编辑桶策略,但得到这个错误:"错误访问拒绝",与我的管理IAM用户和根帐户。 如何获得编辑S3 Bucket策略的权限?

    • 我搞不清这里出了什么问题。如有任何帮助,我们将不胜感激。

    • 我发现,当我在IAM策略中使用NotResource作为掩码并将其附加到bucket时,受策略影响的资源是那个bucket中没有在NotResource子句中指定的所有资源。我需要指出一个文档,它清楚地表明情况是这样的。我一直在查看内联策略的文档,以及s3访问管理和策略的文档,但我很难找到这些特定的信息。文档中是否说明了在内联策略中指定资源的限制?