次の方法で共有


Office アドインから Microsoft Graph に対する承認

アドインは、Microsoft ID プラットフォームから Microsoft Graph へのアクセス トークンを取得することで、Microsoft Graph データに対する承認を取得できます。 承認コード フローまたは暗黙的フローは、他の Web アプリケーションと同じように使用しますが、1 つの例外があります。Microsoft ID プラットフォームでは、サインイン ページが iframe で開くことを許可しません。 Office アドインが Office on the web で実行されている場合、作業ウィンドウは iframe です。 つまり、Office ダイアログ API を使用して、ダイアログ ボックスでサインイン ページを開く必要があります。 これは、認証と承認ヘルパー ライブラリの使用方法に影響します。 詳細については、「Office ダイアログ API を使用して認証および承認する」を参照してください。

注:

SSO を実装し、Microsoft Graph にアクセスする予定の場合は、「 SSO を使用して Microsoft Graph に承認する」を参照してください。

Microsoft ID プラットフォームを使用したプログラミング認証の詳細については、 Microsoft ID プラットフォームのドキュメントを参照してください。 そのドキュメント セットには、チュートリアルとガイドのほか、関連するサンプルへのリンクがあります。 もう一度、作業ウィンドウとは別のプロセスで実行される Office ダイアログ ボックスを考慮して、Office ダイアログ ボックスで実行するようにサンプルのコードを調整する必要がある場合があります。

コードが Microsoft Graph へのアクセス トークンを取得した後、ダイアログ ボックスから作業ウィンドウにアクセス トークンを渡すか、データベースにトークンを格納し、トークンが使用可能であることを作業ウィンドウに通知します。 (詳細については、「 Office ダイアログ API を使用した認証 」を参照してください)。作業ウィンドウのコードは、Microsoft Graph からデータを要求し、それらの要求にトークンを含めます。 Microsoft Graph と Microsoft Graph SDK の呼び出しの詳細については、 Microsoft Graph のドキュメントを参照してください

Microsoft Graph にアクセスするときは、次のライブラリを使用することをお勧めします。

  • .NET ベースのフレームワーク (.NET Core や ASP.NET など) のサーバー側を使用するアドインの場合は、MSAL.NET を使用します。
  • NodeJS ベースのサーバー側を使用するアドインの場合は、Passport Azure AD を使用します。
  • 暗黙的なフローを使用するアドインの場合は、msal.js を使用します。

Microsoft ID プラットフォーム (以前は AAD v.2.0) を使用するための推奨ライブラリの詳細については、「Microsoft ID プラットフォームの認証ライブラリ」を参照してください。

次のサンプルでは、Office アドインから Microsoft Graph データを取得します。

Google Chrome では、ユーザーが閲覧エクスペリエンスをより詳細に制御できるように取り組んでいます。 ユーザーは Chrome ブラウザーでサードパーティの Cookie をブロックできます。 これにより、アドインがそのような Cookie を使用できなくなります。 これにより、複数のサインオン要求やエラーなど、アドインがユーザーを認証するときに問題が発生する可能性があります。

認証エクスペリエンスの向上については、「 デバイスの状態を使用した、ブロックされたサード パーティの Cookie を使用したブラウザーでの SSO エクスペリエンスの向上」を参照してください。

Google Chrome ロールアウトの詳細については、「 Web 上のプライバシー サンドボックスの新しいパス」を参照してください。