2012-01-31 7 views
3

S3バケットへの画像のアップロードをテストすると、AWS :: S3 :: AccessDenied(Ruby on Railsを使用)が取得されます。コードは私自身のセキュリティキーと秘密のコードを自分自身のバケツに使っています。自分自身に許可されているすべての権限(リスト、アップロード/削除、権限の表示、権限の編集)を持っています。AWS S3 AccessDenied。バケットパーミッションが付与されるため、私はバケットポリシーが必要ですか?

また、バケットポリシーを入力してACLアクセス権を設定する必要はありますか。なぜ私のコードはS3にアクセスするために自分のアカウントキーを使用するため、これが必要なのか分かりません。また、画像は私のサイトでうまく表示されているので、読み取り権限に問題はないようです。

答えて

5

バケツにすべてのポリシーを設定する必要はありません。少なくとも、動作させるには削除する必要があります。いずれのACLも設定する必要はありません。口座名義人のためのAWSのID +シークレット

は、任意のACLまたはポリシーを設定せずにバケツですべてにアクセスすることができます。

アマゾンIAMを使用して、完全なアカウント所有者よりも少ないアクセス権で「ユーザー」を作成し、そのユーザーの資格情報をルビーコードで使用してアップロードを処理したい場合があります。

アップロードされた画像を一般公開するには、ポリシーやACLが必要ですが、アップロードを妨げてはいけません。後で読み取り専用アクセスを開くことができます。

Cyber​​duckなどのツールでこれらのAWSキーとシークレットを試して、ルビコードやIDがあるかどうかを確認してください。

関連する問題