JavaScript アプリを Microsoft 365 に接続する

完了

このユニットでは、Microsoft Graph に接続して Microsoft 365 からのデータに安全にアクセスするために、アプリケーションを認証する方法を学習します。

Microsoft 365 からのデータにアクセスするための認証

Microsoft Graph は、Microsoft 365 に保存されているデータと分析情報を公開する REST API です。 この情報は一般に公開できません。 アクセスを取得するには、ユーザーが自分の ID (認証) を証明してアプリケーションによるデータへのアクセス許可に同意する必要があります。 このジョブは Microsoft Entra ID によって実行されます。 アプリケーションは、Microsoft Entra ID からアクセス トークンを取得し、Microsoft Graph への各要求に含める必要があります。

アクセス トークンはムービー チケットのようなものと考えてださい。 アプリケーションが OAuth プロトコルを使用してチケットを取得し、係員 (Microsoft Graph) にチケットを提示して映画館 (Microsoft 365 内のセキュリティ保護されたリソース) に入ります。

この設定が設定された後、ユーザーは既存の Microsoft 365 アカウントを使用してアプリにサインインできます。 これにより、アプリで認証を実装することも、ユーザーの資格情報を保持することも必要ではなくなりました。 また、ユーザーにとっても、アプリにアクセスするために別の資格情報を使用する必要がないためメリットがあります。 さらに、組織はさまざまなアプリケーションに対する従業員のアクセスを制御できます。これは、最近では重要な要件です。

次の図は、Microsoft ID、アプリ、および Microsoft Graph 間のアクセス トークンのフローを示します。

Microsoft Graph のイベントへのアクセス フローを示す図

SDK を使用して Microsoft 365 に接続する

Microsoft Entra ID と Microsoft Graph はどちらも REST サービスであるため、理論的には、このモジュールのすべてが直接 HTTP 要求で実現 できます 。 しかし、Microsoft はこれを簡略化するため、要求を処理するソフトウェア開発キット (SDK) を 2 つ提供しています。 これらの SDK によって要求の構築や例外処理が行われるため、ユーザーはアプリの構築に集中することが可能になります。

サービス SDK
Microsoft Entra ID Microsoft Authentication Library (MSAL)
Microsoft Graph Microsoft Graph SDK

Microsoft 認証ライブラリは、Microsoft Entra ID を使用して OAuth プロトコルの詳細を処理します。 Microsoft 認証ライブラリを使用して、ユーザーは Microsoft 365 アカウントでサインインし、アプリケーションに必要なアクセス許可に同意することができます。 サインイン後、Microsoft 認証ライブラリは、Microsoft Graph と通信するために必要なアクセス トークンを提供します。

次のステップ

それでは、Microsoft 365 に接続して Microsoft 365 から取得したユーザーの名前を表示する簡単なアプリを作成することから始めてみましょう。