2017-02-12 25 views
0

私のサイトをすべてサーバーからs3に移動する途中です。私はすでに動的サイトから静的サイトに移行していたため、サーバーの稼働はもはや操作の必要はありません。グループがtravisci経由でs3に公開するために必要なアクセス権

最後のサイトは私のブログですが、それはjekyllを実行するので、新しいコンテンツを公開するためにローカルにビルドする必要はありません。私はジキルに縛られたくないので、ギターページにそれを残したくない。

私はジェンキンスサーバーからトラビスciにビルドプロセスを移そうとしています。私はグループに正しいアクセス権を与えていると思いますが、私はグループ/ユーザに"s3:*"を許可せずに動作させるわけではありません。

これが私の現在のIAMグループ権限ポリシーです:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetBucketLocation", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::*" ] }, { "Effect": "Allow", "Action": [ "s3:PutObject", "s3:GetObject", "s3:DeleteObject", "s3:PutObjectVersion", "s3:GetObjectVersion", "s3:DeleteObjectVersion", "s3:ListMultipartUploadParts", "s3:ListMultipartUpload", "s3:RestoreObject", "s3:GetObjectVersionTorrent", "s3:GetObjectTorrent", "s3:PutObjectVersionTagging", "s3:PutObjectTagging", "s3:GetObjectVersionTagging", "s3:GetObjectTagging", "s3:DeleteObjectTagging", "s3:DeleteObjectVersionTagging" ], "Resource": [ "arn:aws:s3:::travis-s3-pub-test/*" ] } ] }

AWSドキュメントに基づいて必要であるべき唯一の権限は以下のとおりです。

`` `

  "s3:PutObject", 
      "s3:GetObject", 
      "s3:DeleteObject", 

`` `

しかし、 rk。

答えて

0

私が働いているsys-adminの助けを借りて、jfronzaの助けを借りて答えを見つけました。

私はのacl部分を欠席していました。ファイルのパーミッションが起こると、ファイルがアップロードされているので、必要性は、彼らがこの権限を必要とするパブリックであることをどこ

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:DeleteObject", "s3:DeleteObjectVersion", "s3:GetObject", "s3:GetObjectAcl", "s3:GetObjectTorrent", "s3:GetObjectVersion", "s3:GetObjectVersionAcl", "s3:GetObjectVersionTorrent", "s3:PutObject", "s3:PutObjectAcl", "s3:PutObjectVersionAcl", "s3:RestoreObject" ], "Resource": [ "arn:aws:s3:::travis-s3-pub-test/", "arn:aws:s3:::travis-s3-pub-test/*" ] }, { "Effect": "Allow", "Action": [ "s3:ListAllMyBuckets" ], "Resource": [ "arn:aws:s3:::*" ] } ] }

ACL部分があります。

これにはAmazon docs on s3 policiesがかなり悪いですが、travisCI docs on working with s3はいいですし、これを投稿する前に私が見た場合はこれを正確に教えてください。

関連する問題