事務局メンバーによる、OpenID関連のあれやこれや
Stack Overflow にこんなスレッドが出ていました。
I'm having a heck of a time here trying to use google OAuth to authenticate users in my node express app. I can successfully do the OAuth, which returns a response like so:
{ access_token: 'token string', id_token: 'id.string', expires_in: 3599, token_type: "Bearer" }
This all makes sense, but I can't for the life of me figure out how to decode the JWT. I am a bit inexperienced in all this, so this is all a bit foreign to me.
node.js - How can I decode a google OAuth 2.0 JWT in a node app? - Stack Overflow
内容から察するに、この質問をされている方は、自分が実装しようとしているのは「Google の OAuth を使ったユーザー認証」である、と認識しているようです。
しかし、質問者がいまやろうとしていることは、id_token の値である JWT をどうやってデコードするか? というところであり、これはすでに OAuth 2.0 クライアントの範囲を超えた、OpenID Connect のリライング・パーティを実装しようとしていることに他なりません。
こういう感じで、API 利用者がとくに意識することなく、いつのまにか OpenID Connect を実装するというのも、普及にいたるパスのひとつとしてはけっこうありそうです。
P.S. ちなみにこの質問に、Nat さんが丁寧な回答を寄せています。(さりげなく jsjws をすすめてますね ;)
※追記 (2013/11/29)
崎村さんからタレコミが:
ちなみに、スレ主が、OpenID Connect をタイトルに追加しました> いつのまにか OpenID Connect RP を実装しつつある例 | 事務局ブログ | OpenID ファウンデーション・ジャパン http://t.co/HyncmKfKwM
-- 崎村夏彦 (=nat) (@_nat) November 28, 2013
おー、This has helped tremendously in my understanding of what I was even trying to do.
とのことですね!