16
株式会社カカクコム 藤原史和 okyuu.com x Rails x OpenID

okyuu.com x Rails x OpenID

Embed Size (px)

Citation preview

Page 1: okyuu.com x Rails x OpenID

株式会社カカクコム 藤原史和

okyuu.com x Rails x OpenID

Page 2: okyuu.com x Rails x OpenID

まずは自己紹介

ふじわら ふみかず食べログ担当でもないグルメでもないカカクコム社のエンジニアです現在はhttp://okyuu.com というサイトを担当をしております

Page 3: okyuu.com x Rails x OpenID

本日の内容

1.ソーシャルITメディアokyuu.comの御紹介

2.okyuu.comでのOpenID実装に関して

3.OpenIDを運営する点で工夫した点

Page 4: okyuu.com x Rails x OpenID

・ITの話題を中心にノウハウやニュースで議論し楽しむ、CGM型のサイト・既存の IT系Webメディアと異なり、ユーザ参加型でサイトを構成していくのが特徴です。・議論の対象として直接書き込みや 技術blogは盛り上がります

okyuu.com ソーシャルITメディア(1)

Page 5: okyuu.com x Rails x OpenID

okyuu.com ソーシャルITメディア(2)

1. アプリケーションはほぼ 100%Rails2.0(一部c)2. Apache2のmod_proxy_balancerで

mongrelをバランシングしてます3. DBはMySQL5.0

Page 6: okyuu.com x Rails x OpenID

okyuu.com ソーシャルITメディア(3)

1. Yahoo!JAPAN、mixiやはてななど 11のID で利用可能です。

2. 上記は OpenIDを使って認証をしてます3. 価格 .comIDでも利用可能です

Page 7: okyuu.com x Rails x OpenID

okyuu.comでのOpenID実装(1)

認証プロバイダ

対応サイト

ユーザ

1

2 3

45

1. OpenIDアカウントを入力

2. 認証プロバイダを探す3. 改ざん防止の為共通鍵

を交換4. リダイレクトで認証プロ

バイダに遷移5. 認証プロバイダで認証し

た後対応サイトへリダイレクトで戻ってくる

Page 8: okyuu.com x Rails x OpenID

2.認証プロバイダの発見3.認証プロバイダとの共通鍵のやり取り5.返却データの妥当性の検証

okyuu.comでのOpenID実装(2)

Page 9: okyuu.com x Rails x OpenID

ruby-openidhttp://openidenabled.com/ruby-openid/が全てやってくれます

okyuu.comも採用しました

okyuu.comでのOpenID実装(3)

Page 10: okyuu.com x Rails x OpenID

1.初めてのログインの場合サインアップへ誘導したり

2.ユーザに権限を与えたり3.価格.com IDログインとの共存4.ホワイトリストに基づく制御

1.リダイレクト先のURLで制限5.OpenIDAuthentication等のプラグインを使わず独自実装

okyuu.comでのOpenID実装(4)

Page 11: okyuu.com x Rails x OpenID

ゲスト状態で権限のあるページを参照しログイン画面へ

セッションにreturn_toを乗せて対応

OpenID対応サイトで苦戦した点認証プロバイダが不調

サイトの可用性の低下

できる限りOpenIDを感じさせないつくり

Page 12: okyuu.com x Rails x OpenID

okyuu.comでのちょっとした工夫

OpenIDと聞くと..普通はhttp://xxxと毎回入力する必要がある

間違えやすい

Page 13: okyuu.com x Rails x OpenID

1.OpenID1.1でも可能な限りopenidを意識させない (http://xxxxxxx)2.セキュリティを確保する為 ホワイトリスト方式を採用しており、誤ってホワイトリスト以外のプロバイダを選択するのを防ぐ

okyuu.comでのちょっとした工夫

Page 14: okyuu.com x Rails x OpenID

およそ45%のユーザがOpenIDを利用

価格.comID vs OpenIDユーザ比率

Page 15: okyuu.com x Rails x OpenID

今後投稿APIなども予定

お知らせ

記事リストAPI記事検索API記事カテゴリ別リストAPI記事ユーザ別リストAPI記事タグ別リストAPI記事詳細取得API

来週あたり参照系のAPIをリリースします。

Page 16: okyuu.com x Rails x OpenID

ご清聴ありがとうございました