Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Poznámka
Azure AI Vyhledávač je k dispozici prostřednictvím portálu Azure, rozhraní REST API a Sady Azure SDK. Podporuje také Foundry IQ, spravovanou znalostní vrstvu, která transformuje podnikový obsah na opakovaně použitelné znalostní báze s podporou oprávnění pro agenty na portálu Microsoft Foundry.
Důležité
Na funkce, možnosti nebo vlastnosti označené jako (Preview) se nevztahuje smlouva o úrovni služeb, nejsou doporučené pro produkční úlohy a mohou se změnit nebo být omezeny dříve, než budou obecně k dispozici. Podmínky Azure AI Vyhledávač Preview platí pro všechny funkce ve verzi Preview, ať už jsou samostatné nebo součástí obecně dostupné funkce.
Přijímání metadat oprávnění ze SharePointu (Preview) využívá indexer ve službě Azure AI Vyhledávač k uchování metadat oprávnění, jako jsou seznamy řízení přístupu (ACL), spolu s dalším obsahem ze SharePointu v Microsoftu 365. Indexer ukládá oprávnění jako metadata pro každý indexovaný dokument. V době dotazu dostanou uživatelé jenom dokumenty, ke kterým mají oprávnění k přístupu.
Důležité
Když scénáře vyžadují úplný model oprávnění SharePointu, popisky citlivosti a předdefinované zabezpečení, použijte vzdálený zdroj znalostí SharePoint. Tento přístup volá SharePoint přímo prostřednictvím Copilot API pro získávání dat. Zásady správného řízení zůstávají plně v SharePoint a výsledky dotazů automaticky respektují všechna příslušná oprávnění a popisky.
Požadavky
Azure AI Vyhledávač na fakturovatelné úrovni (Basic nebo vyšší) v libovolné oblasti.
SharePoint v Microsoft 365 webech, knihovnách, složkách a souborech s nakonfigurovanými oprávněními.
Dokončete všechny kroky konfigurace v dokumentaci k indexeru SharePoint a uplatněte požadavky specifické pro Seznam řízení přístupu (ACL), jak je popsáno v tomto článku.
Nakonfigurujte Microsoft Entra oprávnění aplikace a přihlašovací údaje vhodné pro váš scénář. Viz scénář oprávnění podle seznamu ACL. Příjem ACL vyžaduje oprávnění aplikace. Delegovaná oprávnění se nepodporují. Informace o aplikaci a delegovaném rozhodnutí najdete v tématu Volba nastavení oprávnění.
REST API verze 2026-08-01-preview nebo odpovídající balíček sady SDK ve verzi Preview.
Omezení
Přírůstkové aktualizace seznamu ACL vyžadují rozhraní REST API verze 2026-05-01-Preview nebo novější. Ve starších verzích rozhraní API ve verzi Preview systém zaznamenává seznamy ACL pouze při prvním příjmu dat každé položky. Pozdější změny oprávnění vyžadují explicitní přeindexování. Postup migrace najdete v tématu Synchronizace oprávnění mezi indexovaným a zdrojovým obsahem.
Změny oprávnění nadřazeného oboru se při následných spuštěních indexeru automaticky nevybízejí. Možnosti aktualizace najdete v tématu Synchronizace oprávnění mezi indexovaným a zdrojovým obsahem.
Tuto funkci nepodporuje portál Azure.
V této verzi Preview nejsou podporované následující funkce:
SharePoint zásady správy informací použitelné pro přístup uživatelů. Systém tyto zásady během zpracování dotazu nevyhodnocuje, nepřijímá ani neuplatňuje.
Sdíletelné odkazy s vymezeným oborem "Kdokoli" nebo "Lidé ve vaší organizaci". Podporují se jenom odkazy omezené na konkrétní osoby.
Skupiny SharePointu (například skupiny Vlastníci, Členové a Návštěvníci) jsou podporovány od verze 2026-05-01-preview rozhraní REST API. Viz Konfigurace podpory skupin SharePointu. Ve starších verzích rozhraní API ve verzi Preview se podporují jenom skupiny SharePoint, které se překládají na skupiny Microsoft Entra.
Následující funkce indexeru nepodporují dědičnost oprávnění v indexovaných dokumentech pocházejících z SharePoint. Pokud některou z těchto funkcí použijete v sadě dovedností nebo indexeru, nebudou oprávnění na úrovni dokumentu zahrnuta do indexovaného obsahu.
Úložiště znalostí, včetně úložiště prostředků vyžadovaného pro poskytování obrázků (preview) v agentním vyhledávání. Proto se pro zdroje znalostí, které přebírají seznamy řízení přístupu (ACL) ze SharePointu, nepodporuje poskytování obrázků.
Podpora modelu oprávnění SharePoint
Tato verze Preview podporuje základní seznamy ACL pro dokumenty, položky seznamu a moderní stránky webu ASPX.
| Funkce SharePoint | Popis | Podporováno | Poznámky |
|---|---|---|---|
| Dědičnost webu, knihovny, seznamu a stránek | Web → knihovna/seznam → složka → soubor/položka/stránka. | ✔️ | Vyhodnoceno při příjmu dat; efektivní seznamy ACL vypočítané pro každou položku. |
| Jedinečná oprávnění ACL pro složku, soubor, položku seznamu a stránku | Přístup na úrovni položky | ✔️ | Zahrnuté při prvním příjmu dat a při následných spuštěních, které detekují změny seznamu ACL pro položky s jedinečnými oprávněními. |
| položky seznamu SharePoint | Oprávnění k položkám seznamu (allSiteLists a allSiteContent kontejnerům). |
✔️ | Preview, počínaje verzí REST API 2026-05-01-preview. |
| Stránky webu ASPX | Oprávnění na moderních stránkách webu (allSitePages a allSiteContent kontejnerech). |
✔️ | Preview, počínaje verzí REST API 2026-05-01-preview. |
| skupiny Microsoft Entra (Microsoft 365 a zabezpečení) | Přístup založený na skupinách | ✔️ | ID skupin jsou zahrnuta, pokud je lze převést na identifikátor Microsoft Entra (ID). |
| SharePoint skupiny webů | Vlastníci/Členové/Návštěvníci a vlastní skupiny webu. | ✔️ | Preview, počínaje verzí REST API 2026-05-01-preview. Vyžaduje konfiguraci skupin SharePoint. ID skupin se generují s předponou spg: . |
| Sdílené odkazy pro kohokoli nebo pro lidi ve vaší organizaci | Přístup pro celou organizaci nebo veřejný přístup. | ❌ | Ve verzi Preview se nepodporuje. |
| Externí uživatelé nebo hosté | Přístup pro hosty. | ❌ | Nepodporuje se. |
| Zásady správy informací | Zásady pro definování konkrétních požadavků na oprávnění | ❌ | Ve verzi Preview se nepodporuje. |
| Popisky citlivosti Purview | Zabezpečení na úrovni dokumentů pro ochranu osobních údajů, kategorizaci, oprávnění a šifrování | ❌ | Podporováno prostřednictvím samostatné funkce: zachování a ctění štítků citlivosti. |
Podporované vztahy mezi skupinami
Tranzitivita skupin Microsoft Entra platí v rámci Microsoft Entra. Nerozbaluje Microsoft Entra skupiny, které jsou členy SharePoint skupin.
| Vztah oprávnění | Podporováno | Guidance |
|---|---|---|
| Uživatel nebo skupina Microsoft Entra přiřazená přímo k položce SharePoint | Ano | Indexer ukládá objektové ID uživatele nebo skupiny Microsoft Entra do metadat oprávnění položky. |
| Uživatel se dostane do přiřazené skupiny Microsoft Entra prostřednictvím tranzitivního vnoření skupin Microsoft Entra | Ano | Vyhodnocení Microsoft Graph při dotazu rozšiřuje tranzitivní členství uživatele ve skupinách Microsoft Entra. |
| Uživatel přiřazený přímo ke skupině webu SharePoint, která má přístup k položce | Ano | Konfigurace podpory SharePoint skupin |
| Skupina Microsoft Entra vnořená do skupiny SharePointu | Ne | Překlad členství skupiny SharePoint nerozvine vnořenou skupinu Microsoft Entra. Výsledky, které závisí na této relaci, se odfiltrují. Přidejte uživatele přímo do skupina služby SharePoint nebo udělte oprávnění prostřednictvím podporovaného přiřazení skupiny Microsoft Entra. |
| Další smíšené pokyny pro vnořování v SharePointu a Microsoft Entra | Neurčeno | Nepředpokládejte podporu na základě tranzitivních vztahů v Microsoft Entra. Toto omezení verze Preview se vztahuje na skupiny Microsoft Entra vnořené do skupin SharePoint. |
Jak se vyhodnocují hierarchická oprávnění
SharePoint oprávnění dědí hierarchii webu → knihovny → složky → souboru, pokud není přerušena dědičnost.
Během příjmu dat indexer shromažďuje identifikátory uživatelů a skupin na každé úrovni a vypočítá efektivní seznam ACL pro každý soubor.
Oprávnění podle scénáře ACL
Oprávnění aplikace Microsoft Entra a typ přihlašovacích údajů vyžadovaný pro příjem dat seznamu ACL závisí na tom, které typy položek a typy skupin indexujete. V registraci aplikace se všechna oprávnění přidají v rámci oprávnění> rozhraní APIPřidat oprávnění a federované přihlašovací údaje se přidají do certifikátů a tajných>kódů federovaných přihlašovacích údajů. Podrobné pokyny a snímky obrazovky najdete v tématu Step 3: Vytvoření registrace Microsoft Entra aplikace a Konfigurování registrované aplikace se spravovanou identitou.
| Scenario | Oprávnění rozhraní API pro přidání | Credential |
|---|---|---|
| Seznamy ACL pro soubory v knihovně dokumentů, když je přístup udělen pouze prostřednictvím uživatelů Microsoft Entra a standardních skupin (skupin zabezpečení Microsoft Entra, skupin Microsoft 365, skupin zabezpečení s podporou e-mailu) |
Microsoft Graph: Files.Read.All, Sites.FullControl.All (nebo Sites.Selected pro vymezený přístup) |
Tajný klíč klienta nebo federované přihlašovací údaje |
| ACL u souborů v knihovně dokumentů, pokud musí být také respektovány skupiny webu SharePoint (Owners, Members, Visitors nebo vlastní skupiny webu) |
Microsoft Graph: Files.Read.All, Sites.FullControl.All (nebo Sites.Selected)SharePoint: Sites.FullControl.All (nebo Sites.Selected) |
Federované pověření (povinné) |
| Seznamy ACL u položek seznamu SharePoint |
Microsoft Graph: Files.Read.All, Sites.FullControl.All (nebo Sites.Selected), User.Read.AllSharePoint: Sites.FullControl.All (nebo Sites.Selected) |
Federované pověření (povinné) |
| Obsah a seznamy ACL na stránkách webu ASPX |
Microsoft Graph: Sites.FullControl.All (nebo Sites.Selected), User.Read.All (zachovat Files.Read.All z výše uvedených řádků, pokud také indexujete knihovny dokumentů nebo seznamy)SharePoint: Sites.FullControl.All (nebo Sites.Selected) |
Federované pověření (povinné) |
Vyhodnocování skupin webů služby SharePoint při zpracování dotazu prostřednictvím sharePointConnectorAppRegistration |
Přidání SharePoint: User.Read.All do stejné registrace aplikace používané indexerem |
Federované pověření (povinné) |
Poznámka
Když přidáte oprávnění, zvolíte mezi dvěma povrchy rozhraní API: Microsoft Graph a SharePoint. Obě zpřístupňují podobně pojmenovaná oprávnění. Například
Sites.FullControl.Allexistuje pod oběma. Přidejte jednotlivá oprávnění na plochu rozhraní API uvedenou v tabulce.Použijte federované pověření vždy, když scénář přidává oprávnění rozhraní SharePoint API. Tajné klíče klienta fungují pouze pro řádek pro knihovnu dokumentů určený jen pro Microsoft Graph.
User.Read.Allje vyžadován pro položky seznamu a stránky webu ASPX, protože indexer tato oprávnění čte prostřednictvím rozhraní SHAREPOINT REST API, který vrací jenom e-mail uživatele. Indexer pak volá Microsoft Graph, aby každou e-mailovou adresu přeložil na odpovídající ID objektu Microsoft Entra, přičemž toto vyhledání vyžadujeUser.Read.All.Při použití
Sites.Selectedudělte aplikaci explicitní přístup ke každému cílovému SharePoint webu před indexováním.
Federované přihlašovací údaje ověřují aplikaci pomocí důvěryhodné spravované identity místo tajného klíče klienta. Stejné federované přihlašovací údaje pokrývají příjem dat (indexer) i vyhodnocení doby dotazování SharePoint skupin webů. Postup nastavení najdete v tématu Konfigurace registrované aplikace se spravovanou identitou.
Než povolíte načítání seznamů ACL
Pro zaregistrovanou aplikaci Microsoft Entra proveďte tyto kroky:
- V předchozí tabulce určete odpovídající scénář podle toho, co plánujete indexovat (soubory v knihovně dokumentů, položky seznamu, stránky webu ASPX) a zda je nutné respektovat skupiny webu služby SharePoint.
- Otevřete registraci aplikace v Centrum pro správu Microsoft Entra a přejděte na oprávnění API>Přidat oprávnění.
- Přidejte oprávnění Microsoft Graph uvedená pro váš scénář. Udělení souhlasu správce
- Pokud váš scénář také vyžaduje oprávnění SharePoint, vyberte Přidat oprávnění znovu, zvolte rozhraní API SharePoint a přidejte
Sites.FullControl.All(neboSites.Selected). Udělení souhlasu správce - Konfigurace přihlašovacích údajů:
- Pro scénáře pouze pro Microsoft Graph můžete použít buď tajný klíč klienta (Certificates & secrets>Tajné kódy klienta) nebo federovaný přihlašovací údaj.
- Pro jakýkoli scénář, který zahrnuje oprávnění SharePoint, přidejte federované přihlašovací údaje do
Certificates & secrets Federated credentials . Viz Konfigurace registrované aplikace se spravovanou identitou.
- Udělte aplikaci přístup k cílovým webům SharePoint (zvlášť důležité, pokud pro přístup s vymezeným oborem používáte
Sites.Selected), aby mohl číst obsah a oprávnění, která chcete indexovat.
Vyhledání správných identifikátorů Microsoft Entra
Každý identifikátor se na portálu Azure zobrazuje na jiném místě a odpovídá konkrétnímu konfiguračnímu poli. Tuto část použijte jako referenční materiál při konfiguraci ingestace SharePoint ACL s federovaným přihlašovacím údajem. Na tyto identifikátory se odkazuje v Konfiguraci podpory skupin SharePointu a v připojovacím řetězci zdroje dat.
| Identifikátor | Umístění portálu | Používá se tam, kde | Poznámky |
|---|---|---|---|
| ID aplikace Ingestion app (klienta) |
Registrace aplikacíPřehled><your-app>> |
ApplicationId v připojovacím řetězci zdroje dat; applicationId v sharePointConnectorAppRegistration |
Toto ID je správné pro většinu konfiguračních polí. Říká se také "ID klienta". |
| ID objektu aplikace |
Registrace aplikací><your-app>>Přehled (pod položkou ID aplikace (klienta)) |
Nepoužívá se v konfiguraci Azure AI Vyhledávač | Nezaměňujte ho s ID aplikace (klienta). Zobrazí se ve stejném okně přímo pod ID klienta. |
| ID instančního objektu |
Microsoft Entra ID>Podnikové aplikace>><your-app>> |
Nepoužívá se v konfiguraci Azure AI Vyhledávač | Toto je reprezentace instančního objektu aplikace. Je to jiný identifikátor GUID než ID objektu registrace aplikace. |
| ID objektu zabezpečení spravované identity | Prostředek spravované identity > nebo okno Identita vyhledávací služby | Nepoužívá se přímo v konfiguraci zdroje dat nebo indexu Azure AI Vyhledávač | Interně se používá při nastavování přihlašovacích údajů federované identity při registraci aplikace. Přihlašovací údaj, který vytvoříte, důvěřuje této identitě. |
| ID federovaného objektu přihlašovacích údajů |
Registrace aplikací><your-app>>Spravovat>Certifikáty a tajné kódy>Federované přihlašovací údaje><credential-name> |
Nepoužívá se v konfiguraci Azure AI Vyhledávač | Nepoužívejte identifikátor GUID položky přihlašovacích údajů federované identity pro federatedCredentialId. |
| ID federované aplikace přihlašovacích údajů | Přiřazené systémem: Microsoft Entra ID>Podnikové aplikace><search-service>>; Přiřazené uživatelem: <managed-identity-resource>>Vlastnosti |
FederatedCredentialApplicationId v připojovacím řetězci zdroje dat; federatedCredentialId v sharePointConnectorAppRegistration |
Viz ID aplikace federovaných přihlašovacích údajů pro vyhledávání spravované identity. |
ID federované aplikace přihlašovacích údajů
Pro FederatedCredentialApplicationId v připojovacím řetězci zdroje dat a federatedCredentialId v definici indexu použijte vlastní ID aplikace (klienta) spravované identity, nikoli ID ingestní aplikace.
Spravovaná identita přiřazená systémem:
- Přejděte do služby Azure AI Vyhledávač.
- Vyberte Zabezpečení a síťová>identita.
- Na kartě Přiřazeno systémem si poznamenejte ID objektu (instančního objektu).
- Přejděte do Microsoft Entra ID>Spravovat>Podnikové aplikace.
- Vyhledejte název vyhledávací služby nebo vložte ID objektu (instančního objektu) do vyhledávacího pole.
- Vyberte výsledek a otevřete vlastnosti. Zkopírujte ZDE uvedené ID aplikace , což je hodnota ve
FederatedCredentialApplicationIdzdroji dat afederatedCredentialIdv indexu.
Spravovaná identita přiřazená uživatelem:
- Přejděte k prostředku spravované identity přiřazené uživatelem.
- Vyberte Nastavení>Vlastnosti.
- Zkopírujte ID klienta, což je hodnota ve
FederatedCredentialApplicationIdzdroji dat afederatedCredentialIdv indexu.
Konfigurace vyhledávací služby pro příjem ACL a vynucení doby dotazu
Tyto kroky nakonfigurují zpracování seznamu ACL pro vyhledávací službu a povolí respektování seznamu ACL během dotazování.
Vyberte, kde se mají vyplnit pole ACL
To, kam namapujete pole metadat ACL, závisí na tom, zda indexer zapisuje jeden dokument pro každou zdrojovou položku, nebo více částí pro každou zdrojovou položku.
| Scenario | Naplnění polí seznamu ACL prostřednictvím | Proč |
|---|---|---|
| Žádná sada dovedností nebo sada dovedností bez segmentace; jeden vyhledávací dokument pro každou zdrojovou položku | mapování polí Indexer (pouze metadata_user_ids → UserIds, metadata_group_ids → GroupIds a pro skupiny SharePoint metadata_spo_site_url → SharePointSiteUrl). |
Indexer zapíše do cílového indexu jeden dokument a mapování polí přenáší zdrojová metadata do polí indexu. |
Sada dovedností s dělením na bloky (například dovednost Rozdělení textu pro integrovanou vektorizaci), jeden index s nadřazenými poli opakovanými v každém bloku (projectionMode: skipIndexingParentDocuments) |
Projekce indexu v sadě dovedností (mappings z /document/metadata_user_ids, /document/metadata_group_ids a pro skupiny SharePointu /document/metadata_spo_site_url). |
Nadřazený dokument není indexovaný; jsou pouze bloky dat. Hodnoty ACL musí být promítnuty do každé části, aby se filtry při dotazu použily na část vrácenou ve výsledcích. Mapování polí indexeru pro tato pole jsou v tomto režimu vynechána. |
| Sada dovedností s dělením na bloky, vzorec se dvěma indexy (nadřazený index + index dceřiného bloku) | Obojí: mapování polí indexeru vyplní pole ACL na nadřazeném indexu, projekce indexu vyplní pole ACL na podřízeném indexu bloků. | Oba indexy se dají dotazovat a každá potřebuje metadata, na které se filtrují. |
Ve všech scénářích s dělením na bloky musí každý blok obsahovat pole ACL. Filtry přístupových oprávnění se uplatňují na každý dokument, takže blok, kterému chybějí pole ACL, nelze vrátit správnému volajícímu.
1. Konfigurace zdroje dat
Tato část rozšiřuje základní postup Krok 4: Vytvoření zdroje dat. Nastavte indexerPermissionOptions v definici zdroje dat , aby bylo možné indexovat userIds a groupIds z dokumentů SharePoint.
{
"name": "my-sharepoint-acl-datasource",
"type": "sharepoint",
"indexerPermissionOptions": ["userIds", "groupIds"],
"credentials": {
"connectionString": "<connection-string>;"
},
"container": {
"name": "<library-name>",
"query": "<optional-folder-path>"
}
}
2. Přidání polí oprávnění do definice indexu
Přidejte do definice schématu indexu pole pro ukládání seznamů ACL a podporu filtrování času dotazu.
{
"fields": [
{ "name": "UserIds", "type": "Collection(Edm.String)", "permissionFilter": "userIds", "filterable": true, "retrievable": false },
{ "name": "GroupIds", "type": "Collection(Edm.String)", "permissionFilter": "groupIds", "filterable": true, "retrievable": false }
],
"permissionFilterOption": "enabled"
}
Nastavte atribut retrievable na true pouze během vývoje pro ověření hodnot. Můžete změnit načítání z true na false bez požadavku na opětovné sestavení indexu.
3. Konfigurace projekcí indexu v sadě dovedností (pokud je k dispozici)
Při povolení bloků dat není nadřazený dokument zapsán do indexu, pokud projectionMode je skipIndexingParentDocuments. Přenášejte metadata ACL do každého bloku prostřednictvím indexProjections.selectors[].mappings.
Pokud váš indexer používá sadu dovedností s blokem dat, jako je například dovednost Rozdělení textu při povolování integrované vektorizace, nezapomeňte vlastnosti seznamu ACL namapovat na každý blok dat pomocí projekce indexu. Řádky // v následujícím příkladu jsou ilustrativní anotace a nejsou platné JSON. Před odesláním žádosti je odeberte.
PUT https://{service}.search.windows.net/skillsets/{skillset}?api-version=2026-08-01-preview
{
"name": "my-skillset",
"skills": [
{
"@odata.type": "#Microsoft.Skills.Text.SplitSkill",
"name": "#split",
"context": "/document",
"inputs": [{ "name": "text", "source": "/document/content" }],
"outputs": [{ "name": "textItems", "targetName": "chunks" }]
}
// ... (other skills such as embeddings, entity recognition, etc.)
],
"indexProjections": {
"selectors": [
{
"targetIndexName": "chunks-index",
"parentKeyFieldName": "parentId", // must exist in target index
"sourceContext": "/document/chunks/*", // match your split output path
"mappings": [
{ "name": "chunkId", "source": "/document/chunks/*/id" }, // if you create an id per chunk
{ "name": "content", "source": "/document/chunks/*/text" }, // chunk text
{ "name": "parentId", "source": "/document/id" }, // parent doc id
{ "name": "UserIds", "source": "/document/metadata_user_ids" },
{ "name": "GroupIds", "source": "/document/metadata_group_ids" },
{ "name": "SharePointSiteUrl", "source": "/document/metadata_spo_site_url" } // include when the index has sharePointConnectorAppRegistration (SharePoint groups support)
]
}
],
"parameters": {
"projectionMode": "skipIndexingParentDocuments"
}
}
}
Mapování UserIds, GroupIds a SharePointSiteUrl načítá metadata na úrovni zdroje generované indexerem SharePoint (/document/metadata_*) a zapisují hodnoty do jednotlivých bloků dat.
4. Nakonfigurujte mapování polí indexeru pro řízení přístupu (ACL)
Použijte mapování polí indexeru, když indexer zapisuje jeden dokument pro každou zdrojovou položku (bez dělení na bloky) nebo když udržujete samostatný rodičovský index vedle indexu bloků. Pokud vaše sada dovedností rozdělí dokumenty do jednoho cílového indexu pomocí projectionMode: skipIndexingParentDocuments, mapování polí zde zobrazená jsou nahrazena mapováními indexProjections.mappings z předchozího kroku pro index fragmentů.
Kromě požadované konfigurace indexeru namapujte nezpracovaná pole ACL metadat ze SharePointu na vaše pole indexu.
{
"fieldMappings": [
{ "sourceFieldName": "metadata_user_ids", "targetFieldName": "UserIds" },
{ "sourceFieldName": "metadata_group_ids", "targetFieldName": "GroupIds" }
]
}
5. Spusťte indexer.
Metadata ACL se načítají při běhu indexeru. Po vytvoření nebo aktualizaci indexeru (viz krok 6: Vytvoření indexeru) aktivujte spuštění, aby indexer ingestoval seznamy ACL společně s obsahem.
POST https://[service name].search.windows.net/indexers/[indexer-name]/run?api-version=2026-08-01-preview
api-key: [admin key]
Pokud jste u existujícího indexeru, který už zaindexoval položky, povolili ingestaci ACL, zavolejte /resync s options: ["permissions"], aby se pro tyto položky doplnily seznamy ACL, nebo znovu extrahujte konkrétní položky pomocí /resetdocs.
6. Ověření příjmu seznamu ACL
Chcete-li ověřit, že hodnoty ACL byly správně vyplněny:
- Dočasně nastavte
retrievablenatrueuUserIdsaGroupIdsve vaší definici indexu. Změnaretrievablenevyžaduje opětovné sestavení indexu. - Spusťte dotaz se zvýšenými oprávněními pro čtení, který vybere
UserIdsaGroupIds, a ověřte, že kolekce nejsou prázdné. U segmentovaných scénářů ověřte, že každý blok obsahuje obě pole. - Vrátit
retrievablezpět nafalsepo ověření.
Konfigurace podpory skupin SharePoint
Počínaje verzí REST API 2026-05-01-preview může indexer SharePointu indexovat členství ve skupinách webu SharePoint (vlastníci, členové, návštěvníci a vlastní skupiny webu). Tyto skupiny zohledňuje při dotazování. ID skupin SharePointu se v poli metadata_group_ids uvádějí s předponou spg:, aby se odlišila od ID objektů skupin Microsoft Entra.
Tento návod je samostatný: proveďte kroky pro konfiguraci indexu, mapování polí indexeru a dotazování indexu pomocí vynucení skupiny webů SharePoint.
Následující komponenty spolupracují a umožňují SharePoint řešení skupin webů:
| Component | Kde | Purpose |
|---|---|---|
sharePointConnectorAppRegistration (s applicationId, tenantId, federatedCredentialId) |
Definice indexu | Poskytuje konfiguraci ověřování potřebnou k tomu, aby služba Search mohla volat rozhraní SharePoint REST API jménem volajícího uživatele a při zpracování dotazu zjišťovat členství ve skupinách webu. |
SharePointSiteUrl pole (s sharepointSiteUrl: true) |
Schéma indexu + mapování polí indexeru z metadata_spo_site_url |
Identifikuje, do kterého SharePoint webu dokument patří, takže rozlišení skupiny SP je správně vymezeno. |
spg:hodnoty s předponou - v GroupIds |
Metadata oprávnění k dokumentu | Odlište ID skupin webu SharePointu od ID objektů skupin Microsoft Entra. |
1. Požadavky
- SharePoint indexer už je nakonfigurovaný pro příjem ACL. Viz Konfigurace mapování polí indexeru pro ACL.
- Registrace aplikace Microsoft Entra s přihlašovacími údaji federované identity. Viz Konfigurace registrované aplikace se spravovanou identitou.
- REST API
2026-05-01-previewnebo novější.
Poznámka
FederatedCredentialApplicationId v připojovacím řetězci zdroje dat a federatedCredentialId v sharePointConnectorAppRegistration použijte ID aplikace spravované identity. Vlastnost applicationId v sharePointConnectorAppRegistration používá klientské ID ingestní aplikace. Správné hodnoty najdete v tématu Vyhledání správných identifikátorů Microsoft Entra.
2. Konfigurace indexu
Přidejte konfiguraci sharePointConnectorAppRegistration a pole SharePointSiteUrl vedle polí filtru oprávnění UserIds a GroupIds, aby byla úplná struktura indexu na jednom místě. Zachovat permissionFilterOption: "enabled".
PUT https://{service}.search.windows.net/indexes/{index}?api-version=2026-08-01-preview
{
"name": "my-sharepoint-acl-index",
"sharePointConnectorAppRegistration": {
"applicationId": "<ingestion-app-client-id>",
"federatedCredentialId": "<managed-identity-application-id>",
"tenantId": "<sharepoint-tenant-id>"
},
"fields": [
{ "name": "UserIds", "type": "Collection(Edm.String)", "permissionFilter": "userIds", "filterable": true, "retrievable": false },
{ "name": "GroupIds", "type": "Collection(Edm.String)", "permissionFilter": "groupIds", "filterable": true, "retrievable": false },
{ "name": "SharePointSiteUrl", "type": "Edm.String", "sharepointSiteUrl": true, "filterable": false, "retrievable": false }
],
"permissionFilterOption": "enabled"
}
3. Konfigurace mapování polí indexeru
Namapujte pole metadat SharePoint na pole indexu v jednom kombinovaném bloku mapování. První dvě mapování jsou stejná jako pro standardní příjem seznamů ACL; třetí mapování aktivuje SharePoint řešení skupin.
{
"fieldMappings": [
{ "sourceFieldName": "metadata_user_ids", "targetFieldName": "UserIds" },
{ "sourceFieldName": "metadata_group_ids", "targetFieldName": "GroupIds" },
{ "sourceFieldName": "metadata_spo_site_url", "targetFieldName": "SharePointSiteUrl" }
]
}
Pokud vaše sada dovedností rozděluje dokumenty na bloky (například pomocí dovednosti Text Split pro integrovanou vektorizaci), promítejte místo toho SharePointSiteUrl do každého bloku pomocí indexProjections.mappings. Viz Výběr umístění pro vyplnění polí ACL.
4. Dotazování indexu
Nevyžaduje se žádná změna na straně klienta. Stejný token x-ms-query-source-authorization aktivuje vynucení skupiny webů Microsoft Entra i SharePoint. Vyhledávací služba vyhodnocuje členství ve skupinách SharePointu na straně serveru pomocí sharePointConnectorAppRegistration v indexu.
Strukturu požadavku najdete v obecném příkladu dotazu a v příkladu specifickém pro SharePoint s vynucením skupiny webů SharePoint.
5. Ověření
Chcete-li ověřit, že se ID skupin SharePointu dostala do indexu, spusťte dotaz se zvýšenými oprávněními ke čtení, ve kterém vyberete GroupIds, a v odpovědi hledejte hodnoty s předponou spg:.
Synchronizace oprávnění mezi indexovaným a zdrojovým obsahem
Počínaje rozhraním REST API verze 2026-05-01-Preview se zjistí a aktualizují změny seznamu ACL pro položky s jedinečnými oprávněními při každém úspěšném spuštění indexeru. Indexer používá tokeny změn SharePointu k inkrementálnímu zachycování přidání a odebrání přiřazení rolí, stejným způsobem, jakým zachycuje změny obsahu.
Některé scénáře stále vyžadují explicitní aktualizaci:
| Změnit obor | Automaticky zjištěno | Doporučená akce |
|---|---|---|
| Oprávnění ke konkrétní položce s jedinečnými oprávněními (soubor, položka seznamu nebo stránka) | Ano | Nevyžaduje se žádná akce. Změna se projeví při dalším úspěšném spuštění indexačního procesu. |
| Změna obsahu u konkrétní položky (která také znovu vyhodnotí efektivní seznamy ACL pro danou položku) | Ano | Nevyžaduje se žádná akce. |
| Změna oprávnění v nadřazeném rozsahu (webu, knihovny, seznamu nebo složky), kterou dědí podřízené položky | Ne | Zavolejte /resync s parametrem options: ["permissions"], aby se aktualizovaly seznamy ACL v celém zdroji dat, nebo zavolejte /resetdocs s klíči dotčených dokumentů, aby se aktualizoval obsah i seznamy ACL. |
| Příjem ACL povolený u existujícího indexeru | Ne | Zavolejte /resync s options: ["permissions"], aby se zpětně doplnily seznamy ACL pro dříve indexované položky. |
Resetování konkrétních dokumentů
Konkrétní dokumenty můžete resetovat, aby se obsah a ACL znovu plně ingestovaly.
POST https://{service}.search.windows.net/indexers/{indexer}/resetdocs?api-version=2026-08-01-preview
{
"documentKeys": ["doc123", "doc456"]
}
Resynchronizace seznamů ACL v celém zdroji dat
Po počátečním příjmu dat můžete obsah seznamu ACL úplné sady dat znovu synchronizovat . K úplnému úspěchu vyžaduje tato operace spuštění indexeru po dokončení.
POST https://{service}.search.windows.net/indexers/{indexer}/resync?api-version=2026-08-01-preview
{
"options": ["permissions"]
}
Důležité
Pokud změníte oprávnění SharePoint bez aktivace mechanismu aktualizace, index obsluhuje zastaralá data seznamu ACL pro dříve ingestované soubory.
Po indexování vašich dat a seznamů řízení přístupu můžete provádět dotazy na index.
Řešení problémů
| Symptom | Příčina a řešení |
|---|---|
UserIds nebo GroupIds jsou prázdné v indexovaných dokumentech |
Pokud vaše dovednostní sada používá projectionMode: skipIndexingParentDocuments, mapování polí indexeru pro pole ACL se obejde. Pole ACL místo toho nastavte pro každý blok pomocí indexProjections.mappings. |
SharePoint id skupiny webů chybí nebo hodnoty GroupIds nemají předponu spg: |
Ověřte, že index má konfiguraci sharePointConnectorAppRegistration, že pole SharePointSiteUrl existuje s sharepointSiteUrl: true a že mapování metadata_spo_site_url je přítomné buď v mapování polí indexeru, nebo v projekcích indexu. |
SharePointSiteUrl je po indexování prázdná nebo null, i když se seznamy ACL jinak správně naplňují |
Indexer vypisuje tato metadata pod metadata_spo_site_url, nikoli pod metadata_sharepoint_site_url. Ověřte, že mapování polí indexeru používá "sourceFieldName": "metadata_spo_site_url". Pokud vaše dovednostní sada používá projekce indexu pro dokumenty rozdělené na bloky, ověřte, že zdrojem mapování projekce je /document/metadata_spo_site_url. |
| Indexer vrátí hodnotu 401 nebo 403. | Udělte správci souhlas s oprávněními rozhraní API Microsoft Graph i SharePoint pro váš scénář. Pokud to scénář vyžaduje, použijte federované přihlašovací údaje (ne tajný klíč klienta). Viz scénář oprávnění podle seznamu ACL. |
| Oprávnění jsou po změně seznamu ACL webu, knihovny, seznamu nebo složky zastaralá. | Zavolejte /resync pomocí options: ["permissions"]. Kontext najdete v tématu Synchronizovat oprávnění mezi indexovaným a zdrojovým obsahem . |
federatedCredentialId je odmítnut při konfiguraci sharePointConnectorAppRegistration |
Použijte ID aplikace spravované identity, ne ID objektu přihlašovacího údaje federované identity ani ID objektu zabezpečení spravované identity. Viz ID federované aplikace přihlašovacích údajů. |
Indexátor vrací 401 Unauthorized a FederatedCredentialApplicationId je nastaven. |
Ověřte, že jste použili ID aplikace spravované identity (nachází se v podnikových aplikacích), nikoli IDApplicationId aplikace pro příjem dat (klienta) ani žádné ID objektu. Pro spravovanou identitu přiřazenou uživatelem použijte ID klienta ze stránky Vlastnosti prostředku spravované identity. Viz Vyhledání správných identifikátorů Microsoft Entra. |
Informace o chybějících, neočekávaných nebo neúspěšných výsledcích dotazu po indexování metadat seznamu ACL najdete v tématu Řešení potíží s filtrováním oprávnění SharePoint.