OAuth 2.0 / OpenID Connect RFC 学習ガイド
このディレクトリには、OAuth 2.0 と OpenID Connect に関連する RFC の包括的な学習ドキュメントが含まれています。
目次
基礎(OAuth 2.0 Core)
OAuth 2.0 の基本仕様を理解するためのドキュメントです。
| RFC | ドキュメント | 内容 |
|---|---|---|
| RFC 6749 | rfc6749-oauth2-core | OAuth 2.0 認可フレームワーク |
| RFC 6750 | rfc6750-bearer-token | Bearer トークンの使用方法 |
| RFC 6819 | rfc6819-threat-model | OAuth 2.0 脅威モデルとセキュリティ考慮事項 |
JWT / JOSE(署名・暗号化)
JSON Web Token と関連する署名・暗号化仕様です。
| RFC | ドキュメント | 内容 |
|---|---|---|
| RFC 7519 | rfc7519-jwt | JSON Web Token (JWT) |
| RFC 7515 | rfc7515-jws | JSON Web Signature (JWS) |
| RFC 7516 | rfc7516-jwe | JSON Web Encryption (JWE) |
| RFC 7517 | rfc7517-jwk | JSON Web Key (JWK) |
| RFC 7518 | rfc7518-jwa | JSON Web Algorithms (JWA) |
クライアント認証
クライアントが認可サーバーに対して自身を証明する方式です。
| RFC | ドキュメント | 内容 |
|---|---|---|
| RFC 7521 | rfc7521-assertion-framework | アサーションフレームワーク |
| RFC 7522 | rfc7522-saml-assertion | SAML 2.0 アサーションプロファイル |
| RFC 7523 | rfc7523-jwt-bearer | JWT を使ったクライアント認証とグラント |
| draft | attestation-based-client-auth | Attestation によるクライアントインスタンス認証(策定中) |
| draft | attestation-based-client-auth-practice | 同・実践編(モバイルアプリでの登録〜認証の実現) |
| RFC 6749 ほか | client-authentication-error-response | 認証に失敗したときの応答(400 / 401 と WWW-Authenticate) |
OAuth 2.0 拡張
OAuth 2.0 の機能を拡張する仕様です。
| RFC | ドキュメント | 内容 |
|---|---|---|
| RFC 7591 | rfc7591-dynamic-registration | 動的クライアント登録 |
| RFC 7592 | rfc7592-registration-management | 動的クライアント登録管理 |
| RFC 7636 | rfc7636-pkce | PKCE(Proof Key for Code Exchange) |
| RFC 7009 | rfc7009-revocation | トークン失効(Revocation) |
| RFC 7662 | rfc7662-introspection | トークンイントロスペクション |
| RFC 8693 | rfc8693-token-exchange | トークン交換 |
| RFC 8705 | rfc8705-mtls | OAuth 2.0 Mutual TLS |
| RFC 8707 | rfc8707-resource-indicators | リソースインジケーター |
| RFC 9126 | rfc9126-par | PAR(Pushed Authorization Requests) |
| RFC 9207 | rfc9207-iss-identification | 認可サーバー識別子 |
| RFC 9396 | rfc9396-rar | RAR(Rich Authorization Requests) |
| RFC 9449 | rfc9449-dpop | DPoP(Demonstrating Proof of Possession) |
OpenID Connect
OAuth 2.0 に Identity レイヤーを追加した ID 連携(Identity Federation)プロトコルです。
| 仕様 | ドキュメント | 内容 |
|---|---|---|
| OIDC Core | oidc-core | OpenID Connect Core 1.0 |
| OIDC Discovery | oidc-discovery | OpenID Connect Discovery 1.0 |
| OIDC DCR | oidc-dynamic-registration | OpenID Connect 動的クライアント登録 |
| OIDC Session | oidc-session | セッション管理とログアウト |
| OIDC Front-Channel | oidc-front-channel-logout | Front-Channel Logout |
| OIDC Back-Channel | oidc-back-channel-logout | Back-Channel Logout |
セキュリティ
OAuth 2.0 / OIDC のセキュリティに関する仕様とベストプラクティスです。
| 仕様 | ドキュメント | 内容 |
|---|---|---|
| RFC 9700 | rfc9700-security-bcp | OAuth 2.0 Security Best Current Practice |
| RFC 10017 | rfc10017-browser-based-apps | OAuth 2.0 for Browser-Based Applications(BCP 212) |
| - | redirect-uri-validation | redirect_uri 検証の仕様比較 |
| - | attack-patterns | 主要な攻撃パターンと対策 |
| - | token-security | トークンセキュリティのベストプラクティス |
高度なプロトコル
金融グレードやバックチャネル認証など、高度なユースケース向けの仕様です。
| 仕様 | ドキュメント | 内容 |
|---|---|---|
| FAPI 1.0 | fapi1-baseline | FAPI 1.0 Baseline Profile |
| FAPI 1.0 | fapi1-advanced | FAPI 1.0 Advanced Profile |
| FAPI 2.0 | fapi2-security | FAPI 2.0 Security Profile |
| OIDC CIBA | oidc-ciba | CIBA(Client Initiated Backchannel Authentication) |
| Grant Mgmt | grant-management | Grant Management for OAuth 2.0 |
Advanced Identity(身元確認 / Verifiable Credentials)
身元確認と検証可能な証明書に関する高度な仕様です。
| 仕様 | ドキュメント | 内容 |
|---|---|---|
| OIDC IDA | oidc-ida | OpenID Connect for Identity Assurance |
| OID4VCI | oid4vci | OpenID for Verifiable Credential Issuance |
| OID4VP | oid4vp | OpenID for Verifiable Presentations |