質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.53%

  • AWS(Amazon Web Services)

    1992questions

    Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

  • Amazon S3

    38questions

    Amazon S3 (Simple Storage Service)とはアマゾン・ウェブ・サービスが提供するオンラインストレージサービスです。

CloudBerry Explorer for Amazon S3でアップしたファイルに自動的にACL設定をしたい

解決済

回答 2

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 1,339

chibi_kuma

score 37

CloudBerry Explorer for Amazon S3(ver 5.0.3.79)を使用して、
Amazon S3 のバケットに画像をアップロードしています。

アップされた画像の確認の為に、
ウェブURLに記載されているアドレスをブラウザに入れてアクセスすると、
以下のように表示されて、画像が表示されません。

この XML ファイルにはスタイル情報が関連づけられていないようです。
以下にドキュメントツリーを表示します。
<Error>
    <Code>AccessDenied</Code>
    <Message>Access Denied</Message>
    <RequestId>(略)</RequestId>
    <HostId>(略)</HostId>
</Error>

アップされた画像ファイル名を右クリックし、「ACL設定」で、
すべてのユーザー行の「読み込み」チェックをONにすると、
画像が表示できるようになります。

「CloudBerry Explorer for Amazon S3」は、
日付変更で並び替えしても、正しい並び順にならないので(これはバグ?)
新規にアップしたファイルが多いと、「ACL設定」を行う作業が大変面倒です。

画像ファイルをアップした時に自動で
チェックがONの状態にできないものでしょうか?

CloudBerry Explorer for Amazon S3

サーバーについて詳しくない為、教えていただきたく、
お願い申し上げます。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 2

checkベストアンサー

+1

Cloudberryだけでは無理だと思います。

AWSコンソールを使える権限をお持ちであれば、対象バケットに対してポリシー設定をすれば解決できると思います。
匿名ユーザーへの読み取り専用アクセス許可の付与


日付変更で並び替えしても、正しい並び順にならないので(これはバグ?) 

バグではなくそういう思想で作られているからです。

S3は、バケットとオブジェクト(フォルダとファイル)という概念で成り立っており
フォルダもファイルもバケット内のオブジェクトという認識しかできません。

ファイルをUPLOADすると、オブジェクトに参加するという感じになります。
ファイルとフォルダの違いは名前の後に【/】があったらフォルダとみなしているだけで
Cloudberryなどは、ごちゃごちゃに入ったオブジェクトのjsonをソートして見せているだけのため、時刻や名前で上手くソートできないのです。

ちなみに、ファイルアップロードの動きとしては、1つのデータセンターにアップロードされると
同時に2拠点のデータセンターにコピーしミラーリングします。
#ファイルやフォルダを削除できなかったり削除が遅いときがありますが、3拠点で完全に削除されるまで待っているためです。

投稿

編集

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/03/30 19:04

    lazhuwardさん、ご回答頂き誠にありがとうございました。

    教えていただいた通り、バケットポリシーを設定した所、
    Cloudberry から画像をアップしただけで、画像個別に「ACL設定」から読み取り権限を与えなくても、
    ブラウザから画像にアクセスできるようになりました!!
    (ブラボー!)
    これで更新作業が楽になります…。本当にありがとうございました。


    > S3は、バケットとオブジェクト(フォルダとファイル)という概念で成り立っており
    > フォルダもファイルもバケット内のオブジェクトという認識しかできません。

    あー、そうだったんですね。
    Cloudberry は、それを無理矢理、ツリー構造っぽく
    見せかけてくれているのですね。
    ずっとバグなんだと思っていました…。
    勉強になりました。

    お陰様で、無事希望通りの事が出来るようになりましたので、
    これでこの質問をクローズさせていただきます。

    ご回答いただいた皆様、本当にありがとうございました。
    また、よろしくお願い申し上げます。

    キャンセル

+1

個別のオブジェクトに対するアクセス許可を行うのではなく、S3バケットまるごと「すべてのユーザ」にアクセス許可を与えておけば…と思いましたが、両者は独立しているようなのでダメでした。

バケットに対するアクセス許可とオブジェクトに対するアクセス許可は完全に独立しています。
(参考)
http://docs.aws.amazon.com/ja_jp/AmazonS3/latest/UG/EditingPermissionsonanObject.html

アップと同時にアクセス許可付与mは実現不可ではないかもしれませんが、Lambdaなどと組合せての作り込みが必要になるかな、と思います。

ちなみに、AWSマネジメントコンソール上ではファイル名でのソートにしか対応していないので、CloudBerry Explorer for Amazon S3でも同様なのかと推測します。

もろもろあまりスマートな提案では無いですが、権限的に可能であれば、以下の対応で少しは作業が楽になるかな…というアイディアをひねり出しました。一助となれば幸いです。

  • 一時的にS3バケット内にフォルダ作成する
  • 新規画像ファイルを一時フォルダにアップロード
  • 一時フォルダ内で1つずつアクセス許可付与
  • ファイルまとめて切り取り、通常のフォルダに貼り付け

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/03/22 17:57

    batchiさん、ご回答頂き、ありがとうございました。
    御礼が大変遅くなり、誠に申し訳ありませんでした。

    S3バケットのアクセス許可と、オブジェクトに対するアクセス許可は
    別モノなのですね。

    また、ファイル名でしか並び替えが出来ない件、
    確かに、コンソール上はファイル名でしか並び替えが出来ないですね。
    ただ、CloudBerry Explorer for Amazon S3 では、日付が取れているので、
    その情報で並び替えてくれれば良さそうなんですけどね…。


    その他のご提案もありがとうございました。
    一時フォルダにアップし、そこでアクセス権を付与するという
    アイディアは素晴らしいですね。自分にはその発想がありませんでした。

    早速試してみたのですが、アクセス権をつけた後で、
    一時ファイルから本来アップすべき位置へファイルを移動させると、
    またアクセス権が落ちてなくなってしまいました…。
    くー、惜しい…!

    引き続き、何か良い案がございましたら、
    ご教授いただければと思います。
    ありがとうございました。

    キャンセル

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 90.53%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る

  • AWS(Amazon Web Services)

    1992questions

    Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

  • Amazon S3

    38questions

    Amazon S3 (Simple Storage Service)とはアマゾン・ウェブ・サービスが提供するオンラインストレージサービスです。