TojiTech No Programming, No Life.

Deviseとomniauth

随分と前の話になりますが…
CSRF脆弱性 CVE-2015-9284の対応に伴う変更が入りomniauth v2から、 サービスプロバイダーのサービス認可画面へリダイレクトするエンドポイントPOSTのみに変更となりました。

対応策

# 以下を導入する
gem "omniauth-rails_csrf_protection"

# もしくは、CVE脆弱性のあるバージョンに落とす
gem 'omniauth', '~> 1.9', '>= 1.9.1'

個人的には、バージョンを落とすよりも正しい手順を踏んだほうが脆弱性対応できて良いと思います。

今回のサンプルとして、GitHubリポジトリにサンプルコードをアップロードしています。
こちらは、twitterや他の認証にも使えると思いますので、よければ参考にしてみてください!

Profile

Yuki Tojima

RubyやPhp、JavaScriptまわりのことを徒然と記録に残す技術ブログです。

至らぬところもあると思いますが、見守っていただけると幸いです。

記事のリクエストや、間違いなどありましたら X (旧 Twitter) のDMなどでお気軽にご連絡ください。

ytojima @TojiTech
プロフィール画像