Squeak.ru - шаблоны программирования

Ошибка сегмента миграции S3

Я хочу перенести корзину s3 из одной учетной записи в другую, вот моя политика корзины

{
    "Version": "2008-10-17",
    "Id": "Policy1335892530063",
    "Statement": [
        {
            "Sid": "DelegateS3Access",
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::xxxxxxxx:root"
            },
            "Action": "s3:*",
            "Resource": [
                "arn:aws:s3:::test123",
                "arn:aws:s3:::test123/*"
            ]
        },
        {
            "Sid": "Stmt1335892150622",
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::xxxxxxx:root"
            },
            "Action": [
                "s3:GetBucketAcl",
                "s3:GetBucketPolicy"
            ],
            "Resource": "arn:aws:s3:::test123"
        },
        {
            "Sid": "Stmt1335892526596",
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::xxxxxxxxx:root"
            },
            "Action": "s3:PutObject",
            "Resource": "arn:aws:s3:::test123/*"
        }
    ]
}

вот моя политика пользователя IAM

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "s3:*",
      "Resource": ["arn:aws:s3:::*"]
    }
  ]
}

Когда я запускаю команду

aws s3 sync s3://test123 s3://abc-test123

Я получаю ошибку

Ошибка клиента (AccessDenied) произошла при вызове операции CopyObject: Доступ запрещен.


Ответы:


1

Кажется, ваша политика ведра верна. Убедитесь, что вы используете учетную запись root, как указано в политике сегмента. Также вам может потребоваться проверить, нет ли в целевом сегменте политики запрещенных сегментов.

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

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

  • 2

    Убедитесь, что вы предоставляете соответствующие разрешения как для исходного сегмента (для чтения), так и для целевого сегмента (для записи).

    Если вы используете учетные данные root (обычно не рекомендуется) для учетной записи, которая владеет корзиной, вам, вероятно, даже не нужна политика корзины - учетная запись root по умолчанию должна иметь необходимый доступ.

    Если вы назначаете разрешения пользователю IAM, вместо создания политики сегмента назначьте разрешения самому пользователю IAM. В этой ситуации нет необходимости предоставлять Принципала.

    Начните с проверки, что у вас есть права на перечисление обоих сегментов:

    • aws s3 ls s3://test123
    • aws s3 ls s3://abc-test123

    Затем убедитесь, что у вас есть права на копирование файла из источника в место назначения:

    • aws s3 cp s3://test123/foo.txt .
    • aws s3 cp foo.txt s3://abc-test123/foo.txt

    Если они работают, то команда sync тоже должна работать.

    14.06.2016
    Новые материалы

    Угловая структура архитектуры
    Обратите внимание, что эта статья устарела, я решил создать новую с лучшей структурой и с учетом автономных компонентов: https://medium.com/@marekpanti/angular-standalone-architecture-b645edd0d54a..

    «Данные, которые большинство людей используют для обучения своих моделей искусственного интеллекта, поставляются со встроенным…
    Первоначально опубликовано HalkTalks: https://hacktown.com.br/blog/blog/os-dados-que-a-maioria-das-pessoas-usa-para-treinar-seus-modelos-de-inteligencia-artificial- ja-vem-com-um-vies-embutido/..

    Сильный ИИ против слабого ИИ: различия парадигм искусственного интеллекта
    В последние годы изучению и развитию искусственного интеллекта (ИИ) уделяется большое внимание и прогресс. Сильный ИИ и Слабый ИИ — две основные парадигмы в области искусственного интеллекта...

    Правильный способ добавить Firebase в ваш проект React с помощью React Hooks
    React + Firebase - это мощная комбинация для быстрого и безопасного создания приложений, от проверки концепции до массового производства. Раньше (знаете, несколько месяцев назад) добавление..

    Создайте API с помощью Python FastAPI
    Создание API с помощью Python становится очень простым при использовании пакета FastAPI. После установки и импорта вы можете создать приложение FastAPI и указать несколько конечных точек. Каждой..

    Веселье с прокси-сервером JavaScript
    Прокси-серверы JavaScript — это чистый сахар, если вы хотите создать некоторую общую логику в своих приложениях, чтобы облегчить себе жизнь. Вот один пример: Связь клиент-сервер Мы..

    Получить бесплатный хостинг для разработчиков | Разместите свой сайт за несколько шагов 🔥
    Статические веб-сайты — это веб-страницы с фиксированным содержанием и его постоянным содержанием. Но теперь статические сайты также обрабатывают динамические данные с помощью API и запросов...