2016-06-17 23 views
-1

AWS S3へのファイルのバックアップをサポートするNASがあります。私はAWSコンソールのIAMの下にユーザーを作成しました。このユーザーが読み取り/書き込み権限を持つ特定のS3バケットにしかアクセスできないポリシーを生成しようとしました。AWS IAMバックアップに特定のS3バケットへのユーザーアクセスを許可するポリシー

{ 
    "Version": "2012-10-17", 
    "Statement": [ 
    { 
     "Sid": "Stmt1465916250000", 
     "Effect": "Allow", 
     "Action": [ 
      "s3:PutObject", 
      "s3:PutObjectAcl" 
     ], 
     "Resource": [ 
     "arn:aws:s3:::atlas-nas-backups" 
     ] 
     } 
    ] 
} 

しかし、これをS3のすべてのアクションに対してポリシーシミュレータで実行すると、それぞれが失敗します。このユーザーがオブジェクトをバケットに書き込めないことを忘れましたか?このユーザーがファイルを特定のバケットにバックアップする機能以外の他のAWSリソースにアクセスすることは望ましくありません。

答えて

1

/*ワイルドカードの指定を使用して、バケット自体にのキーを個別に指定する必要があるバケットのアクセス権を持つ奇妙なものがあります。さらに、書き込み操作の場合でも、リストアクションが必要な場合があります。

{ 
    "Version": "2012-10-17", 
    "Statement": [ 
    { 
     "Sid": "Stmt1465916250000", 
     "Effect": "Allow", 
     "Action": [ 
      "s3:PutObject", 
      "s3:PutObjectAcl", 
      "s3:ListBucket", 
      "s3:GetBucketLocation" 
     ], 
     "Resource": [ 
     "arn:aws:s3:::atlas-nas-backups", 
     "arn:aws:s3:::atlas-nas-backups/*" 
     ] 
     } 
    ] 
} 

「s3:GetBucketLocation」アクションと「s3:ListBucket」アクションも追加しました。前述のように、オブジェクトを記述しているだけであっても、サービスはアイテムをリストし、バケットの場所(地域)を取得することができます。あなたはこれらの最後の2つが必要ではないかもしれませんが、ちょうどの場合にそれらをあなたに示すことを望んでいました。

関連する問題