2017-06-13 4 views
0

Ich versuche, Amazon S3 über Bucket-Richtlinien mit anderen Diensten zu verbinden.Verbinden von Amazon S3-Bucket mit anderem Server - IAM

{ 
    "Version": "2012-10-17", 
    "Statement": [ 
    { 
     "Effect": "Allow", 
     "Principal": {"arn:aws:iam::ACCOUNT-ID:user/augmen", 
     } 

     "Action": [ 
     "s3:ListBucket", 
     "s3:GetBucketLocation", 
     "s3:GetObject" 
     ], 
     "Resource": ["arn:aws:s3:::rajatv.input", 
        "arn:aws:s3:::rajatv.input/*"] 
    } 
    ] 
} 

Noch immer Fehler wie:

  1. Diese Richtlinie enthält ungültige Json
  2. Ungültige Bucket Syntax
  3. keine Ressourcen

Antwort

2

Es scheint, dass Sie Bucket-Zugriff auf einen bestimmten IAM-Benutzer erteilen möchten. Wenn ja, ist der beste Weg, eine Richtlinie auf den IAM-Benutzer selbst zu setzen, so dass die Berechtigungen nur für sie gelten.

Mit dieser Richtlinie wird Bucket-Zugriff auf den Benutzer gewährt, der über eine IAM-Richtlinie verfügt. Um es hinzuzufügen, den Benutzer gehen, hinzufügen Inline-Politik:

{ 
    "Version": "2012-10-17", 
    "Statement": [ 
     { 
      "Sid": "PermitBucketAccess", 
      "Effect": "Allow", 
      "Action": [ 
       "s3:ListBucket", 
       "s3:GetBucketLocation", 
       "s3:GetObject" 
      ], 
      "Resource": [ 
       "arn:aws:s3:::rajatv.input", 
       "arn:aws:s3:::rajatv.input/*" 
      ] 
     } 
    ] 
} 

Bucket Richtlinien, die auf die Schaufel aufgebracht werden selbst werden am besten verwendet, um Zugang zu gewähren jeden, während eine IAM-Politik ist am besten um Berechtigungen für bestimmte IAM-Benutzer, -Gruppen und -Rollen zu erteilen.

+0

Ich habe dies versucht, aber der Fehler: Fehlende erforderliche Feld Principal? – Swap

+0

Fügen Sie es einem IAM-Benutzer (über Inline-Richtlinie) hinzu - nicht als Bucket-Richtlinie. Da es an einen Benutzer angehängt ist, ist kein Prinzipal erforderlich. –

1

Haupt Bedürfnisse dieses Format haben:

"Principal": {"AWS": ["arn:aws:iam::ACCOUNT-ID-WITHOUT-HYPHENS:root"]}, 
Verwandte Themen