Я пытаюсь создать S3 Batch (не AWS Batch, это S3 Batch) через boto3 и не могу определить, какие разрешения мне нужно включить для успешного создания. Я продолжаю получать «Отказано в доступе», когда пытаюсь создать задание, но оно прекрасно работает, когда я применяю политику полного доступа S3 к роли выполнения. Не очень хорошее долгосрочное решение, очевидно ...
Я почти уверен, что мне нужно добавить определенное разрешение в IAM, но я не могу понять, какое именно. Я не вижу разрешения "CreateJob" нигде. Возможно, мне нужно добавить доступ к какому-нибудь контейнеру управления s3, где написано задание?
Я пытался добавить разрешения к паре вариантов того, что может быть блоком управления S3, но я пока не добился успеха.
Это прекрасно работает, когда применяется полная политика разрешений S3:
import boto3
s3_control_client = boto3.client('s3control', region_name='us-east-1')
response = s3_control_client.create_job([very long and boring])
Это вывод (очищенный), который я получаю в журналах, когда пытаюсь запустить с тем, что я считаю приемлемыми разрешениями.
2019-05-23 18:35:37,934 Starting new HTTPS connection (1): [ACCOUNTIDNUMBER].s3-control.us-east-1.amazonaws.com:443
2019-05-23 18:35:38,040 https://[ACCOUNTIDNUMBER].s3-control.us-east-1.amazonaws.com:443 "POST /v20180820/jobs HTTP/1.1" 403 204
2019-05-23 18:35:38,040 Response headers: {'x-amz-id-2': '[SCRUBBED]', 'x-amz-request-id': '[SCRUBBED], [SCRUBBED]', 'Date': 'Thu, 23 May 2019 18:35:38 GMT', 'Content-Type': 'application/xml', 'Content-Length': '204', 'Server': 'AmazonS3'}
2019-05-23 18:35:38,041 Response body:
b'<Error><Code>AccessDenied</Code><Message>Access Denied</Message><RequestId>[SCRUBBED]</RequestId>
Любые идеи о том, какие разрешения мне нужно включить здесь для завершения?