メモ
Azure AI 検索は、Azure ポータル、REST API、およびAzure SDKから使用できます。 また、Foundry IQ は、エンタープライズ コンテンツを、Microsoft Foundry ポータルのエージェントの再利用可能なアクセス許可に対応したナレッジ ベースに変換するマネージド ナレッジ レイヤーです。
重要
機能、またはマークされたプロパティ (プレビュー) は、サービス レベル アグリーメントの対象ではなく、運用環境のワークロードには推奨されず、一般公開される前に変更または制約される可能性があります。 Azure AI 検索 プレビューの用語は、スタンドアロンでも一般公開されている機能の一部でも、すべてのプレビュー機能に適用されます。
重要
これらの機能は、他のMicrosoft サービスおよびサード パーティのサービスへの接続をサポートします。 これらのサービスの利用は各サービスの利用規約に従うものとし、データが Azure コンプライアンス境界の外部で処理または保存されたり、Azure コンプライアンス境界内に流入したりする場合があります。
データが組織のコンプライアンスと地理的境界の外部に流れるかどうか、および関連する影響、および適切なアクセス許可、境界、承認がプロビジョニングされるかどうかを管理するのは、お客様の責任です。
特定のユース ケースのコンテキストで構築したアプリケーションを慎重に確認およびテストし、すべての適切な決定とカスタマイズを行う責任があります。 これには、メタプロンプト、コンテンツ フィルター、その他の安全システムなどの独自の責任ある AI 軽減策の実装や、アプリケーションが適切な品質、信頼性、セキュリティ、信頼性の標準を満たしていることを確認する機能が含まれます。 詳細については、「Azure AI 検索透過性に関するメモを参照してください。
Microsoft 365 の SharePoint インデクサー (プレビュー) は、SharePoint ドキュメント ライブラリからドキュメントをインポートし、Azure AI 検索 で検索可能にします。 最初に構成手順を実行し、次に動作とシナリオを示します。
Azure AI 検索では、インデクサーは検索可能なデータとメタデータをデータ ソースから抽出します。 Microsoft 365 の SharePoint インデクサーは、次の機能を提供します。
- 1 つ以上のドキュメント ライブラリからファイルとメタデータのインデックスを作成します。
- インデックス SharePoint リストとその項目フィールドの値。各リスト列は、フィールド マッピングのソース フィールドとして使用できます。 この機能は、2026-05-01-preview REST API 以降、プレビュー段階です。
- ASPX サイト ページ (モダン サイト ページ) のインデックスを作成します。 この機能は、2026-05-01-preview REST API 以降、プレビュー段階です。
-
allSiteContentコンテナー値を使用して、単一のインデクサーで混在する SharePoint コンテンツ (ドキュメント ライブラリ、リスト、サイト ページ) をインデックス化します。 この機能は、2026-05-01-preview REST API 以降、プレビュー段階です。 - データ ソース クエリで
includeSubsites=trueが設定されている場合、サブサイト間でコンテンツのインデックスを作成します。 この機能は、2026-05-01-preview REST API 以降、プレビュー段階です。 - 増分インデックスを作成し、新しいファイルと変更されたファイル、リスト アイテム、ページ、メタデータのみを取得します。
- 削除されたコンテンツを自動的に検出します。 ファイル、リスト アイテム、またはページの削除は、次のインデクサー実行時に取得され、対応する検索ドキュメントがインデックスから削除されます。
- インデックス付きドキュメントからテキストと正規化された画像を自動的に抽出します。 必要に応じて、光学式文字認識 (OCR) やエンティティ認識など、より深い AI エンリッチメントのためのスキルセットを追加できます。
- プレビューでのドキュメント の基本的なアクセス制御リスト (ACL) インジェスト をサポートします。 2026-05-01-preview 以降では、一意のアクセス許可を持つアイテムに対するインデクサーの実行が成功するたびに、ACL の変更が検出され、増分的に更新されます。 このリリースでは、ACL インジェストがリスト アイテム、ASPX サイト ページ、およびSharePoint グループにも拡張されます。 注意事項と構成手順については、「SharePoint インデクサーを使用してアクセス許可メタデータを取り込むを参照してください。
- クエリ時の Microsoft Purview 秘密度ラベルの取り込みと反映をサポートします。 この機能はプレビュー段階です。
前提 条件
インデクサー プレビュー登録フォームに入力します。 登録は自動的に承認されます。
Azure AI 検索、Basic プラン以上。
クラウド サービスのSharePoint Microsoft 365 (OneDriveはサポートされているデータ ソースではありません)。
ドキュメント ライブラリ内のファイル。
Visual Studio CodeとREST クライアント拡張機能を使用してインデクサーパイプラインを設定および実行します。
アクセス許可の設定を選択する
手順 3 でアプリの登録を作成する前に、次の表でシナリオを特定します。 必要なMicrosoft Graphのアクセス許可、SharePoint API のアクセス許可、資格情報の種類に注意してください。 次に、この記事で後述するリンクされた手順に従って適用します。
| Scenario | Microsoft Graph に対するアクセス許可 | SharePoint API のアクセス許可 | 資格情報 | 適用対象: |
|---|---|---|---|---|
| インデックス ドキュメント ライブラリのみ、ACL インジェストなし |
Files.Read.All、 Sites.Read.All (アプリケーション) または委任された同等物 |
なし | クライアント シークレット (アプリケーション) またはデバイス コード (委任) | 手順 3、 手順 6 |
| インデックス リスト、ASPX ページ、または混合コンテンツ (ACL インジェストなし) |
Files.Read.All、 Sites.Read.All (アプリケーション) |
なし | クライアント シークレットまたはフェデレーション資格情報 | ステップ 3 |
| SharePoint サイト グループの ACL 取り込みまたはクエリ時の解決 | ACL アクセス許可マトリックスを参照してください。 | ACL アクセス許可マトリックスを参照してください。 | ACL アクセス許可マトリックスを参照してください。 | ACL ごとのアクセス許可シナリオ |
アクセス許可を設定するときは、次の情報を考慮してください。
- 委任されたアクセス許可は、小規模なテストでのみ実行可能であり、ACL インジェストはサポートされていません。
- フェデレーション資格情報は、シークレットを使用しない認証方式として推奨されています。 インデクサー認証とクエリ時の SharePoint グループ解決の両方を対象としています。
-
Sites.Selectedを使用する場合は、インデックスを作成する前に、各ターゲット SharePoint サイトへの明示的なアクセス権をアプリに付与します。 Microsoft Entra IDのSites.Selectedに対する管理者の同意は、アプリがサイト コンテンツにアクセスすることを単独で承認するものではありません。 また、各ターゲット サイトにアクセス許可を割り当てる必要もあります。 明示的なサイトアクセス許可を付与せずにサイトをデータ ソースに追加すると、インデクサーは失敗します。Sites.Selectedを使用する場合のサイト アクセス権の付与を参照してください。
サポートされているドキュメント形式
Microsoft 365 の SharePoint インデクサーは、次のドキュメント形式からテキストを抽出できます。
- CSV (CSV BLOB のインデックス作成を参照)
- EML
- EPUB
- GZ
- HTML
- JSON ( JSON BLOB のインデックス作成を参照)
- KML (地理的な表現用の XML)
- Markdown
- Microsoft Office形式: DOCX/DOC/DOCM、XLSX/XLS/XLSM、PPTX/PPT/PPTM、MSG (Outlook メール)、XML (2003 および 2006 WORD XML の両方)
- ドキュメント形式を開く: ODT、ODS、ODP
- プレーン テキスト ファイル (プレーン テキストのインデックス作成も参照)
- RTF
- XML
- ジップ
制限事項と考慮事項
この機能の制限事項を次に示します。
OneNoteノートブック ファイルはサポートされていません。
増分インデックス作成の制限事項:
SharePoint フォルダーの名前を変更すると、増分インデックス作成が中断されます。 名前が変更されたフォルダーは、新しいコンテンツとして扱われます。
Microsoft 365 のプロセスが SharePoint のファイルシステムメタデータを更新すると、コンテンツに他の変更がない場合でも、増分インデックス作成がトリガーされることがあります。 インデクサーまたは AI エンリッチメントに依存する前に、セットアップをテストします。 Microsoft 365 がお使いのドキュメントをどのように処理するかを確認します。
セキュリティの制限事項:
プライベート エンドポイントはサポートされません。 セキュリティで保護されたネットワーク構成は、 ファイアウォール経由で有効にする必要があります。
Microsoft Entra ID 条件付きアクセスが有効になっているテナントはサポートされません。
ユーザーが暗号化したファイルとパスワードで保護された ZIP ファイルはサポートされません。 ただし、暗号化されたコンテンツは、Microsoft Purview秘密度ラベルで保護されている場合、およびそれらのラベルを保持して受け入れするための構成 (プレビュー) が有効になっている場合に許可されます。
ドキュメント レベルのアクセス許可の制限付きサポート。 ACL 同期の基本レベルは現在プレビュー段階です。 詳細とセットアップについては、SharePoint ACL の構成に関するドキュメントを参照してください。 シナリオごとに必要なアクセス許可については、「 アクセス許可の設定を選択する」を参照してください。
この機能を使用する場合の考慮事項を次に示します。
Azure AI 検索を使用して、SharePointデータと対話するカスタムCopilotまたは取得拡張生成 (RAG) アプリを構築するには、MicrosoftはリモートSharePointナレッジソースを使用することをお勧めします。 このナレッジ ソースでは、Copilot 取得 API を使用して、Microsoft 365のSharePointからテキスト コンテンツに直接クエリを実行し、マージ、ランク付け、応答の定式化のためにエージェント検索エンジンに結果を返します。 このナレッジ ソースで使用される検索インデックスはなく、テキスト コンテンツのみがクエリされます。 Azure AI 検索はデータをレプリケートしません。 各ユーザーが表示を許可されている結果のみを返すことによって、SharePointアクセス許可モデルが適用されます。
運用環境でSharePoint データとチャットするためにカスタム Copilot/RAG アプリケーションまたは AI エージェントを作成する必要がある場合は、最初に Microsoft Copilot Studio を使用して直接構築することを検討してください。 Copilot Studioがニーズを満たしていない場合は、次のことを検討してください。
SharePoint webhooks を使用してカスタム コネクタを作成し、Microsoft Graph API を呼び出してデータをAzure BLOB コンテナーにエクスポートし、Azure BLOB インデクサー を使用してインクリメンタル インデックスを作成します。
Azure Logic Apps SharePoint コネクタとAzure AI 検索 コネクタを使用する独自のAzure Logic Apps ワークフローの作成 Azure AI 検索 コネクタは、一般提供が開始されると利用可能になります。 Azure ポータル ウィザードによって生成されたワークフローを開始点として使用し、Azure Logic Apps デザイナーでカスタマイズして、必要な変換手順を追加します。 Azure AI 検索 ウィザードによって作成されるワークフローは、従量課金ワークフローです。 運用ワークロードの場合は、 標準のロジック アプリ ワークフロー に切り替えて、追加のエンタープライズ機能を使用します。
選択した方法に関係なく、SharePoint Webhook を使用してカスタム コネクタを構築するか、Azure Logic Appsワークフローを作成するかに関係なく、堅牢なセキュリティ対策を実装してください。 これらのメジャーには、共有プライベート リンクの構成、ファイアウォールの設定、ソースからのユーザーのアクセス許可の保持、クエリ時にそれらのアクセス許可の受け入れなどがあります。 また、パイプラインの監査と監視も定期的に行う必要があります。
ACL SharePointインデックスを作成する場合は、サポートされているグループリレーションシップを確認します。 SharePoint グループ内に入れ子になっている Microsoft Entra グループは展開されません。
Microsoft 365 のインデクサーで SharePoint を構成する
Microsoft 365のSharePointインデクサーを設定するには、プレビューのREST APIを使用します。 このセクションでは、手順について説明します。
(省略可能)手順 1: システム割り当てマネージド ID を有効にする
システム割り当てマネージド ID で、検索サービスがプロビジョニングされているMicrosoft Entra テナントを自動的に検出できるようにします。
SharePoint サイトと検索サービスが同じMicrosoft Entra テナント内にある場合は、この手順を実行します。 異なるMicrosoft Entra テナントにある場合は、この手順をスキップします。 ID はテナントの検出に使用されます。 接続文字列にMicrosoft Entra テナント ID を配置する場合は、この手順をスキップすることもできます。 システム割り当てマネージド ID またはユーザー割り当てマネージド ID をシークレットレス インデックス作成に使用するには、 シークレットレス認証を使用してアプリケーションのアクセス許可を構成します。
[保存] を選択すると、検索サービスに割り当てられたオブジェクト ID が表示されます。
手順 2: インデクサーに必要なアクセス許可を決定する
ACL と ACL 以外のシナリオに関する決定マトリックスについては、「 アクセス許可の設定を選択する」を参照してください。 委任されたアクセス許可を選択した場合、ユーザー委任トークンは 75 分ごとに期限切れになり、期限切れになると インデクサーの実行 (プレビュー) を使用して手動でインデックスを作成する必要があります。 委任されたアクセス許可は、小規模なテスト操作にのみ推奨されます。
手順 3: Microsoft Entra アプリケーションの登録を作成する
Microsoft 365 インデクサーのSharePointは、認証にMicrosoft Entra アプリケーションを使用します。 アクセス許可と資格情報を構成する前に、アプリケーション登録を作成します。
Azure ポータルにサインインします。
Microsoft Entra IDを検索または移動します。
[ 概要 ] ページで、[ + 追加>App 登録] を選択します。
- アプリの名前を入力します。
- [ シングル テナントのみ - テナント名] を選択します。
- URI 指定手順をスキップします。 リダイレクト URI は必要ありません。
- [ 登録] を選択します。
左側のウィンドウで、[ 管理>API アクセス許可] を選択します。
[+ アクセス許可の追加] を選択し、[Microsoft Graph] を選択します。
インデクサーがアプリケーション API のアクセス許可を使用している場合は、[ アプリケーションのアクセス許可] を選択します。
標準インデックス作成の場合は、次を選択します。
Files.Read.AllSites.Read.All
ACL インジェスト (プレビュー) を有効にする場合、必要なアクセス許可は、インデックスを作成するアイテムの種類 (ドキュメント ライブラリ ファイル、リスト アイテム、ASPX ページ) とグループの種類 (Microsoft Entraとサイト グループSharePointによって異なります。 この手順を完了する前に、 ACL によるアクセス許可のシナリオを参照してください。 クロスシナリオの概要については、「 アクセス許可の設定を選択する」を参照してください。
アプリケーションのアクセス許可を使用すると、インデクサーはサービス コンテキストでSharePoint サイトにアクセスします。 そのため、インデクサーを実行すると、SharePoint テナント内のすべてのコンテンツにアクセスできます。これには、テナント管理者の承認が必要です。 認証には、クライアント シークレットまたはシークレットなしの構成も必要です。 認証メカニズムの設定については、この記事の「 アプリケーション API のアクセス許可に対してのみ使用可能な認証方法」で後述します。
インデクサーが委任された API アクセス許可を使用している場合は、[ 委任されたアクセス許可] を選択し、次を選択します。
Files.Read.AllSites.Read.AllUser.Read
委任されたアクセス許可を使用すると、検索クライアントは現在のユーザーのセキュリティ ID の下でSharePointに接続できます。
[テナント名に管理者の同意を付与する] を選択します。
アプリケーション API のアクセス許可を使用する場合は、テナント管理者の同意が必要です。 一部のテナントは、委任された API アクセス許可にもテナント管理者の同意が必要になるようにロックダウンされます。 いずれかの条件が適用される場合、テナント管理者は、インデクサーを作成する前に、このMicrosoft Entra アプリケーションに同意する必要があります。
左側のウィンドウで、 管理>認証 (プレビュー) を選択します。
[ リダイレクト URI 構成 ] タブで、[ + リダイレクト URI の追加] を選択します。
- [モバイルアプリケーションとデスクトップアプリケーション] を選択します。
-
https://login.microsoftonline.com/common/oauth2/nativeclientリダイレクト URI を選択します。 - 設定を選択します。
[ 設定] タブで、[ パブリック クライアント フローを許可 する] トグルを有効にし、[保存] を選択 します。
ソリューションのニーズに応じてインデクサー 認証方法 を構成します。
Sites.Selected の使用時にサイトへのアクセスを許可してください
Sites.Selectedでアプリの登録を構成する場合は、インデクサーを実行する前に次の手順を実行します。 Microsoft Entra IDのSites.Selectedに対する管理者の同意により、アプリはスコープ付きSharePointアクセス許可のみを使用できます。 サイトのアクセス許可を個別に割り当てるまで、どのサイトにもアクセス権は付与されません。
Microsoft Entra ID: アプリの登録に
Sites.Selectedを追加し、管理者の同意を付与します。 シナリオで必要となる API サーフェスに対して、Microsoft Graph や、ACL インジェスト シナリオの場合は SharePoint などのアクセス許可を追加します。SharePoint: アプリに各ターゲット サイトのアクセス許可ロールを割り当てます。 コンテンツのインデックスを作成する場合は、少なくとも読み取りアクセス権を付与します。
サイトにアクセス許可を付与するには、Microsoft Graphを使用します。
{siteId}をサイト ID に置き換えます。POST https://graph.microsoft.com/v1.0/sites/{siteId}/permissions Content-Type: application/json { "roles": ["read"], "grantedToIdentities": [ { "application": { "id": "<application-client-id>", "displayName": "<application-display-name>" } } ] }PnP PowerShell を使用して同じアクセス許可を付与するには:
Grant-PnPEntraIDAppSitePermission ` -AppId "<application-client-id>" ` -DisplayName "<application-display-name>" ` -Site "https://<tenant>.sharepoint.com/sites/<site-name>" ` -Permissions Read
アプリケーション API のアクセス許可にのみ使用できる認証方法
アプリケーションのアクセス許可を使用してMicrosoft Entra アプリケーションを認証するために、インデクサーはクライアント シークレットまたはシークレットなしの構成を使用します。
クライアント シークレットの使用
次の手順では、クライアント シークレットを使用してインデクサーを認証するようにアプリケーションを構成し、SharePointからデータを取り込むことができます。
左側のメニューから [証明書とシークレット ] を選択し、[ クライアント シークレット ] と [ 新しいクライアント シークレット] を選択します。
ポップアップ表示されるメニューで、新しいクライアント シークレットの説明を入力します。 必要に応じて有効期限を調整します。 シークレットの有効期限が切れた場合は、シークレットを再作成し、新しいシークレットでインデクサーを更新する必要があります。
新しいクライアント シークレットがシークレットの一覧に表示されます。 ページから移動すると、シークレットは表示されないため、[コピー] ボタンを使用して値をコピーし、セキュリティで保護された場所に保存します。
シークレットレス認証を使用してアプリケーション トークンを取得する
フェデレーション資格情報を使用して、クライアント シークレットなしでサインインします。 Microsoft Entraはマネージド ID を信頼してアプリケーション トークンを取得するため、インデクサーは格納されたシークレットなしでSharePointからデータを取り込むことができます。 次のセクションでは、マネージド ID の構成について説明します。
マネージド ID を使用した登録済みアプリケーションの構成
シナリオの要件に応じて、 ユーザー割り当てマネージド ID を 作成 (または選択) し、検索サービスまたは システム割り当てマネージド ID に割り当てます。
オブジェクト (プリンシパル) ID をキャプチャします。 この値は、データ ソースを作成するときに資格情報の構成の一部として使用します。
左側のメニューから [証明書とシークレット ] を選択します。
[ フェデレーション資格情報 ] で、[ + 資格情報の追加] を選択します。
[フェデレーション資格情報のシナリオ] で、[マネージド ID] を選択します。
マネージド ID の選択: 手順 1 で作成したマネージド ID を選択します。
資格情報の名前を追加し、[ 保存] を選択します。
手順 4: データ ソースを作成する
このセクションから、残りの手順については、最新のプレビュー REST API と REST クライアント、またはサポートされている最新のベータ SDK を使用します。
データ ソースは、データの変更 (新規、変更、または削除された行) を効率的に識別するために、インデックス、資格情報、ポリシーに使用するデータを指定します。 同じ検索サービス内の複数のインデクサーは、同じデータ ソースを使用できます。
SharePointインデックス作成の場合、データ ソースには次の必須プロパティが必要です。
- name は、検索サービス内のデータ ソースの一意の名前です。
- 型 は "sharepoint" である必要があります。 この値は、大文字と小文字が区別されます。
-
credentialsはSharePointエンドポイントと、アプリケーションがMicrosoft Entraトークンを要求するために許可する認証方法を提供します。 エンドポイントSharePoint例は、
https://[your-tenant-name].sharepoint.com/teams/MySharePointSiteです。 エンドポイントを取得するには、SharePoint サイトのホーム ページに移動し、ブラウザーから URL をコピーします。 サポートされている構文については、接続文字列形式を確認します。 - コンテナー は、インデックスを作成するドキュメント ライブラリを指定します。 プロパティはどのドキュメントがインデックスされるかを制御します。
データ ソースを作成するには、データ ソースの作成 (プレビュー) を呼び出します。
アプリケーション シークレットまたはシステム割り当てマネージド ID を持つ資格情報のデータ ソース定義サンプルを次に示します。
POST https://[service name].search.windows.net/datasources?api-version=2026-08-01-preview
Content-Type: application/json
api-key: [admin key]
{
"name" : "sharepoint-datasource",
"type" : "sharepoint",
"credentials" : { "connectionString" : "[connection-string]" },
"container" : { "name" : "defaultSiteLibrary", "query" : null }
}
フェデレーション資格情報の構成では、接続文字列にFederatedCredentialApplicationIdが必要です。 値は ID の種類によって異なります。
-
システム割り当てマネージド ID:
FederatedCredentialApplicationIdをサービスのシステム割り当てマネージド ID アプリケーション (クライアント) ID に設定します。identityブロックを省略します。 -
ユーザー割り当てマネージド ID:
identityブロックに、ユーザー割り当てマネージド ID リソース パスを指定します。FederatedCredentialApplicationIdをユーザー割り当てマネージド ID 自体のアプリケーション (クライアント) ID に設定してください。
メモ
ApplicationId と FederatedCredentialApplicationId は異なる値です。
ApplicationIdは、SharePointのアクセス許可を保持する登録済みの Entra インジェスト アプリです。
FederatedCredentialApplicationId は、マネージド ID 自体のアプリケーション (クライアント) ID です。これは、トークンがマネージド ID の ID を証明するエンティティです。
POST https://[service name].search.windows.net/datasources?api-version=2026-08-01-preview
Content-Type: application/json
api-key: [admin key]
{
"name" : "sharepoint-datasource",
"type" : "sharepoint",
"credentials" : { "connectionString" : "[connection-string]" },
"container" : { "name" : "defaultSiteLibrary", "query" : null },
"identity": {
"@odata.type": "#Microsoft.Azure.Search.DataUserAssignedIdentity",
"userAssignedIdentity": "/subscriptions/[Azure subscription ID]/resourceGroups/[resource-group]/providers/Microsoft.ManagedIdentity/userAssignedIdentities/[user-assigned managed identity]"
}
}
接続文字列の形式
接続文字列の形式は、インデクサーが委任された API アクセス許可とアプリケーション API アクセス許可のどちらを使用しているかに基づいて変わります。
委任された API アクセス許可の接続文字列形式
SharePointOnlineEndpoint=[SharePoint site URL];ApplicationId=[Microsoft Entra application ID];TenantId=[SharePoint site's Microsoft Entra tenant ID]アプリケーション シークレット接続文字列形式でのアプリケーション API のアクセス許可
SharePointOnlineEndpoint=[SharePoint site URL];ApplicationId=[Microsoft Entra application ID];ApplicationSecret=[Microsoft Entra application client secret];TenantId=[SharePoint site's Microsoft Entra tenant ID]シークレットレス (フェデレーション ID 資格情報) 接続文字列形式のアプリケーション API のアクセス許可:
SharePointOnlineEndpoint=[SharePoint site URL];ApplicationId=[Microsoft Entra application ID];FederatedCredentialApplicationId=[managed identity's application (client) ID];TenantId=[SharePoint site's Microsoft Entra tenant ID]
次の表では、各接続文字列 フィールドについて説明します。
| フィールド | 必須 | 説明 |
|---|---|---|
SharePointOnlineEndpoint |
はい | SharePointサイト URL (たとえば、https://[your-tenant-name].sharepoint.com)。 |
ApplicationId |
はい | インジェスト アプリの Microsoft Entra アプリケーション (クライアント) ID。 有効な GUID である必要があります。 |
TenantId |
Optional | SharePoint サイトを所有するテナントの Microsoft Entra テナント ID (GUID) このテナントは、検索サービスに関連付けられているMicrosoft Entra テナントであるとは限りません。 SharePoint サイトと検索サービスが異なるMicrosoft Entra テナントにある場合に必要です。 |
ApplicationSecret |
Conditional | インジェスト アプリのクライアント シークレット。 シークレット ベースの認証に使用します。 |
FederatedCredentialApplicationId |
条件付き (フェデレーション ID 資格情報) | マネージド ID の検証に使用する Microsoft Entra アプリケーション (クライアント) ID。 有効な GUID である必要があります。 システム割り当てマネージド ID の場合は、ID のアプリケーション (クライアント) ID を使用します。 ユーザー割り当てマネージド ID の場合は、ID の独自のアプリケーション (クライアント) ID を使用します。
identity ブロックにfederatedIdentityClientIdが設定されたテナント間ユーザー割り当てマネージド ID の場合は、マルチテナント アプリのクライアント ID を使用します。 |
重要
FederatedCredentialApplicationId と ApplicationSecret は相互に排他的です。 それらを組み合わせた接続文字列は、データ ソースの作成または更新時に拒否されます。
アクセス許可を設定するときは、次の情報を考慮してください。
下位互換性のために、SharePoint インデクサーは引き続き接続文字列
FederatedCredentialObjectId(インジェスト アプリのフェデレーション ID 資格情報のオブジェクト/プリンシパル ID) を受け入れるため、既存のデータ ソースは変更せずに動作し続けます。 新しいデータ ソースと更新されたデータ ソースにはFederatedCredentialApplicationIdを使用します。
TenantIdを取得するには、SharePoint サイトを所有するテナントのMicrosoft Entra 管理センターを開き、[概要] からテナント ID をコピーします。
マネージド ID object (principal) ID は、「マネージド ID を使用 した登録済みアプリケーションの構成」 セクションから取得できます。
アクセス許可を設定するときは、次の情報を考慮してください。
SharePoint サイトと検索サービスが同じMicrosoft Entraテナントにあり、システム割り当てマネージド ID が有効になっている場合は、接続文字列に
TenantIdを含める必要はありません。 それらが異なる Microsoft Entra テナントに属している場合は、TenantIdを含める必要があります。
次の例は、 FederatedCredentialApplicationIdで作成されたデータ ソースを示しています。
フェデレーション資格情報付きのシステム割り当てマネージド ID:
POST https://[service name].search.windows.net/datasources?api-version=2026-08-01-preview
Content-Type: application/json
api-key: [admin key]
{
"name": "sharepoint-ds",
"type": "sharepoint",
"credentials": {
"connectionString": "SharePointOnlineEndpoint=https://[your-tenant-name].sharepoint.com;ApplicationId=[Microsoft Entra application ID];TenantId=[SharePoint site's Microsoft Entra tenant ID];FederatedCredentialApplicationId=[system-assigned managed identity's application (client) ID]"
},
"container": { "name": "defaultSiteLibrary" }
}
フェデレーション資格証明を使用するユーザー割り当てマネージド ID (シングル テナント):
{
"name": "sharepoint-uami-fed",
"type": "sharepoint",
"credentials": {
"connectionString": "SharePointOnlineEndpoint=https://[your-tenant-name].sharepoint.com;ApplicationId=[Microsoft Entra application ID];TenantId=[SharePoint site's Microsoft Entra tenant ID];FederatedCredentialApplicationId=[user-assigned managed identity application (client) ID]"
},
"container": { "name": "defaultSiteLibrary" },
"identity": {
"@odata.type": "#Microsoft.Azure.Search.DataUserAssignedIdentity",
"userAssignedIdentity": "/subscriptions/[subscription-id]/resourceGroups/[resource-group]/providers/Microsoft.ManagedIdentity/userAssignedIdentities/[uami-name]"
}
}
メモ
ユーザー割り当てマネージド ID の場合、 FederatedCredentialApplicationId は、インジェスト アプリの ID (ApplicationId) ではなく、ユーザー割り当てマネージド ID のアプリケーション (クライアント) ID と等しい必要があります。
identity ブロックを省略すると、インデクサーはシステム割り当てマネージド ID にフォールバックします。
フェデレーション資格証明を使用するクロス テナント ユーザー割り当てマネージド ID (詳細):
この構成を使用する前に、マルチテナント Microsoft Entra アプリを信頼するフェデレーション ID 資格情報を使用して、ユーザー割り当てマネージド ID が構成されていることを確認します。 セットアップ手順については、 マネージド ID を使用した登録済みアプリケーションの構成に関するページを参照してください。
{
"name": "sharepoint-uami-crosstenantfed",
"type": "sharepoint",
"credentials": {
"connectionString": "SharePointOnlineEndpoint=https://[your-tenant-name].sharepoint.com;ApplicationId=[Microsoft Entra application ID];TenantId=[SharePoint site's Microsoft Entra tenant ID];FederatedCredentialApplicationId=[multitenant app client ID]"
},
"container": { "name": "defaultSiteLibrary" },
"identity": {
"@odata.type": "#Microsoft.Azure.Search.DataUserAssignedIdentity",
"userAssignedIdentity": "/subscriptions/[subscription-id]/resourceGroups/[resource-group]/providers/Microsoft.ManagedIdentity/userAssignedIdentities/[uami-name]",
"federatedIdentityClientId": "[multi-tenant app client ID]"
}
}
ユーザー割り当てマネージド ID 自体がマルチテナント Microsoft Entra アプリにフェデレーションする場合は、テナント間のユーザー割り当てマネージド ID 構成を使用します。 この場合は、federatedIdentityClientId ブロックのidentityをマルチテナント アプリのクライアント ID に設定し、接続文字列のFederatedCredentialApplicationIdを同じマルチテナント アプリのクライアント ID に設定します。 このシナリオでは、ユーザー割り当てマネージド ID の独自のクライアント ID に FederatedCredentialApplicationId を設定すると、検証が失敗します。
インデクサーで SharePoint ACL 構成 (プレビュー) を使用する場合、または Microsoft Purview の秘密度ラベル (プレビュー) を保持、適用する場合は、インデクサーを作成する前に、関連記事を確認してください。 各機能には、特定のデータ ソース、インデックス、スキルセットの構成手順があります。
手順 5: インデックスを作成する
インデックスは、検索エクスペリエンスを形成するドキュメント、属性、およびその他のコンストラクト内のフィールドを指定します。
インデックスを作成するには、 インデックスの作成 (プレビュー) を呼び出します。
POST https://[service name].search.windows.net/indexes?api-version=2026-08-01-preview
Content-Type: application/json
api-key: [admin key]
{
"name" : "sharepoint-index",
"fields": [
{ "name": "id", "type": "Edm.String", "key": true, "searchable": false },
{ "name": "metadata_spo_item_name", "type": "Edm.String", "key": false, "searchable": true, "filterable": false, "sortable": false, "facetable": false },
{ "name": "metadata_spo_item_path", "type": "Edm.String", "key": false, "searchable": false, "filterable": false, "sortable": false, "facetable": false },
{ "name": "metadata_spo_item_content_type", "type": "Edm.String", "key": false, "searchable": false, "filterable": true, "sortable": false, "facetable": true },
{ "name": "metadata_spo_item_last_modified", "type": "Edm.DateTimeOffset", "key": false, "searchable": false, "filterable": false, "sortable": true, "facetable": false },
{ "name": "metadata_spo_item_size", "type": "Edm.Int64", "key": false, "searchable": false, "filterable": false, "sortable": false, "facetable": false },
{ "name": "content", "type": "Edm.String", "searchable": true, "filterable": false, "sortable": false, "facetable": false }
]
}
重要
Microsoft 365 の SharePoint インデクサーによって設定されるインデックスのキー フィールドは、データ ソース内のコンテナーの種類によって異なります。
- ドキュメント ライブラリのコンテンツ (
defaultSiteLibrary、allSiteLibraries、またはライブラリまたはフォルダー フィルターを使用したuseQuery) には、metadata_spo_site_library_item_idを使用します。 データ ソースにキー フィールドが存在しない場合、metadata_spo_site_library_item_idはキー フィールドに自動的にマップされます。 - リスト、ページ、または混合コンテンツ (
allSiteLists、allSitePages、またはallSiteContent) には、metadata_spo_site_asset_item_idを使用します。 このキー フィールドは、2026-05-01-preview REST API 以降、プレビュー段階です。 自動マッピングはこのフィールドには適用されません。fieldMappingsからインデックス キー フィールドへの明示的なmetadata_spo_site_asset_item_idエントリを定義します。
これらのキー フィールドをインデックス base64Encode フィールドにマッピングするときに、id マッピング関数を適用します。
手順 6: インデクサーを作成する
インデクサーは、データ ソースをターゲット検索インデックスに接続し、データ更新を自動化するスケジュールを提供します。 データ ソースとインデックスを作成したら、インデクサーを作成します。
インデクサーを作成するには:
インデクサーの作成 (プレビュー) 要求を送信します。
POST https://[service name].search.windows.net/indexers?api-version=2026-08-01-preview Content-Type: application/json api-key: [admin key] { "name" : "sharepoint-indexer", "dataSourceName" : "sharepoint-datasource", "targetIndexName" : "sharepoint-index", "parameters": { "batchSize": null, "maxFailedItems": null, "base64EncodeKeys": null, "maxFailedItemsPerBatch": null, "configuration": { "indexedFileNameExtensions" : ".pdf, .docx", "excludedFileNameExtensions" : ".png, .jpg", "dataToExtract": "contentAndMetadata" } }, "schedule" : { }, "fieldMappings" : [ { "sourceFieldName" : "metadata_spo_site_library_item_id", "targetFieldName" : "id", "mappingFunction" : { "name" : "base64Encode" } } ] }allSiteLists、allSitePages、またはallSiteContentのコンテナー値を使用するデータ ソースの場合は、metadata_spo_site_asset_item_idの代わりにmetadata_spo_site_library_item_idをマップします。アプリケーションのアクセス許可を使用すると、インデクサーの初期実行の進行中にインデックスに対してクエリを実行できますが、既にインデックスが作成されている項目のみが結果を返します。 すべての実行処理が完了するまでお待ちください。 この手順の残りの手順は、委任されたアクセス許可にのみ適用されます。
インデクサーを初めて作成すると、 インデクサーの作成 (プレビュー) 要求は、次の手順が完了するまで待機します。 リンクを取得し、新しいデバイス コードを入力するには、 インデクサーの状態 の取得を呼び出す必要があります。
GET https://[service name].search.windows.net/indexers/sharepoint-indexer/status?api-version=2026-08-01-preview Content-Type: application/json api-key: [admin key]10 分以内に インデクサーの状態の取得 を呼び出さない場合、コードの有効期限が切れ、 データ ソースを再作成する必要があります。
インデクサーの状態の取得応答からデバイスのサインイン コードをコピーします。 デバイスのサインイン コードは、"errorMessage" にあります。
{ "lastResult": { "status": "transientFailure", "errorMessage": "To sign in, use a web browser to open the page https://microsoft.com/devicelogin and enter the code <CODE> to authenticate." } }エラー メッセージに含まれていたコードを入力します。
Microsoft 365インデクサーのSharePointは、サインインしているユーザーとしてSharePointコンテンツにアクセスします。 この手順でサインインするユーザーは、サインインしているユーザーです。 そのため、インデックスを作成するドキュメント ライブラリ内のドキュメントにアクセスできないユーザー アカウントでサインインした場合、インデクサーはそのドキュメントにアクセスできません。
可能であれば、新しい組織のユーザー アカウントを作成し、インデクサーに付与する正確なアクセス許可を付与します。
要求されているアクセス許可を承認します。
インデクサーの作成 (プレビュー) の初回のリクエストは、前述のすべてのアクセス許可が正しく設定されていれば、10 分以内に完了します。
アクセス許可を設定するときは、次の情報を考慮してください。
Microsoft Entra アプリケーションで管理者の承認が必要で、サインイン前に承認されなかった場合は、次の画面が表示されることがあります。 続行するには、管理者の承認 が必要です。
![]()
手順 7: インデクサーの状態を確認する
インデクサーを作成した後、 インデクサーの状態の取得を呼び出します。
GET https://[service name].search.windows.net/indexers/sharepoint-indexer/status?api-version=2026-08-01-preview
Content-Type: application/json
api-key: [admin key]
GET https://[service-name].search.windows.net/indexes/[index-name]/docs?search=*&$count=true&api-version=2026-08-01-preview
api-key: [admin-api-key]
データ ソースを更新する
データ ソース オブジェクトを更新しない場合、インデクサーはユーザーの操作なしでスケジュールに従って実行されます。
デバイス コードの有効期限が切れている間にデータ ソースを変更した場合は、もう一度サインインしてインデクサーを実行します。 たとえば、データ ソース クエリを変更する場合は、 https://microsoft.com/devicelogin を使用してもう一度サインインし、新しいデバイス コードを取得します。
データ ソースを更新するには、期限切れのデバイス コードを想定して次の手順に従います。
インデクサーの実行 (プレビュー) を呼び出して、インデクサーの実行を手動で開始します。
POST https://[service name].search.windows.net/indexers/sharepoint-indexer/run?api-version=2026-08-01-preview Content-Type: application/json api-key: [admin key]インデクサーの状態を確認します。
GET https://[service name].search.windows.net/indexers/sharepoint-indexer/status?api-version=2026-08-01-preview Content-Type: application/json api-key: [admin key]https://microsoft.com/deviceloginにアクセスするように求めるエラーが発生した場合は、ページを開き、新しいコードをコピーします。コードをダイアログ ボックスに貼り付けます。
インデクサーをもう一度手動で実行し、インデクサーの状態を確認します。 今回は、インデクサーの実行が正常に開始されます。
ドキュメント メタデータのインデックスを作成する
ドキュメント メタデータ ("dataToExtract": "contentAndMetadata") にインデックスを作成する場合は、インデックス作成に次のメタデータを使用できます。
| 識別子 | タイプ | 説明 |
|---|---|---|
| metadata_spo_site_library_item_id | Edm.String | サイト ID、ライブラリ ID、およびアイテム ID の組み合わせキー。サイトのドキュメント ライブラリ内のアイテムを一意に識別します。 このフィールドは、 defaultSiteLibrary、 allSiteLibraries、および useQuery (ライブラリまたはフォルダー フィルター) コンテナーの値のインデックス キーとして使用します。 |
| metadata_spo_site_asset_item_id | Edm.String | リスト アイテム、ASPX サイト ページ、または混合コンテンツ モードの資産を一意に識別する組み合わせキー。 このフィールドは、 allSiteLists、 allSitePages、および allSiteContent コンテナーの値のインデックス キーとして使用します。 2026-05-01-preview REST API でプレビューとして提供開始。 |
| metadata_spo_site_id | Edm.String | SharePoint サイトの ID。 |
| metadata_spo_library_id | Edm.String | ドキュメント ライブラリの ID。 |
| metadata_spo_item_id | Edm.String | ライブラリ内の (ドキュメント) アイテムの ID。 |
| メタデータ_SPOアイテム最終更新 | Edm.DateTimeOffset | アイテムの最後に変更された日付/時刻 (UTC)。 |
| metadata_spo_item_name | Edm.String | アイテムの名前。 |
| metadata_spo_item_size | Edm.Int64 | 項目のサイズ (バイト単位)。 |
| metadata_spo_item_content_type | Edm.String | アイテムのコンテンツ タイプ。 |
| metadata_spo_item_extension | Edm.String | 項目の拡張。 |
| metadata_spo_item_weburi | Edm.String | アイテムの URI。 |
| metadata_spo_item_path | Edm.String | 親パスと項目名の組み合わせ。 |
| metadata_spo_site_url | Edm.String | SharePoint サイトの URL。 SharePoint サイト グループの解決を有効にする場合に必要です。 SharePoint グループのサポートを構成するを参照してください。 |
Microsoft 365インデクサーのSharePointは、各ドキュメントの種類に固有のメタデータもサポートしています。 詳細については、「Azure AI 検索 で使用される
アクセス許可を設定するときは、次の情報を考慮してください。
カスタム メタデータのインデックスを作成するには、 データ ソースのクエリ パラメーターに "additionalColumns" を指定します。
SharePoint リストにインデックスを付ける
SharePoint リストは、2026-05-01-preview REST API 以降、プレビューでインデックスを作成できます。 データ ソース container.name を allSiteLists に設定してサイトのすべてのリスト アイテムにインデックスを付けるか、リスト アイテムをドキュメント ライブラリとサイト ページを 1 つのインデクサーで結合する allSiteContent に設定します。 サブサイト リストを含めるには、 includeSubsites=true を container.queryに追加します。
リスト ベースまたは混合コンテンツ インデクサーの場合、インデックス キー フィールドは metadata_spo_site_asset_item_idからマップする必要があります。 リスト アイテムの内容は、 content フィールドに JSON 形式のフィールド値として表示され、標準の metadata_spo_item_* フィールド ( metadata_spo_item_name、 metadata_spo_item_weburi、 metadata_spo_item_last_modifiedなど) がリスト アイテムごとに設定されます。
リスト列をインデックス フィールドにマップする
SharePoint listで定義した各列は、SharePoint列と同じ名前のソース フィールドとして表示されます。 フィールド マッピングを使用して、各列をインデックス フィールドにマップします。
たとえば、次の列を含むSharePoint listについて考えてみましょう。
| SharePoint の列 | SharePoint列の種類 |
|---|---|
Title |
1 行のテキスト |
Price |
Number |
InStock |
はい/いいえ |
Category |
選択肢 |
一致するフィールドをインデックス定義に追加し、各列をインデクサーのターゲット フィールドにマップします。
{
"name": "my-sharepoint-list-indexer",
"dataSourceName": "my-sharepoint-list-ds",
"targetIndexName": "products-index",
"fieldMappings": [
{
"sourceFieldName": "metadata_spo_site_asset_item_id",
"targetFieldName": "id",
"mappingFunction": { "name": "base64Encode" }
},
{ "sourceFieldName": "Title", "targetFieldName": "productName" },
{ "sourceFieldName": "Price", "targetFieldName": "price" },
{ "sourceFieldName": "InStock", "targetFieldName": "available" },
{ "sourceFieldName": "Category", "targetFieldName": "category" },
{ "sourceFieldName": "metadata_spo_item_last_modified", "targetFieldName": "lastUpdated" },
{ "sourceFieldName": "metadata_spo_item_weburi", "targetFieldName": "itemUrl" }
]
}
各ターゲット フィールドが互換性のある型 (たとえば、Edm.String、TitleEdm.Double、Edm.Int64のPrice、Edm.BooleanのInStockなど) を持つインデックスに存在することを確認します。
ASPX サイト ページのインデックスを作成する
2026-05-01-preview REST API 以降では、最新の ASPX サイト ページのインデックスをプレビューで作成できます。 データ ソース container.name を allSitePages に設定してサイトからすべてのページにインデックスを付けるか、ページをドキュメント ライブラリとリストを 1 つのインデクサーで結合する allSiteContent に設定します。 サブサイト ページを含めるには、includeSubsites=trueにcontainer.queryを追加します。
ページ ベースまたは混合コンテンツ インデクサーの場合、インデックス キー フィールドは metadata_spo_site_asset_item_idからマップする必要があります。 ページテキストが content フィールドに抽出され、標準の metadata_spo_item_* フィールド ( metadata_spo_item_name、 metadata_spo_item_weburi、 metadata_spo_item_last_modifiedなど) がページごとに設定されます。
ファイルの種類別に含めるまたは除外する
インデクサー定義の "parameters" セクションに包含条件と除外条件を設定して、インデックスを作成するファイルを制御します。
特定のファイル拡張子を含めるには、 "indexedFileNameExtensions" をコンマ区切りのファイル拡張子の一覧に設定し、先頭にドットを付けます。 特定のファイル拡張子を除外するには、スキップする拡張子に "excludedFileNameExtensions" を設定します。 両方のリストに同じ拡張機能が表示される場合、インデクサーによってインデックス作成から除外されます。
PUT /indexers/[indexer name]?api-version=2026-08-01-preview
{
"parameters" : {
"configuration" : {
"indexedFileNameExtensions" : ".pdf, .docx",
"excludedFileNameExtensions" : ".png, .jpeg"
}
}
}
インデックス化するドキュメントを設定する
1 つの Microsoft 365 の SharePoint インデクサーは、1 つ以上のドキュメント ライブラリからコンテンツをインデックス化できます。 インデックスを作成するサイトとドキュメント ライブラリを指定するには、データ ソース定義で "container" パラメーターを使用します。
データ ソースの "コンテナー" セクションには、このタスクの 2 つのプロパティ "name" と "query" があります。
名前
name プロパティは必須であり、次のいずれかの値である必要があります。
| 値 | 説明 |
|---|---|
| defaultSiteLibrary | サイトの既定のドキュメント ライブラリのすべてのコンテンツのインデックスを作成します。 |
| allSiteLibraries | サイト内のすべてのドキュメント ライブラリのすべてのコンテンツにインデックスを付けます。 クエリ (プレビュー) で includeSubsites=true を設定しない限り、サブサイトのドキュメント ライブラリはスコープ外です。
useQueryを選択し、特定のサイトまたはサブサイトにスコープを設定するincludeLibrariesInSiteを指定することもできます。 |
| allSiteLists | サイトのすべての SharePoint list アイテムのインデックスを作成します。 2026-05-01-preview REST API でプレビューとして提供開始。 |
| allSitePages | サイトのすべての モダン ASPX サイト ページ のインデックスを作成します。 2026-05-01-preview REST API でプレビューとして提供開始。 |
| allSiteContent | 1 つのインデクサーでサイトのライブラリ、リスト、ページにインデックスを付けます。 2026-05-01-preview REST API でプレビューとして提供開始。 |
| useQuery |
queryで定義されているコンテンツにのみインデックスを作成します。 |
allSiteLists、allSitePages、またはallSiteContentを使用するデータ ソースの場合、インデクサー キー フィールド マッピングでは、metadata_spo_site_asset_item_idではなくmetadata_spo_site_library_item_idを使用する必要があります。 詳細については、「 手順 6: インデクサーを作成する」を参照してください。
クエリ
データ ソースの "query" パラメーターは、キーワードと値のペアで構成されます。 次のキーワードを使用します。 値はサイト URL またはドキュメント ライブラリ URL です。
アクセス許可を設定するときは、次の情報を考慮してください。
特定のキーワードの値を取得するには、含めるか除外するドキュメント ライブラリに移動し、ブラウザーから URI をコピーします。 このメソッドは、クエリ内のキーワードで使用する値を取得する最も簡単な方法です。
| キーワード | 値の説明と例 |
|---|---|
| null 値 | null または空の場合は、コンテナー名に応じて、既定のドキュメント ライブラリまたはすべてのドキュメント ライブラリのインデックスを作成します。 例: "container" : { "name" : "defaultSiteLibrary", "query" : null } |
| サブサイトを含める |
trueに設定すると、インデクサーはルート サイトとすべてのサブサイトを走査します。
allSiteLibraries、allSiteLists、allSitePages、またはallSiteContentと組み合わせます。 2026-05-01-preview REST API でプレビューとして提供開始。 例: "container" : { "name" : "allSiteLibraries", "query" : "includeSubsites=true" } |
| サイトにライブラリを含める | 接続文字列内の指定したサイトにあるすべてのライブラリのコンテンツにインデックスを付けます。 値は、サイトまたはサブサイトの URI である必要があります。 例 1: "container" : { "name" : "useQuery", "query" : "includeLibrariesInSite=https://mycompany.sharepoint.com/mysite" } 例 2 (いくつかのサブサイトのみを含む): "container" : { "name" : "useQuery", "query" : "includeLibrariesInSite=https://mycompany.sharepoint.com/sites/TopSite/SubSite1;includeLibrariesInSite=https://mycompany.sharepoint.com/sites/TopSite/SubSite2" } |
| includeLibrary | このライブラリのすべてのコンテンツにインデックスを付けます。 この値は、ブラウザーからコピーできるライブラリへの完全修飾パスです。 例 1 (完全修飾パス): "container" : { "name" : "useQuery", "query" : "includeLibrary=https://mycompany.sharepoint.com/mysite/MyDocumentLibrary" } 例 2 (ブラウザーからコピーされた URI): "container" : { "name" : "useQuery", "query" : "includeLibrary=https://mycompany.sharepoint.com/teams/mysite/MyDocumentLibrary/Forms/AllItems.aspx" } |
| excludeLibrary | このライブラリのコンテンツにインデックスを付けないでください。 この値は、ブラウザーからコピーできるライブラリへの完全修飾パスです。 例 1 (完全修飾パス): "container" : { "name" : "useQuery", "query" : "includeLibrariesInSite=https://mysite.sharepoint.com/subsite1; excludeLibrary=https://mysite.sharepoint.com/subsite1/MyDocumentLibrary" } 例 2 (ブラウザーからコピーされた URI): "container" : { "name" : "useQuery", "query" : "includeLibrariesInSite=https://mycompany.sharepoint.com/teams/mysite; excludeLibrary=https://mycompany.sharepoint.com/teams/mysite/MyDocumentLibrary/Forms/AllItems.aspx" } |
| フォルダーを含める | 特定のフォルダーとそのサブフォルダーのコンテンツにインデックスを付けます。 値は、完全なSharePoint フォルダー URL である必要があります。 動作: すべてのサブフォルダーに再帰的に適用されます。 複数のフォルダーを指定するには、セミコロンでパラメーターを繰り返します。 フォルダー フィルターのスコープは、1 つのドキュメント ライブラリです。 ルートのみのパスはサポートされていません。 参照先のフォルダーの名前を変更する場合は、クエリを更新する必要があります。 例 1 (単一フォルダー): "container": { "name": "useQuery", "query": "includeFolder=[your-tenant-name].sharepoint.com/sites/hr/Shared Documents/Policies" }例 2 (複数のフォルダー): "container": { "name": "useQuery", "query": "includeFolder=[your-tenant-name].sharepoint.com/sites/hr/Shared Documents/Specs;includeFolder=[your-tenant-name].sharepoint.com/sites/hr/Shared Documents/Designs" } |
| excludeFolder | 特定のフォルダーとそのサブフォルダーのコンテンツのインデックスを作成しないでください。 値は、完全なSharePoint フォルダー URL である必要があります。 動作: すべてのサブフォルダーに再帰的に適用されます。 ファイルがインクルードルールと除外ルールの両方に一致する場合は、除外が優先され、ファイルはスキップされます。 フォルダー フィルターのスコープは、1 つのドキュメント ライブラリです。 例 1 (フォルダーを除外): "container": { "name": "useQuery", "query": "excludeFolder=[your-tenant-name].sharepoint.com/sites/hr/Shared Documents/Policies/Archive" }例 2 (include + exclude を組み合わせる): "container": { "name": "useQuery", "query": "includeFolder=[your-tenant-name].sharepoint.com/sites/hr/Shared Documents/Policies;excludeFolder=[your-tenant-name].sharepoint.com/sites/hr/Shared Documents/Policies/Drafts" } |
| additionalColumns | ドキュメント ライブラリにある列にインデックスを作成します。 この値は、インデックスを作成する列名のコンマ区切りのリストです。 二重バックスラッシュを使用して、列名内のセミコロンとコンマをエスケープします。 例 1 (additionalColumns=MyCustomColumn,MyCustomColumn2): "container" : { "name" : "useQuery", "query" : "includeLibrary=https://mycompany.sharepoint.com/mysite/MyDocumentLibrary;additionalColumns=MyCustomColumn,MyCustomColumn2" } 例 2 (ダブルバックスラッシュを使用したエスケープ文字): "container" : { "name" : "useQuery", "query" : "includeLibrary=https://mycompany.sharepoint.com/teams/mysite/MyDocumentLibrary/Forms/AllItems.aspx;additionalColumns=MyCustomColumnWith\\,,MyCustomColumnWith\\;" } |
エラーを処理する
Invalid AAD tenant メッセージ、不足しているMicrosoft Entraテナント ID、またはインデクサーの実行履歴に表示されるテナントの不一致については、「インデクサーの一般的なエラーと警告のトラブルシューティング」を参照してください。
既定では、Microsoft 365 インデクサーのSharePointは、サポートされていないコンテンツ タイプのドキュメント (画像など) が検出されるとすぐに停止します。 特定のコンテンツ タイプをスキップするには、 excludedFileNameExtensions パラメーターを使用します。 ただし、可能なすべてのコンテンツ タイプを事前に知らなくても、ドキュメントにインデックスを付ける必要がある場合があります。 インデクサーがサポートされていないコンテンツ タイプを検出したときにインデックス作成を続行するには、 failOnUnsupportedContentType 構成パラメーターを false に設定します。
PUT https://[service name].search.windows.net/indexers/[indexer name]?api-version=2026-08-01-preview
Content-Type: application/json
api-key: [admin key]
{
... other parts of indexer definition
"parameters" : { "configuration" : { "failOnUnsupportedContentType" : false } }
}
一部のドキュメントでは、Azure AI 検索がコンテンツ タイプを特定できないか、サポートされているコンテンツ タイプのドキュメントを処理できません。 このエラー モードを無視するには、 failOnUnprocessableDocument 構成パラメーターを false に設定します。
"parameters" : { "configuration" : { "failOnUnprocessableDocument" : false } }
SharePointソース ファイルでは、BLOB に似たインデクサーの共有ソース ファイル サイズと抽出文字の制限が使用されます。 既定では、サイズ超過のドキュメントはエラーとして扱われます。 ただし、 indexStorageMetadataOnlyForOversizedDocuments 構成パラメーターを true に設定した場合でも、特大ドキュメントのストレージ メタデータにインデックスを付けることができます。
"parameters" : { "configuration" : { "indexStorageMetadataOnlyForOversizedDocuments" : true } }
スキルセットを追加する場合は、各スキルの入力とダウンストリームサービスの制限を個別に確認します。 スキルは、SharePoint インデクサーが抽出するデータよりも少ないデータを受け付けることができます。
また、ドキュメントの解析中またはインデックスへのドキュメントの追加中に、処理の任意の時点でエラーが発生した場合にインデックス作成を続行することもできます。 特定の数のエラーを無視するには、 maxFailedItems および maxFailedItemsPerBatch 構成パラメーターを目的の値に設定します。 例えば:
{
... other parts of indexer definition
"parameters" : { "maxFailedItems" : 10, "maxFailedItemsPerBatch" : 10 }
}
関連コンテンツ
- YouTube ビデオ: Microsoft 365 の SharePoint インデクサー
- Azure AI 検索 におけるインデクサー
- Azure AI 検索 で使用される Content メタデータ プロパティ
- Azure Logic App コネクタを使用して、SharePoint コンテンツやその他のソースを Azure AI 検索 でインデックス化する
- Ingest SharePoint ACL 構成 (プレビュー)
- SharePoint とインデックスの間で ACL を同期します
- SharePoint グループのサポートを設定する
- Microsoft Purview の秘密度ラベル (プレビュー) を保存して尊重します