OAuth 2.0
定義
OAuth 2.0はサードパーティアプリケーションがユーザーのパスワードを共有することなく、リソースサーバー上のユーザーリソースへの限定的なアクセスを認可するフレームワーク(RFC 6749)です。「Googleアカウントでログイン」「GitHubとアプリを連携する」といった機能の裏側で動いています。フローにはWebアプリ向けのAuthorization Code(PKCEと組み合わせが推奨)・モバイル・SPA向けのPKCE・サーバー間通信向けのClient Credentials等があります。OAuth 2.0は認可フレームワークであり認証を直接担わないため、「誰がログインしているか」を扱うにはOpenID Connect(OIDC)を組み合わせるのが正しい設計です。オープンリダイレクト・stateパラメータ省略(CSRF)・PKCEなしのimplicit flow(トークン漏洩)が攻撃ベクタになるため、OAuth 2.0 Security Best Current Practicesに従った実装が重要です。
関連用語
OAuth 2.0が登場する記事・比較
よくある質問
OAuth 2.0とは?
サードパーティアプリがユーザーのリソースに限定的にアクセスするための認可フレームワーク。「Googleアカウントでログイン」などの実装に使われる。認可を担い、認証はOpenID Connectが担当する。
同じカテゴリの用語(プロトコル・技術)
APIやリソースへアクセスするために提示する短命なトークン。漏えい時は有効期限、権限範囲、失効可否を確認する。…
現在最も広く使われる対称暗号アルゴリズム。128・192・256ビットの鍵長をサポート。ECB・CBC・GCMなど複数の…
API利用者やアプリケーションを識別・認可するために発行される秘密文字列。漏えい時は不正利用される可能性がある。…
APIのエンドポイント、入力、出力、型、認証、エラー形式などを機械可読に表した仕様情報。…
API利用者やアプリケーションを識別し、操作権限を与えるための秘密値。漏えい時は失効と再発行が必要になる。…
IdPやSaaSにアプリケーションを登録し、リダイレクトURI、権限、資格情報、同意範囲を管理する設定単位。…