Secure Steady
OAuth 2.0 認可フレームワーク - OAuth 2.0 の使い方・オプション・サンプル

OAuth 2.0 認可フレームワーク - OAuth 2.0

サードパーティにパスワードを渡さずにリソースへのアクセスを委譲する認可フレームワーク。

概念図

OAuth 2.0 diagram

実例

Bearer トークンでの API アクセス

bash
GET /api/resource
Authorization: Bearer eyJhbGciOi...

4 つのグラントタイプ

  • 認可コード(Authorization Code): サーバーサイドアプリ向け。最も安全
  • クライアントクレデンシャル(Client Credentials): サーバー間通信向け
  • デバイスコード(Device Code): スマートTV など入力が制限されたデバイス向け
  • PKCE 付き認可コード: SPA・モバイルアプリ向け。認可コードの拡張

よくある間違い

  • OAuth は「認証」ではなく「認可」: ユーザーが誰であるかを確認するには OpenID Connect (OIDC) が必要
  • Implicit フローは非推奨: アクセストークンが URL フラグメントに露出する。PKCE 付き認可コードを使うこと
  • トークンの有効期限管理: アクセストークンは短命に、リフレッシュトークンで更新する

関連トピック