2009-07-14 14 views
5

私はいくつかのことを試みた:S3BrowseRightAws Ruby gemと他のツール。すべてが個々のキーベースでアクセスを許可しますが、バケットにACLを設定できませんでした。実際には、ACLをバケットに設定してもエラーは返されません。しかし、別のツールをリフレッシュまたはチェックインすると、バケットのACLはオーナーにのみリセットされます。S3にバケットのACLを設定する方法は?

私が開発しているアプリケーションのために、FlixCloudへの読み書きアクセス権を与えたいと思います。彼らは出力ファイルを書くためにアクセスする必要があります。

答えて

1

いいえ、10分後にもう一度チェックしてください。 ACLは設定されたままです。私はこれがあなたの終わりに何かであると思う。別のアカウント/ワークステーションを試してみてください。

+0

これまでこれを忘れてしまった。私の問題は、数分後にACLを上書きしたスクリプトでした。 –

1

あなたのために、S3fmが正常にACLを変更できたことを二重に確認しました。彼らの電子メールをユーザIDとして[email protected]としました。あなたの後のリストのユーザーはflixclouds3と表示されます。

+0

あなたは、1または2分後にACLをチェックしましたか?私の最終的には、ACLは常にオーナーにのみリセットされます。 –

11

私はACL対バケットポリシーで苦労していたので、

ACL

ACLは、あなたのバケット内の単一のファイルに添付のアクセス権を定義します。バケットポリシーは、バケット内の任意のフォルダまたはファイルに対するアクセス許可を説明するスクリプトです。 、、ホットリンクを制限する許可または特定の、またはすべてのファイルへのアクセスを拒否し、IPアドレスを制限するために、バケットpolciesを使用など

編集Amazon WebサービスへのS3バケットポリシー

ログ、S3へ]をクリックし、左側の列にあるバケット名をクリックします。ページの下部にあるバケットのプロパティパネルを表示します。右下にある[バケットポリシーの編集]ボタンをクリックします。これにより、ポリシースクリプトを貼り付けることができるライトボックスが表示されます。スクリプトが検証に失敗すると、保存されません。不正ホットリンク(それへのリンク第三者のサイトを)防ぐが、誰を許可する(バケットは、コンテンツ配信ネットワークとして使用されている場合に便利)全員への読み取りアクセスを有効に

サンプルポリシー

{ 
    "Version": "2008-10-17", 
    "Id": "", 
    "Statement": [ 
      { 
       "Sid": "AddPerm", 
       "Effect": "Allow", 
       "Principal": { 
        "AWS": "*" 
       }, 
       "Action": "s3:GetObject", 
       "Resource": "arn:aws:s3:::my_bucket_name/*" 
      } 
    ] 
} 

サンプルポリシーファイルをダウンロードします

{ 
    "Version":"2008-10-17", 
    "Id":"preventHotLinking", 

    "Statement":[ { 

     "Sid":"1", 
     "Effect":"Allow", 
     "Principal": { 
      "AWS":"*" 
     }, 

     "Action":"s3:GetObject", 
     "Resource":"arn:aws:s3:::your.bucket.name/*", 

     "Condition":{ 

      "StringLike": { 

       "aws:Referer": [ 
        "http://yourwebsitename.com/*", 
        "http://www.yourwebsitename.com/*" 
       ] 
      } 
     } 
    }] 
} 

ポリシーを生成

http://awspolicygen.s3.amazonaws.com/policygen.html

サンプルバケットポリシー

http://docs.amazonwebservices.com/AmazonS3/latest/dev/index.html?AccessPolicyLanguage_UseCases_s3_a.html

+3

バケットポリシーは素晴らしいですが、1つの注意点があります。バケットポリシーは、バケット所有者が所有するオブジェクトに対してのみ機能します。したがって、コンテンツがバケット所有者以外のユーザーアカウントを介してバケット内にある場合は、所有者をリセットするために、バケット内のオブジェクトをACLのコピーまたはコピーを使用してコピーする必要があります。 –

+0

先端スティーブのおかげで、私はオブジェクトの所有者の警告について知らなかった。 –

関連する問題