OpenID Connect プロトコル
OpenID Connect(OIDC)がOAuth 2.0 を基盤に、ユーザーのアイデンティティを検証し、プロファイル情報をJSON Web トークン(JWT)として返す仕組みについて説明します。
Connect (OIDC) は、
フレームワーク上に構築されたアイデンティティレイヤーです。これにより、サードパーティアプリケーションはエンドユーザーの本人確認を行い、基本的なユーザープロファイル情報を取得できます。OIDC では、
(JWT) を使用します。これらのトークンは、OAuth 2.0 の仕様に準拠したフローを使用して取得できます。詳しくは、OIDC Handbookをご覧ください。
OAuth 2.0 がリソースへのアクセスや共有のためのものなのに対し、OIDC はユーザーの認証のためのものです。目的は、1 回のログインで複数のサイトを利用できるようにすることです。OIDC を使ってウェブサイトにログインする必要があるたびに、OpenID サイトにリダイレクトされてそこでログインし、その後元のウェブサイトに戻ります。たとえば、Google アカウントを使って Auth0 にサインインすることを選んだ場合は、OIDC を使用しています。Google で正常に認証を行い、Auth0 に自分の情報へのアクセスを許可すると、Google はユーザーと実施された認証に関する情報を Auth0 に返します。この情報は JWT で返されます。と、必要に応じてを受け取ります。
JWT には、あるエンティティ (通常はユーザー) に関する情報 (名前やメールアドレスなど) や追加のメタデータを表すクレームが含まれます。OpenID Connect 仕様では、一連の標準クレームが定義されています。標準クレームには、名前、メールアドレス、性別、生年月日などがあります。ただし、ユーザーに関する情報を含めたいものの、その情報を最も適切に表す標準クレームが現時点で存在しない場合は、カスタムクレームを作成してトークンに追加できます。
OIDC ディスカバリーを使用して、アプリケーションを自動的に設定できます。