OAuth 2.0 認可フレームワーク - OAuth 2.0
サードパーティにパスワードを渡さずにリソースへのアクセスを委譲する認可フレームワーク。
概念図
実例
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 付き認可コードを使うこと
- トークンの有効期限管理: アクセストークンは短命に、リフレッシュトークンで更新する
