Slide 1

Slide 1 text

認証認可のメカニズム (概論) onodera

Slide 2

Slide 2 text

認証 認可

Slide 3

Slide 3 text

認証 認可 Authorization (AuthZ) Authentication (AuthN)

Slide 4

Slide 4 text

認証 認可 Authorization (AuthZ) Authentication (AuthN) 相手が誰(何)であるかを確認すること 特定の属性に対して、リソースアクセスの権限 を与えること

Slide 5

Slide 5 text

認証 認可 Authorization (AuthZ) Authentication (AuthN) 相手が誰(何)であるかを確認すること 特定の属性に対して、リソースアクセスの権限 を与えること 401 Unauthorized - 認証の失敗 -The request requires user authentication.- (RFC 2616) 403 Forbidden - - 認可の不足 -The server understood the request.- (RFC 2616)

Slide 6

Slide 6 text

認証 認可 Authorization (AuthZ) Authentication (AuthN) 相手が誰(何)であるかを確認すること 特定の属性に対して、リソースアクセスの権限 を与えること <関心事> 誰であるか <関心事> どういう人であるか 401 Unauthorized - 認証の失敗 -The request requires user authentication.- (RFC 2616) 403 Forbidden - - 認可の不足 -The server understood the request.- (RFC 2616)

Slide 7

Slide 7 text

認証 認可 ・身分証明証による「本人確認」 ・コンビニでお酒を買うとき身分証を提示 の例 の例 ・生体認証 ・iPhoneのFaceID ・学生割引を受けるために、学生証を提示 ・駅で切符を買って電車に乗る

Slide 8

Slide 8 text

認証 認可 ・身分証明証による「本人確認」 ・コンビニでお酒を買うとき身分証を提示 の例 の例 ・生体認証 ・iPhoneのFaceID ・学生割引を受けるために、学生証を提示 ・駅で切符を買って電車に乗る ・認証に基づかない認可

Slide 9

Slide 9 text

認証 認可 ・身分証明証による「本人確認」 ・コンビニでお酒を買うとき身分証を提示 の例 の例 ・生体認証 ・iPhoneのFaceID ・学生割引を受けるために、学生証を提示 ・駅で切符を買って電車に乗る ・認証に基づかない認可

Slide 10

Slide 10 text

認証 認可 ・身分証明証による「本人確認」 ・コンビニでお酒を買うとき身分証を提示 の例 の例 ・生体認証 ・iPhoneのFaceID ・学生割引を受けるために、学生証を提示 ・駅で切符を買って電車に乗る 運転免許 ・認証に基づく認可 ・認証に基づかない認可

Slide 11

Slide 11 text

認可のためのフレームワーク(概論)

Slide 12

Slide 12 text

認可のためのフレームワーク(概論)

Slide 13

Slide 13 text

認可のためのフレームワーク(概論)

Slide 14

Slide 14 text

認可のためのフレームワーク(概論)

Slide 15

Slide 15 text

認可のためのフレームワーク (OAuth) FYI: RFC 6749 - The OAuth 2.0 Authorization Framework 日本語訳 https://tex2e.github.io/rfc-translater/html/rfc6749.html

Slide 16

Slide 16 text

トークンのタイプ (OAuth) アクセストークン

Slide 17

Slide 17 text

トークンのタイプ (OAuth) アクセストークン と リフレッシュトークン

Slide 18

Slide 18 text

トークンの形式 - JSON Web Token JWT (JSON Web Token)のメリット FYI: Introduction to JSON Web Tokens https://jwt.io/introduction/ ・Tokenに含まれる電子署名により改ざんを防止できる ・URL Safe(URLに含むことができる文字だけで構成されているから、HTTPリクエストでの 取り扱いが楽) ・実装が容易で比較的セキュア JWT の構造 ・base64urlencode(header) + "." + base64urlencode(payload) + "." + base64urlencode(digitalsignature(header + payload))

Slide 19

Slide 19 text

ご清聴ありがとうございました