質問: Ruby on Rails でのファイルアップロードに関するご質問です。 ■概要 carrierwaveでアップロードしたファイル群をどのようにしたらセキュアに扱えるか。 ■実施したいこと ・メッセージのやりとりをするアプリケーションを作成中 ・ユーザがやりとりにファイルをアップロードできるようにしている (現在、carrierwaveでpublicに入るようにしている) ・URLが予測できてしまうため、やりとりをしている2名以外のユーザもファイルをダウンロードできてしまう ・これをセキュアに扱う方法が知りたい ■検討したこと ・データベースにファイルをそのまま入れていくのは考えましたが、できればファイルをそのままアップしていきたい。(こちらも検討範囲ですので、こちらしかなければご遠慮なくそのようにお伝えください) 以上、よろしくお願い致します。
回答: URLがどのような形式かわからないのですが、例えばアップロードしたファイル名やIDがURLに埋め込まれるのであればそこをUUIDに変更するのはどうでしょうか。 How to: Create random and unique filenames for all versioned files