Я пытаюсь получить данные Nexus, которые хранятся в моей учетной записи S3 Bucket mbop-devo
. Область S3, в которую служба nexus записывает данные, находится в mbop-devo
учетной записи. Политика корзины вставлена ниже.
Теперь я хочу получить данные в другое ведро S3 в моей собственной AWS учетной записи korgak
. Внутри korgak
аккаунта я взял на себя роль нексуса. Когда я пытаюсь SQL запросить в выводе, он возвращает мое имя данных Nexus. Но когда выполняется запрос на выборку, выдается ошибка:
Причина: java .io.FileNotFoundException: Нет такого файла или каталога 's3: // mbop-na-preprod-nexus / mbopCustomerData /00242/2018-12-28T0041/PT1M/a403dc78-aded-46c9-b424-18344564438d.gz'
Файл присутствует в корзине S3 Я не уверен, где отсутствует разрешение
Политика S3 Bucket:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "NexusSystemPermissions",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::255137427906:role/EmrEc2Instance"
},
"Action": [
"s3:PutObject",
"s3:PutObjectAcl",
"s3:List*"
],
"Resource": [
"arn:aws:s3:::mbop-na-preprod-nexus/*",
"arn:aws:s3:::mbop-na-preprod-nexus"
]
},
{
"Sid": "CrossAccountPermissions1",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::255137427906:root"
},
"Action": "s3:*",
"Resource": [
"arn:aws:s3:::mbop-na-preprod-nexus"
]
},
{
"Sid": "CrossAccountPermissions2",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::997380610533:root"
},
"Action": "s3:*",
"Resource": [
"arn:aws:s3:::mbop-na-preprod-nexus"
]
},
{
"Sid": "CrossAccountPermissions3",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::997380610533:root"
},
"Action": "s3:*",
"Resource": [
"arn:aws:s3:::mbop-na-preprod-nexus/*"
]
},
{
"Sid": "CrossAccountPermissions4",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::255137427906:root"
},
"Action": "s3:*",
"Resource": [
"arn:aws:s3:::mbop-na-preprod-nexus/*"
]
}
]
}