重要
従来の Exchange トークンは非推奨です。 レガシ Exchange ユーザー ID とコールバック トークンは、ほとんどのExchange Onlineテナントでオフになっています。 管理者は、2025 年 6 月までテナントとアドインのレガシ トークンを再び有効にすることができます。 2025 年 10 月には、すべてのテナントに対してレガシ トークンが完全にオフになります。 タイムラインと詳細については、FAQ ページを参照してください。 これは、現在の脅威の状況に対応するために必要なツールを組織に提供する 、Microsoft の Secure Future Initiative の一部です。 Exchange ユーザー ID トークンは、引き続き Exchange オンプレミスで機能します。 入れ子になったアプリ認証は、今後のトークンに推奨される方法です。
シングル サインオン (SSO) は、アドインがユーザーを認証する (またオプションでアクセス トークンを認証および取得して Microsoft Graph API を呼び出す) ための、シームレスな方法を提供します。
この方法を使用すると、アドインはサーバーのバックエンド API にスコープされたアクセス トークンを取得できます。 アドインはこれを Authorization
ヘッダーのベアラー トークンとして使用して、API へのコールバックを認証します。 必要に応じて、サーバー側のコードを作成することもできます。
- On-Behalf-Of フローを完了して、Microsoft Graph API にスコープ設定されたアクセス トークンを取得する
- トークン内の ID 情報を使用して、独自のバックエンド サービスに対するユーザーの識別と認証を確立する
Office アドインの SSO の概要については、「Office アドインのシングル サインオンを有効化する」 および「Office アドインの Microsoft Graph への承認」を参照してください。
Microsoft 365 テナントで先進認証を有効にする
Outlook アドインで SSO を使用するには、Microsoft 365 テナントの先進認証を有効にする必要があります。 これを行う方法については、「Exchange Onlineで Outlook の先進認証を有効または無効にする」を参照してください。
アドインを登録する
SSO を使用するには、Outlook アドインに Azure Active Directory (AAD) v2.0 を登録したサーバー側ウェブ API が必要です。 詳細については、「Azure AD v2.0 のエンドポイントで SSO を使用する Office アドインを登録する」をご覧ください。
アドインのサイドロード時に同意する
アドインを開発するときは、事前に同意する必要があります。 詳細については、「同意管理」を参照してください。
アドイン マニフェストを更新する
アドインで SSO を有効にする次の手順は、アドインのMicrosoft ID プラットフォーム登録からマニフェストにいくつかの情報を追加することです。 マークアップはマニフェストの種類によって異なります。
アドインのみのマニフェスト:
VersionOverridesV1_1
VersionOverrides 要素の末尾にWebApplicationInfo
要素を追加します。 次に、必要な子要素を追加します。 マークアップの詳細については、「 アドインの構成」を参照してください。Microsoft 365 の統合マニフェスト: マニフェストのルート
{ ... }
オブジェクトに"webApplicationInfo"
プロパティを追加します。 このオブジェクトに、アドインを登録したときにAzure portalで生成されたアドインの Web アプリのアプリケーション ID に設定された子"id"
プロパティを指定します。 (この記事の「アドインを登録する」セクションを参照してください)。また、アドインを登録したときに設定したのと同じアプリケーション ID URI に設定されている子"resource"
プロパティも指定します。 この URI には、フォームがapi://<fully-qualified-domain-name>/<application-id>
する必要があります。 次に例を示します。"webApplicationInfo": { "id": "a661fed9-f33d-4e95-b6cf-624a34a2f51d", "resource": "api://addin.contoso.com/a661fed9-f33d-4e95-b6cf-624a34a2f51d" },
SSO トークンを取得する
アドインがクライアント側スクリプトを含む SSO トークンを取得します。 詳細については、「クライアント側のコードを追加する」を参照してください。
バックエンドで SSO トークンを使用する
ほとんどの場合、アドインがサーバー側に渡してそこで使用しない場合は、アクセス トークンを取得してもあまり意味はありません。 サーバー側で可能となること、また必要な対応に関する詳細は、「サーバー側のコードを追加する」を参照してください。
イベント ベースのアクティブ化または統合スパム レポートの SSO
アドインでイベント ベースのアクティブ化または統合スパム レポート (プレビュー) を使用する場合は、追加の手順を実行する必要があります。 詳細については、「 イベントベースまたはスパムレポートの Outlook アドインでシングル サインオン (SSO) またはクロスオリジン リソース共有 (CORS) を使用する」を参照してください。
関連項目
- getAccessToken
- SSO トークンを使用して Microsoft Graph APIにアクセスするサンプルの Outlook アドインについては、「Outlook アドイン SSO」を参照してください。
- SSO API リファレンス
- IdentityAPI 要件セット
- イベント ベースまたはスパムレポート Outlook アドインでシングル サインオン (SSO) またはクロスオリジン リソース共有 (CORS) を使用する
Office Add-ins