DesignAssembler

備忘録に近い

omniauthについて

omniauthはoauth認証rubyで使えるようにするgemです。

github.com

OAuth

あらかじめ信頼関係を構築したサービス間で ユーザの同意のもとに セキュアにユーザの権限を受け渡しする

つまり、自作のwebアプリケーションのアカウントをTwitterFacebookなどのアカウントと紐付けることができます。

omniauth

omniauthのリポジトリのGetting Startのコードを見ていきます。このサンプルはsinatraです。

Rails.application.config.middleware.use OmniAuth::Builder do
  provider :developer unless Rails.env.production?
  provider :twitter, ENV['TWITTER_KEY'], ENV['TWITTER_SECRET']
end

アプリケーションにミドルウェアとしてOminiAuthを組み込んでいます。

OmniAuth::Builderを見ます。47行目〜56行目でproviderが書かれています。

github.com

指定したクラス(ここではTwitter)がミドルウェアとして組み込まれています。

参考

qiita.com

gihyo.jp