1

2 つの AWS アカウントがあります。s3cmd を使用して、ある s3 バケットから別の s3 バケットにデータをバックアップしています。私たちが遭遇した問題は次のとおりです。ソース バケットは公開されており、資格情報なしで誰でもアクセスできます。バックアップ ファイルを配置したい s3 バケットから 2 つのマスター キー ペアのいずれかを使用して s3cmd でバックアップを開始すると、問題なく動作します。

ただし、これと同じ操作を実行しようとすると、今度は (ファイルのバックアップ先のアカウントで) アカウントのキー ペアではなくユーザーのキー ペアを使用して、アクセス拒否エラーが発生します。

実行するコマンドは次のとおりです。 s3cmd -c /root/.s3cfgBackup sync s3://oldbucket/news/ s3://newbucket/Videos/

アクセスが拒否されるユーザーのポリシーは次のとおりです

{
  "Statement": [
    {
      "Action": "s3:*",
      "Effect": "Allow",
      "Resource": [
        "arn:aws:s3:::newbucket",
        "arn:aws:s3:::newbucket/*"
      ]
    }
  ],
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "s3:ListAllMyBuckets",
      "Resource": "arn:aws:s3:::*"
    }
  ]
}

このアクセス拒否の問題を解決できる人はいますか? それは大歓迎です。

4

1 に答える 1

2

そのユーザーのポリシーを次のように変更してみます。

{
  "Statement": [
    {
      "Action": "s3:*",
      "Effect": "Allow",
      "Resource": [
        "arn:aws:s3:::newbucket",
        "arn:aws:s3:::newbucket/*"
      ]
    }
  ],
  "Statement": [
    {
      "Action": "s3:*",
      "Effect": "Allow",
      "Resource": [
        "arn:aws:s3:::oldbucket",
        "arn:aws:s3:::oldbucket/*"
      ]
    }
  ],
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "s3:ListAllMyBuckets",
      "Resource": "arn:aws:s3:::*"
    }
  ]
}
于 2014-01-13T09:43:09.073 に答える