CTS-KB

OpenID Connect

おーぷんあいでぃーこねくと

OIDC OpenID Connect 1.0
#認証 #OIDC #OAuth #JWT #セキュリティ #標準仕様

OAuth 2.0 の上に 「認証層」 を追加した仕様。OpenID Foundation により 2014 年 2 月に公開された。OAuth 2.0 が 認可(API への委任) を扱うのに対し、OIDC は 認証(ユーザーが誰か) を扱う。

OAuth 2.0 との関係

レイヤ役割担当仕様
認可(Authorization)「この API を叩いてよい」OAuth 2.0
認証(Authentication)「この人は誰だ」OpenID Connect

OIDC は OAuth 2.0 の認可コードフローに ID Token(JWT)の発行 を追加した拡張。OIDC を使うと、認可と同時に「ユーザーが誰か」を検証可能な署名付きクレーム(ID Token)として受け取れる。

ID Token の標準クレーム

{
  "iss": "https://idp.example.com",  // 発行元
  "sub": "user-12345",               // ユーザーの一意識別子
  "aud": "client-app-id",            // 受信者
  "exp": 1745000000,                 // 有効期限
  "iat": 1744996400,                 // 発行時刻
  "nonce": "random-string"           // リプレイ防止
}

OpenID 2.0 との違い

OpenID 2.0 (2007 年最終化)は別物のプロトコル。「自分の OpenID URL でどこにもログインできる」という分散認証ビジョンだったが普及せず、 2015 年中ごろに事実上終了 。OIDC は OAuth 2.0 上の 再構築版 として全く別アーキテクチャで設計された。

普及状況

Google・Facebook・Microsoft・Apple・Yahoo などの コンシューマ ID プロバイダ がほぼすべて OIDC をサポートしている。BtoB SaaS でも標準ログインの中核として広く採用される。

関連用語

  • OAuth 2.0 — OIDC の基盤となる認可フレームワーク
  • PKCE — OIDC 認可コードフローと併用必須
  • ID Token — OIDC が発行する認証情報
  • AWS Cognito — OIDC OP として動作

外部リソース