OpenID 技術セミナー GINZA TECH LOUNGE feat. OpenID
仕事帰りにGINZA TECH LOUNGE feat. OpenIDに行ってきました。ミクシィ、ヤフー、リクルートの3社による技術セミナーだけあって、参加者も定員一杯の120名と大盛況な感じでした。
構成
・ヤフー(30分) Yahoo! JAPAN OpenID プロバイダ技術解説
・ミクシィ(30分) mixi OpenID プロバイダ技術解説
・リクルート(30分) ATND OpenID RP 技術解説
・マッシュアップアワード運営事務局(10分)
・ライトニングトーク(5分×4名)
* ListPod ゆーすけべーさん
* おぷん(koress project)Cigar-Cookさん「"おぷん"で知る 草の根OpenID動向」
* FlipClip 堀内さん
* okyuu.com(カカクコム)藤原さん
Yahooセッション
- Yahoo! JapanのアクティブユーザーIDの数は2200万
- OpenID2.0に対応
OpenIDの発行について
OpenIDの認証
- checkid_setupモードの認証要求に対応
- checkid_immediateモードの認証要求には非対応(セキュリティポリシー)
- OpenID再利用問題を解決するため、認証応答に含まれるclaimed_idパラメタにはフラグメントを付加 (ユーザーIDのリサイクルの際の問題解消)
- 間接通信では否定アサーションを返さない(OpenIDの仕様に準拠)⇒ エラー画面を表示/YahooのTOPにリダイレクト
セキュリティ対策
- return_toのチェックについて「あんしんネット」で利用しているブラックリストを利用
- ログインシール、ログイン履歴の利用促進
フィッシングの脅威
悪意のあるサイトがRPのOpenID入力フォーム、OPの認証画面を偽装する可能性あるため、ユーザーがOPの認証画面の正当性を判断できる機能が必要 ⇒ ログインシール(自分だけの画像、テキストをログイン画面に表示する)を利用し、フィッシングサイトとの判別に利用
その他
ログインされているRPはiknow.co.jpが圧倒的に多い
mixiセッション
- ユーザーIDの数は1500万ID
- OpenID2.0と1.1に対応 ⇒ 現状では2.0対応のRPが少ない (Yahoo!は2.0のみ、Hatenaは1.1のみ対応)
OpenID Identifier
RECRUITセッション
ATNDの実装について
構成
RoRを利用
- ruby-openid (ruby library)
- open_id_authentication (RoR plug-in)
- restful_authentication (RoR plug-in)
UserTable
nickname | ユーザ名 | ユニーク |
identity_url | ユーザのOpenID | ユニーク |
ユーザ登録について
1. まずはOpenIDで認証
2. DBにユーザ名が存在しないかチェック
3. identity_url, nicknameを保存して登録完了