Laravel 4.1.26 の対応方法
昨日、Laravel 4.1.26 がリリースされました。
4.1.26 は自動ログインに使用するクッキーのセキュリティ強化のためのアップデートなので、Laravel 標準のユーザー認証を使ってる人はすぐにアップデートすべし。
ただし、Sentry 使ってる人は範囲の対象外です。Sentry は Laravel の UserInterface
に依存してないので。
変更内容はこんな感じ
Laravelの"Remember me"の件、ソースを確認したところ
- tokenの作成方法が変わった ($remember が true の場合毎回作り直す)
- tokenをDBに保存(remember_tokenカラム)
という感じみたい。
— MATSUO Masaru (@localdisk) 2014, 4月 16
なので、自分たちで作成したプログラムにも変更が必要です。
UserInterface
UserInterface
に3つのメソッドが追加されました。なので実装する必要があります。実装しなければならないのは getRememberToken
, setRememberToken
, getRememberTokenName
メソッドです。
gist を作ったので参考にしてください。ぶっちゃけコピペでいいです。
remember_token カラム追加
認証対象のテーブルに remember_token
カラムを追加すればOK。
簡単ですね。
最後に
これ書いてる途中に気づいたんですけど、4.1.27 のアップデートがきてます。どうやら Validator
の bugfix のようです。