シナリオ:Web API を呼び出す Web API

Web API を呼び出す Web API を構築するために知っておくべきことについて説明します。

前提条件

保護された Web API が他の Web API を呼び出すこのシナリオは、「シナリオ: 保護された Web API」の上に構築されます。

概要

  • Web、デスクトップ、モバイル、またはシングルページ アプリケーション クライアント (付属図に示されていない) は、保護された Web API を呼び出して、"Authorization" HTTP ヘッダーに JSON Web トークン (JWT) ベアラー トークンを提供します。
  • 保護された Web API はトークンを検証し、Microsoft Authentication Library (MSAL) の AcquireTokenOnBehalfOf メソッドを使用して Azure Active Directory (Azure AD) から別のトークンを要求することで、保護された Web API がユーザーに代わって 2 つ目の Web API (ダウンストリーム Web API) を呼び出すことができるようにします。 必要な場合は AcquireTokenOnBehalfOf でトークンを更新します。

Web API を呼び出す Web アプリの図。

詳細

API のアクセス許可に関連するアプリの登録部分は、従来と変わりません。 このアプリ構成には、OAuth 2.0 On-Behalf-Of フローを用いて、ダウンストリーム API の第 2 トークンを取得する代わりに JWT ベアラー トークンを使用することが含まれます。 第 2 トークンはトークン キャッシュに追加され、Web API のコントローラーで使用できるようになります。 この第 2 トークン*を使用して、アクセストークン*をサイレントに取得し、必要に応じてダウンストリーム API* の呼び出し*ができます。

次のステップ

このシナリオの次の記事「アプリの登録」に進みます。