Я использую Java AmazonS3Client для подключения к корзине в S3. Моя структура ведра, как показано ниже.
Bucket --> folder_1 --> sub_folder_1 --> file1,file2,file3
Когда я запрашивал listObjects
из клиента s3, я получаю все папки и файлы как объекты, чего я и ожидаю.
Когда я развернул свой код в EC2, тот же код возвращает только файлы в виде объектов. Он не возвращает объекты папки.
Единственное отличие, которое я делаю, заключается в том, что локально я использую ACCESS_KEY & SECRET_KEY, а в EC2 я создал роль IAM. Ниже приведены действия, разрешенные как часть моей роли IAM.
"Action": [
"s3:GetObject",
"s3:PutObject",
"s3:ListBucket",
"s3:GetBucketLocation",
"s3:AbortMultipartUpload",
"s3:ListMultipartUploadParts",
"s3:ListBucketMultipartUploads"
],
"Resource": [
"arn:aws:s3:::my-bucket-name/*",
"arn:aws:s3:::my-bucket-name"
]
В локальном listObjects
возвращает указанные ниже ключи объектов.
folder_1
folder_1/sub_folder_1
folder_1/sub_folder_1/file1
folder_1/sub_folder_1/file2
folder_1/sub_folder_1/file3
Но в EC2 я получаю только ниже клавиш.
folder_1/sub_folder_1/file1
folder_1/sub_folder_1/file2
folder_1/sub_folder_1/file3
Я хочу получить те же ключи объектов, что и локальные, в EC2. В чем может быть проблема.