Есть ли способ читать из корзины S3, которой нет в вашей учетной записи AWS, и вы не можете взять на себя роль, чтобы получить к ней доступ - особенно в EMR.
В простом случае Had oop или Spark вы можете указать:
fs.s3.access.key=<accessKey>
fs.s3.secret.ket=<secretKey>
в конфигурации Had oop с помощью SimpleAWSCredentialsProvider. Это работает локально, однако при попытке запустить EMR, который использует EMRS, я не могу заставить это работать, я всегда получаю 403:
com.amazon.ws.emr.hadoop.fs.shaded.com.amazonaws.services.s3.model.AmazonS3Exception: Access Denied (Service: Amazon S3; Status Code: 403
У меня есть только идентификатор доступа пользователя IAM и Секретный ключ для чтения из корзины, мой профиль экземпляра, который создает экземпляры EMR EC2, не имеет разрешений на чтение из корзины.
Чтобы дать больше контекста, я читаю и пишу из нескольких корзин s3 в учетной записи EMR предоставляется, но есть одна корзина, которая живет вне, к которой я пытаюсь получить доступ.
EDIT
Это для приложения Scala Spark, в которое я пытаюсь загрузить содержимое S3 ведро непосредственно в фрейм данных.