AWS Перемещение данных между аккаунтами с использованием Lambda - PullRequest
1 голос
/ 05 августа 2020

У меня есть данные, поступающие в учетную запись A S3, которые я хочу автоматически скопировать в учетную запись B S3, но не понимаю, как я могу ссылаться на файлы в учетной записи A в моей Lambda в учетной записи B, чтобы сделать копию. 1002 * Выполненные шаги на данный момент:

1 Встроенная политика учетной записи B добавлена ​​в роль выполнения, ссылающуюся на корзину S3 учетной записи A

2 Учетная запись B Разрешение учетной записи A на вызов Lambda

3 Учетная запись A Политика сегмента, разрешающая S3 доступ к выполнению роли Роль Учетная запись B

4 Учетная запись A Уведомление о событии для учетной записи B Lambda (все события ObjectCredte)

Я пропустил некоторые шаги или уже здесь, и если нет, как моя лямбда может напрямую ссылаться на отдельные файлы, захваченные событием?

1 Ответ

0 голосов
/ 05 августа 2020

Обновление из-за комментариев:

Из вышеприведенного вопроса я не уверен, что понимаю настройку, но вот как я подхожу к этому с архитектурной точки зрения:

  1. Лямбда-функция внутри учетной записи A запускается событием S3 при загрузке объекта.

  2. Лямбда-функция извлекает загруженный объект из исходного сегмента

  3. Лямбда-функция принимает на себя роль в учетной записи B, которая предоставляет разрешение на запись в целевой сегмент.

  4. Лямбда-функция записывает объект в целевую корзину.

Необходимые вам разрешения:

  • роль выполнения для лямбда-функции в учетной записи A который (а) предоставляет разрешение на чтение из исходного сегмента и (б) дает разрешение на выполнение роли в учетной записи B (см. следующий пункт ниже)

  • A перекрестный роль учетной записи в учетной записи B , (a) доверяет ab ove роль исполнения и (b) предоставление разрешения на запись в целевую корзину

Примечание. Обязательно сохраните объект, предоставляющий bucket-owner-full-control, чтобы учетная запись B имела разрешения на использование скопированного объекта .

Если вы хотите реплицировать объекты в корзину в другой учетной записи AWS и не заботитесь о том, что репликация может занять до 15 минут, вам не нужно создавать ничего себе. Просто воспользуйтесь функцией Amazon S3 Replication .

Репликация позволяет c автоматическое асинхронное копирование объектов в корзины Amazon S3. Сегменты, настроенные для репликации объектов, могут принадлежать одной учетной записи AWS или другим учетным записям. Вы можете копировать объекты между разными AWS регионами или внутри одного региона.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...