OAuth 2.0をはじめよう

[cover photo]
TOPICS
発行年月日
ISBN
978-4-87311-558-0
原書
Getting Started with OAuth 2.0
FORMAT
EPUB
Ebook
1,430円
Ebookを購入する

本書は、Webアプリケーションのためのユーザー認証プロトコルであるOAuth 2.0の概要を紹介する書籍です。基礎となるOAuth誕生の背景や用語の解説から、 サーバサイドWebアプリケーションフロー、クライアントサイドWebアプリケーションフロー、リソース所有者パスワードクレデンシャルフロー、クライアントクレデンシャルフローなどの各認証フロー、またモバイルアプリケーションからユーザデータへのアクセスや、次世代の認可・認証技術OpenID Connect認証に関する内容を概説しています(OpenID ConnectについてはOpenID Connect Basic Client Profile 1.0 - draft 15に基づいています)。なお本書はEbookのみの販売となります。

目次

はじめに
    本書の表記規約について
    サンプルコードの利用について
    お問合せ先
    謝辞

1章 はじめに
    OAuthの誕生
    なぜOAuthが重要なのか
    なぜパスワードによるAPI認可がダメなのか
    重要な用語
       認証(Authentication)
       連合型認証(Federated Authentication)
       認可(Authorization)
       委譲認可(Delegated Authorization)
       ロール(Roles)
    署名をめぐる大論争
       ベアラートークンへの懸念を緩和する
       OAuth 2.0リクエストにデジタル署名を付ける
          鍵の入手
          APIリクエストの生成
    開発者とアプリケーションの登録
       登録が必要な理由
    クライアントプロファイル、アクセストークン、認可フロー
       クライアントプロファイル
       アクセストークン
       認可フロー

2章 サーバサイドWebアプリケーションフロー
    認可コードフローを使うべきケース
    セキュリティ特性
    ユーザエクスペリエンス
    各ステップの詳細
       ステップ1:ユーザにこれから実行する内容を知らせ、認可を求める
          エラー処理
       ステップ2:認可コードをアクセストークンに交換する
          アクセストークンとリフレッシュトークンの両方が必要な理由
       ステップ3:APIを呼び出す
          エラー処理
       ステップ4a:アクセストークンを更新(リフレッシュ)する
       ステップ4b:新しいアクセストークンを取得する
    アクセス権限を取り消す方法

3章 クライアントサイドWebアプリケーションフロー
    インプリシットグラントフローを使うべきケース
    インプリシットグラントフローの制限
    セキュリティ特性
    ユーザエクスペリエンス
    各ステップの詳細
       ステップ1:ユーザにこれから実行する内容を知らせ、認可を求める
          エラー処理
       ステップ2:URLからアクセストークンを解析する
       ステップ3:APIを呼び出す
       ステップ4:アクセストークンを更新(リフレッシュ)する
    アクセス権限を取り消す方法

4章 リソース所有者パスワードクレデンシャルフロー
    リソース所有者パスワードクレデンシャルフローを使うべきケース
    セキュリティ特性
    ユーザエクスペリエンス
    各ステップの詳細
       ステップ1:ユーザにクレデンシャルを要求する
       ステップ2:クレデンシャルをアクセストークンに交換する
       ステップ3:APIを呼び出す
       ステップ4:アクセストークンを更新(リフレッシュ)する

5章 クライアントクレデンシャルフロー
    クライアントクレデンシャルフローを使うべきケース
    クライアントクレデンシャルフローをサポートするAPI
    クライアント認証の方法
    セキュリティ特性
    各ステップの詳細
       ステップ1:アプリケーションのクレデンシャルをアクセストークンに交換する
       ステップ2:APIを呼び出す
    アクセストークンの有効期限

6章 モバイルアプリケーションからユーザデータへのアクセス
    ネイティブモバイルアプリケーションにOAuthを使う理由
    ネイティブモバイルアプリケーションで使用するフロー
       バックエンドWebサーバが存在するかどうか
    Webブラウザは格好悪い?
       組み込みWebView
       システムWebブラウザ
    各プロバイダによるモバイルアプリケーション向け認可機能拡張
       Google
       Facebook

7章 OpenID Connect認証
    IDトークン
    セキュリティ特性
    ユーザ認可の取得
    Check IDエンドポイント
    UserInfoエンドポイント
    パフォーマンスの改善
    OpenID Connect実践編
       Google
       Facebook
    OpenID Connectの今後

8章 ツールとライブラリ
    GoogleによるOAuth 2.0 Playground
    GoogleのTokenInfoエンドポイント
    Apigeeコンソール
    FacebookのAccess Token ToolとAccess Token Debugger
    ライブラリ
    より詳しく知りたいときは

付録A 参考文献
    仕様
    ベンダによるドキュメント
    メーリングリスト
    その他