jwt translation #technight

Post on 24-May-2015

4.325 Views

Category:

Technology

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

JOSE + JWT 翻訳

OIDFJ 翻訳WG

@nov

Copyright 2013 OpenID Foundation Japan - All Rights Reserved.

http://openid-foundation-japan.github.ioOpenID, OAuth関連仕様翻訳

OIDFJ 翻訳WG

Copyright 2013 OpenID Foundation Japan - All Rights Reserved.

JSON Web Token (JWT)

JSON Web Signature (JWS)

JOSE UseCases

Copyright 2013 OpenID Foundation Japan - All Rights Reserved.

JWT in Production

OpenID Connect ID Token

YConnect, Google+ Sign-in

OAuth 2.0 JWT Bearer Token Profile

Salesforce, Windows Azure ActiveDirectory

Other APIs

Google Checkout, Twillio API, Mozilla Persona

GREEとかDeNAでも内部的にいろいろ使ってる

Copyright 2013 OpenID Foundation Japan - All Rights Reserved.

質問

Copyright 2013 OpenID Foundation Japan - All Rights Reserved.

JSON Web Token って聞いたことある人?

Copyright 2013 OpenID Foundation Japan - All Rights Reserved.

OpenID Connect のIdP / RP 実装したことある人?

Copyright 2013 OpenID Foundation Japan - All Rights Reserved.

OpenID Connect のIdP / RP 実装してみたい人?

Copyright 2013 OpenID Foundation Japan - All Rights Reserved.

ID & IT 2013 #ステマ

Copyright 2013 OpenID Foundation Japan - All Rights Reserved.

SAML の IdP/SP

実装したことある人?

Copyright 2013 OpenID Foundation Japan - All Rights Reserved.

CSV 万能?

Copyright 2013 OpenID Foundation Japan - All Rights Reserved.

SAML, The Enterprise

Copyright 2013 OpenID Foundation Japan - All Rights Reserved.

XML Signature / Encryption

Copyright 2013 OpenID Foundation Japan - All Rights Reserved.

しかし、XML亡き今...

Copyright 2013 OpenID Foundation Japan - All Rights Reserved.

XML Sig/Enc for JSON

Copyright 2013 OpenID Foundation Japan - All Rights Reserved.

JSON Web Token (JWT)

JSON Web Signature (JWS)

JSON Web Encryption (JWE)

Copyright 2013 OpenID Foundation Japan - All Rights Reserved.

で、なにに使うの?

Copyright 2013 OpenID Foundation Japan - All Rights Reserved.

JOSE UseCases

Copyright 2013 OpenID Foundation Japan - All Rights Reserved.

多くのインターネット上のアプリケーションは, ネットワークレイヤーやトランスポートレイヤーでのセキュリティメカニズムに加えて, オブジェクトベースのセキュリティメカニズムを必要とする. かつてはCryptographic

Message Syntax (CMS) がASN.1に基づいたバイナリレベルでのセキュアオブジェクトフォーマットを提供していた. しかしながら時代の変化とともにASN.1のようなバイナリオブジェクトエンコーディングは時代遅れとなり, JSONなどのテキストベースエンコーディングが主流となった. 本ドキュメントでは, 現在実用化されている様々なアプリケーションレイヤーセキュリティメカニズムをもとに, JSONベースのセキュアオブジェクトフォーマットの各種ユースケースと要件をまとめる.

http://openid-foundation-japan.github.io/draft-ietf-jose-use-cases-03.ja.html

Copyright 2013 OpenID Foundation Japan - All Rights Reserved.

JOSE UseCases

JOSE の実際のユースケースのリストアップ

OpenID Connect, OAuth, XMPP など

JOSE が何に使えるのかをざっくり知れる

Copyright 2013 OpenID Foundation Japan - All Rights Reserved.

JOSE UseCases

JOSE 仕様に求められる要件をまとめたドキュメント

ユースケースごとに異なる要件を比較検討

JOSE ML で議論されてる内容のバックグラウンドを理解するにも有用

Copyright 2013 OpenID Foundation Japan - All Rights Reserved.

どんなフォーマットか見てみよう

Copyright 2013 OpenID Foundation Japan - All Rights Reserved.

JSON Web Token (JWT)

Copyright 2013 OpenID Foundation Japan - All Rights Reserved.

JSON Web Token (JWT) は2者間でやりとりされるコンパクトで URL-safe

なクレームの表現方法である. JWT に含まれるクレームは JavaScript Object

Notation (JSON) オブジェクトとしてエンコードされ, JSON Web Signature

(JWS) のペイロードや JSON Web Encryption (JWE) の平文として利用される. JWS や JWE とともに用いることで, クレームに対してデジタル署名や

MAC を付与と暗号化の両方を行うことが可能となる.http://openid-foundation-japan.github.io/draft-ietf-oauth-json-web-token-11.ja.html

Copyright 2013 OpenID Foundation Japan - All Rights Reserved.

JSON Web Token (JWT)

JSON で任意の主体に対する Claim の集合を表現

Claim = 属性

いくつかの予約済み Claim 名を定義

subject, audience などなど (SAML由来?)

Copyright 2013 OpenID Foundation Japan - All Rights Reserved.

JSON Web Token (JWT)

JSON を URL-safe な形でコンパクトにエンコード

Base64 URL Encode して “.” でつなぐ

コンパクトにするためキー名は短縮型

謎の3文字縛り (“subject” => “sub” etc.)

Copyright 2013 OpenID Foundation Japan - All Rights Reserved.

で、これをセキュアに使うには?

Copyright 2013 OpenID Foundation Japan - All Rights Reserved.

JSON Web Signature (JWS)

Copyright 2013 OpenID Foundation Japan - All Rights Reserved.

JSON Web Signature (JWS)は, JavaScript Object Notation (JSON)をベースとしたデータ構造を用いて, デジタル署名やMessage Authentication Codes

(MACs)により保護されたコンテンツを表現するための手段である. 本仕様で使用する暗号アルゴリズムと識別子はJSON Web Algorithms (JWA) で述べられている. 関連する暗号化の機能は, JSON Web Encryption (JWE) で述べられている.

http://openid-foundation-japan.github.io/draft-ietf-jose-json-web-signature-14.ja.html

Copyright 2013 OpenID Foundation Japan - All Rights Reserved.

JSON Web Signature

“署名付きの JWT = JWS”

でだいたいあってる

Copyright 2013 OpenID Foundation Japan - All Rights Reserved.

JSON Web Signature

が、Payload を JSON に限定しないでなるべく General にしようとしている

Copyright 2013 OpenID Foundation Japan - All Rights Reserved.

JSON Web Signature

alg=RSA-SHA256 / HMAC-SHA256x

JWS Compact Serialization

の組み合わせだけ使えればとりあえずOK

Copyright 2013 OpenID Foundation Japan - All Rights Reserved.

その他の JOSE / JWT 関連仕様

Copyright 2013 OpenID Foundation Japan - All Rights Reserved.

JOSE / JWT Family

JSON Web Encryption

OAuth 2.0 JWT Bearer Token

JSON Web Algorithm

JSON Web Key

近日翻訳予定

Copyright 2013 OpenID Foundation Japan - All Rights Reserved.

http://openid-foundation-japan.github.io

top related