More Related Content
Similar to YAPC::Tokyo 2013 ritou OpenID Connect
Similar to YAPC::Tokyo 2013 ritou OpenID Connect (20)
YAPC::Tokyo 2013 ritou OpenID Connect
- 2. 自己紹介
● Ryo Ito (@ritou)
○ 株式会社ミクシィ 研究開発グループ
○ OpenID ファウンデーション・ジャパン エヴァンジェリスト
○ http://d.hatena.ne.jp/ritou/
○ @IT デジタル・アイデンティティ技術最新動向
「OpenID Connect」を理解する
http://www.atmarkit.co.
jp/ait/articles/1209/27/news138.html
- 8. OpenID Connectとは
● OAuth 2.0をベースに, アイデンティティ層を拡
張した仕様
○ 認証結果の受け渡し + APIアクセス認可を同時に行う
● OpenIDファウンデーションで仕様策定中
○ 現在Implementer's Draft
○ 日本人も関わっている
- 15. トークン文字列はJSON Web Token形式
eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9
↑メタデータをBase64 URL エンコードしたもの
. ←ピリオドで連結
eyJpc3MiOiJodHRwczovL3NlcnZlci5leGFtcGxlLmNvbSIsIn
N1YiI6IjI0NDAwMzIwIiwiYXVkIjoiczZCaGRSa3F0MyIsIm5v
bmNlIjoibi0wUzZfV3pBMk1qIiwiZXhwIjoxMzExMjgxOTcwL
CJpYXQiOjEzMTEyODA5NzAsImF1dGhfdGltZSI6MTMxM
TI4MDk2OSwidHlwIjoiSldUIn0
↑送りたいデータをBase64 URL エンコードしたもの
.
LbJA_DmSR5R3Sa79xqtG9sU8uy1Sm8KG1V8VBJOby4E
↑署名をBase64 URLエンコードしたもの
- 19. Self-Issued OP : デバイス内OP
モバイル/WebアプリはカスタムURIスキームにて
リクエストを送信
● openid://
端末内でOPとして動作するアプリ or Native機能
がOPとなる
● デバイス内でユニークな鍵ペアを生成
● 公開鍵をPayloadに含む
● 秘密鍵で署名してID Tokenを作成
- 22. Self-Issued OP : デバイス内OP
利用するモバイル/Webアプリのメリット
● 公開鍵のハッシュ値から、どの端末を利用して
いるかを識別可能
● タイムスタンプ/署名により改ざんが難しい
● ユーザーの同意を得るしくみがある
- 23. Self-Issued OP : デバイス内OP
いくつか課題が残っている
● 信頼性(OS機能じゃないとNG?)
● 名寄せ防止のための複数の鍵ペア生成
ネイティブアプリを作っていてより厳密なデバイス
識別をやりたいところは使えると思う
- 36. まとめ
● OpenID Connect
○ OAuth 2.0にIdentity層を追加する拡張
○ ミニマムな実装はID Tokenと属性提供API
○ Self-Issued OPでデバイス特定
● OIDC::Lite
○ OAuth::Lite2を拡張したOP/RP向けライブラリ
○ サンプルOP/RPもあります