2013/12/17 ユーザーとシステムを繋ぐ「認証」を知ろう! ~OpenID Connect~ #devlove
- natsu_nanana
- 3483
- 0
- 0
- 13
サービスのひとつとしての「アイデンティティAPI」 <=> アイデンティティが中心にあってこそのサービス #devlove #id厨
2013-12-17 20:09:27#devlove まとめ。ふたつの考え方がある。サービスのひとつとしての「アイデンティティAPI」 / アイデンティティが中心にあってこそのサービス。 SAML,ID-WSF,OpenID→OAuth→OpenID Connect,UMA,PDS
2013-12-17 20:09:40#devlove 「ユーザー登録めんどくさい」という理由でOAuth認証が多かった。最近のトレンドは「複数サイトで共通のパスワード」
2013-12-17 20:19:33#devlove 「ID専任のエンジニアが100人いない会社にID/passを預けるなんて…」→でも現実にはそんな会社は少ない→twiitterやfacebookでのログインが多くなった。
2013-12-17 20:22:37さきほどのスライド置きました → なぜOpenID Connectが必要となったのか、その歴史的背景 by @tkudos #devlove http://t.co/88zXTriaIb
2013-12-17 20:23:25#devlove 「OAuth認証」って言うな!… 定義:外部サービスが提供するOAuth1.0/2.0 ベースの "Proprietary"な Profile APIを使ってユーザー認証を行なうこと。
2013-12-17 20:25:05#devlove OAuth認証の落とし穴。デバイス(クライアント)側でアプリが取得したaccess_tokenを、アプリのバックエンドサーバに渡して、access_tokenで情報を取得する。このバックエンドサーバがweak point。
2013-12-17 20:33:12#devlove @nov このIBMの絵をみるたび毎回にやにやしてしまう http://t.co/txqNU5rktc
2013-12-17 20:35:04#devlove Facebookだけの場合。 GET /me 以外に GET /app を用意して、確認する必要がある。これによって GET /oauth/authorize POST /oauth/token GET /app GET /me をログイン時にやる必要がある
2013-12-17 20:35:41#devlove 何故そのような脆弱なサービスが絶えない?→ そもそもfbのドキュメントに4者モデルが想定されておらず、3者間モデルのみ記載されており、分からないまま実装してしまう。
2013-12-17 20:37:18#devlove ざっくり言うと違うのは2つだけ。 Access Tokenの他にID Tokenが返る。proprietaryなAPIの部分でUser Info APIと規定。(他にも色々あるけど特に重要な2つ。
2013-12-17 20:39:30#devlove ID Token、認証イベントのアサーション(JSON Web Token)。iss/sub/aud/iat/exp。
2013-12-17 20:39:58#devlove 誰が(IdP)誰を(subject=end-user)誰のために(audience=client)認証したのか、の情報が入っている
2013-12-17 20:41:17#devlove @nov 署名を検証して、クレームを検証して、sub を取り出す http://t.co/ykfvprNugF
2013-12-17 20:43:14#devlove UserInfo API。PAuth2.0対応のAPI Endpoint。レスポンスフォーマット標準化。登録時だけ利用。
2013-12-17 20:43:34