DesignAssembler

備忘録に近い

secret_key_baseとは

secret_key_baseについてです。

railsがこんなエラーを吐くことがあります。

ERROR RuntimeError: Missing `secret_token` and `secret_key_base` for 'production' environment, set these values in `config/secrets.yml`

secret_key_baseの設定をしろと言っています。

ではsecret_key_baseとは何でしょうか。

secret_key_baseとは何か

いろんなサイトにとにかく秘密にすべき情報くらいにしか書かれていません。

では実際なんだろうと思い調べると、cookie生成の時に必要な値のようです。

ruby - What is the use of secret_key_base in rails 4 - Stack Overflow

A better way to manage the Rails secret token - Daniel Fone

secret_key_baseはcookie改ざん防止の鍵みたいです。

流出するとどうなるか

なりすまされる可能性があります。

www.techmatrix.co.jp

(古いけど)

d.hatena.ne.jp

ですのでsecret_key_baseは環境変数にする方がいいです。

参考

Why you probably shouldn't use cookies to store session data - wonko.com