セキュアなアップロード

@martin さん、こんにちは。

ご返信ありがとうございます。Ruby を使うのは初めてですが、この言語の明確さに大変感動しています。数時間デバッグを行った結果、どこを見ればよいか見当がついたと思います。おそらく、私があなたがおっしゃったことと逆のことをしてしまったようですね :slight_smile: Badge モデルにいくつかの行を追加したところ、画像が読み込めるようになりました。また、そこに for_site_setting というフラグがあることも確認できました。これは S3 上のオブジェクトに対する ACL の調整にこの情報を利用しているのだと思いますが、そのカラムを false に設定しました。

app/models/badge.rb

  def image_url
    if image_upload_id.present?
      return upload_cdn_path(image_upload.url) if !image_upload.url.include?(SiteSetting.Upload.absolute_base_url)
      uri = URI.parse(image_upload.url)
      Rails.application.routes.url_for(
        controller: "uploads",
        action: "show_secure",
        path: uri.path[1..-1],
        only_path: true
      )
    end
  end

今後のアップグレードで何が変わるかを確認し、さらに詳しく学んでみたいと思います。
本番環境で使用するのに最適なバージョンは何でしょうか?

ありがとうございます!

将来的にコードベースにより多く貢献できることを願っています。

「いいね!」 6