2012-11-30 5 views
15

내 양동이에 console.aws.amazon.com을 통해 이러한 policy을 시도하고있다 :S3 정책이 잘못된 행동이 - S3 : ListAllMyBuckets

 

    { 
     "Statement": [ 
     { 
      "Effect": "Allow", 
      "Action": [ 
      "s3:ListBucket", 
      "s3:GetBucketLocation", 
      "s3:ListBucketMultipartUploads" 
      ], 
      "Resource": "arn:aws:s3:::itnighq", 
      "Condition": {} 
     }, 
     { 
      "Effect": "Allow", 
      "Action": [ 
      "s3:AbortMultipartUpload", 
      "s3:DeleteObject", 
      "s3:DeleteObjectVersion", 
      "s3:GetObject", 
      "s3:GetObjectAcl", 
      "s3:GetObjectVersion", 
      "s3:GetObjectVersionAcl", 
      "s3:PutObject", 
      "s3:PutObjectAcl", 
      "s3:PutObjectAclVersion" 
      ], 
      "Resource": "arn:aws:s3:::itnighq/*", 
      "Condition": {} 
     }, 
     { 
      "Effect": "Allow", 
      "Action": "s3:ListAllMyBuckets", 
      "Resource": "*", 
      "Condition": {} 
     } 
     ] 
    } 

하지만이 오류 메시지가납니다을 : 정책이 유효 작용을 - S3를 : ListAllMyBuckets "Resource": "*"과 같이 보이지 않습니다. ** arn : aws : s3 ::: ****도 사용하려고했으나 작동하지 않습니다. .

누구든지 단서가 있습니까?

답변

9

나는 내 자신을 알아 냈다. IAM에서 완료해야하며 S3 자체는 필요하지 않습니다.

+9

당신은 IAM에서이 정책을 적용하는 방법에 대한 단계를 설명시겠습니까? – dnlbrky

2

@dnlbrky IAM 사용자/그룹/역할에 대한 정책을 설정하고이를 위해 AWS 콘솔을 사용하여 설정해야합니다 IAM 사용자/그룹 또는 put_ [role/user/group] _policy boto API 호출을 호출하여 호출 할 수 있습니다.

12

zdev가 언급 했으므로 IAM에서이 작업을 수행해야합니다. IAM console로 이동 사용자> 권한> 인라인 정책> 만들기> 사용자 정의로 이동이 입력 :

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

이 정책에 다음 오류가 있습니다. 다음 문구 ID가 유효하지 않습니다. "사용자가 모든 S3 버킷을 나열 할 수있게 허용" – zPrima

+0

@zPrima 감사합니다. [Sid 필드가 선택 사항입니다] (http : //docs.aws.amazon .com/IAM/latest/UserGuide/reference_policies_grammar.html # policies-grammar-bnf). 나는 그것을 제거했습니다. – z0r