2015/02/19 デブサミ2015 【19-C-5】OpenID ConnectとAndroidアプリのログインサイクル #devsumiC
#devsumiC @kura_lab: バックエンドのシステムの組み合わせだったり、ネイティブのアプリの組み合わせだったりでいろいろパターンがあるけど、今回は3つ紹介
2015-02-19 15:21:01#devsumiC @kura_lab: Webアプリでのスタンダードなパターン、ネイティブアプリからブラウザーを立ち上げるパターン、ネイティブでトークンを保存しつつ、WebViewでもトークン使いたいパターン
2015-02-19 15:23:55#devsumiC @kura_lab: ハイブリッドのパターン。カスタムURIスキームを使って、ブラウザとネイティブアプリを行き来する。WebViewの中に、そのサイト内での認証結果を基にCookie発行して、サーバーにトークンを保存
2015-02-19 15:25:35#devsumiC @kura_lab: トークン3種類。アクセストークン、それの有効期限が切れたときに使うリフレッシュトークン、そしてIDトークン
2015-02-19 15:26:23#devsumiC @kura_lab: OpenID Connect、ふたつのトークンの物語 blog.openid.or.jp/post/128740611… (むかし翻訳したこれ、まだ残ってたのか)
2015-02-19 15:27:25アクセストークンとIDトークンがなぜ2つ存在しているのか?という話で出てきたのはこれかな?後で読む blog.openid.or.jp/post/128740611… #devsumiC
2015-02-19 15:27:31#devsumiC / “OpenIDファウンデーション・ジャパン — OpenID Connect, ふたつのトークンの物語” htn.to/9o2NoC
2015-02-19 15:27:51#devsumiC @kura_lab: クッキー、アクセストークン、リフレッシュトークン、IDトークンについて、それぞれ有効・無効がある。ログイン時にはすべて有効、ログアウト時にはCookieは無効だけど、他のトークンは無効にすべきだろうか? クッキーの有効期限切れの場合には?
2015-02-19 15:31:09ID Token = issuerがaudienceのためにend-userを認証したことを示すトークン #devsumi #devsumiC
2015-02-19 15:33:05#devsumiC @kura_lab: IDトークン。例えると、FacebookがSlideshareのためにkuraを認証したかを示すトークン。あるいはY!がGREEのためにkuraを認証したかを示すトークン
2015-02-19 15:33:29#devsumiC @kura_lab: WebViewに発行するCookieの有効期限は、アプリのポリシーで決めて良いと思う。IDトークンの有効期限は自サイトのCookieの有効期限と一致しなくていいと思う
2015-02-19 15:35:20#devsumiC @kura_lab: ログアウト時にはCookie無効 → アクセストークン、リフレッシュトークンを無効に。IDトークンは保持しなくてもよい、気にしなくてもよい
2015-02-19 15:36:30ログアウト時にaccess token & refresh token無効化しましょうね、と。まぁその辺はユースケースしだいですね、と。 #devsumi #devsumiC
2015-02-19 15:37:07