Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Nota
O Pesquisa de IA do Azure está disponível através do portal Azure, APIs REST e SDKs do Azure. Também sustenta o Foundry IQ, a camada de conhecimento gerida que transforma conteúdos empresariais em bases de conhecimento reutilizáveis e conscientes de permissões para agentes no portal Microsoft Foundry.
Importante
Funcionalidades, capacidades ou propriedades assinaladas (pré-visualização) não são abrangidas por um acordo de nível de serviço, não são recomendadas para cargas de trabalho em produção e podem mudar ou ser limitadas antes de se tornarem geralmente disponíveis. Os termos de pré-visualização do Pesquisa de IA do Azure aplicam-se a todas as funcionalidades de pré-visualização, sejam independentes ou parte de uma funcionalidade geralmente disponível.
A ingestão de metadados de permissões do SharePoint (pré-visualização) utiliza um indexador Pesquisa de IA do Azure para preservar metadados de permissões, como listas de controlo de acesso (ACLs), juntamente com outro conteúdo do SharePoint no Microsoft 365. O indexador armazena as permissões como metadados em cada documento indexado. No momento da consulta, os utilizadores recebem apenas documentos a que têm permissão para aceder.
Diagrama mostrando uma arquitetura de solução RAG com segurança reduzida onde um indexador do SharePoint ingere documentos e metadados de permissões ACL de um site SharePoint, armazenando-os numa Pesquisa de IA do Azure index, e um orquestrador RAG filtra os resultados das pesquisas para que cada utilizador possa recuperar apenas os documentos que está autorizado a aceder.
Importante
Para cenários que requerem o modelo completo de permissões do SharePoint, rótulos de sensibilidade e ajustes de segurança prontos a usar, use uma fonte de conhecimento do SharePoint remota. Esta abordagem chama o SharePoint diretamente através da API de recuperação do Copilot. A governação mantém-se totalmente no SharePoint, e os resultados das consultas respeitam automaticamente todas as permissões e rótulos aplicáveis.
Pré-requisitos
Pesquisa de IA do Azure num nível faturável (Básico ou superior) em todas as regiões.
SharePoint em sites, bibliotecas, pastas e ficheiros do Microsoft 365 com permissões configuradas.
Complete todos os passos de configuração na documentação do indexador SharePoint, aplicando os requisitos específicos da ACL descritos neste artigo.
Configure permissões de aplicação Microsoft Entra e uma credencial adequada ao seu cenário. Veja o cenário de permissões por ACL. A ingestão de ACL requer permissões de aplicação. Permissões delegadas não são suportadas. Para decidir entre permissões de aplicação e permissões delegadas, consulte Escolha a configuração das suas permissões.
versão da API REST 2026-08-01-preview ou um pacote SDK de pré-visualização equivalente.
Limitações
As atualizações incrementais de ACL requerem a API REST de pré-visualização 2026-05-01 ou posterior. Nas versões anteriores da API de pré-visualização, o sistema captura ACLs apenas na primeira ingestão de cada item. Alterações posteriores de permissões requerem reindexação explícita. Para os passos de migração, veja Sincronizar permissões entre conteúdo indexado e de origem.
As alterações de permissões do âmbito pai não são detetadas automaticamente em execuções subsequentes do indexador. Para as opções de atualização, consulte Sincronizar permissões entre conteúdo indexado e fonte.
O portal do Azure não suporta esta funcionalidade.
Os seguintes recursos não são suportados nesta visualização:
SharePoint Políticas de Gestão da Informação aplicáveis ao acesso dos utilizadores. O sistema não avalia, processa nem aplica estas políticas durante a consulta.
Links partilháveis com escopo para "Qualquer um" ou "Pessoas na sua organização." Apenas são suportados links com escopo para "Pessoas específicas".
grupos do SharePoint (como os grupos Proprietários, Membros e Visitantes) são suportados a partir da API REST 2026-05-01-preview. Veja Configurar o suporte para grupos do SharePoint. Nas versões de pré-visualização anteriores da API, apenas são suportados os grupos do SharePoint que correspondem a grupos do Microsoft Entra.
As seguintes funcionalidades do indexador não suportam herança de permissões em documentos indexados originados no SharePoint. Se usar alguma destas funcionalidades num conjunto de competências ou indexador, as permissões ao nível do documento não estão incluídas no conteúdo indexado.
Repositório de conhecimento, incluindo o armazenamento de ativos necessário para a disponibilização de imagens (pré-visualização) na recuperação agentiva. Por isso, a disponibilização de imagens não é suportada para fontes de conhecimento que importam ACLs do SharePoint.
Suporte ao modelo de permissões do SharePoint
Esta versão de pré-visualização suporta ACLs básicas para documentos, itens de lista e páginas modernas de site ASPX.
| Funcionalidade SharePoint | Descrição | Apoiado | Notas |
|---|---|---|---|
| Herança de site, biblioteca, lista e página | Site → biblioteca/lista → pasta → ficheiro/item/página. | ✔️ | Avaliado durante a ingestão; as ACLs efetivas são calculadas por item. |
| ACLs únicas para pastas, ficheiros, itens de lista e página | Acesso ao nível do item. | ✔️ | Incluído quando presente na ingestão inicial e em execuções posteriores que detetam alterações de ACL para itens com permissões únicas. |
| Itens da lista do SharePoint | Permissões sobre itens da lista (allSiteLists e allSiteContent contentores). |
✔️ | Versão de pré-visualização, a partir da versão 2026-05-01-preview da API REST. |
| Páginas do site ASPX | Permissões em páginas de site modernas (allSitePages e allSiteContent contentores). |
✔️ | Versão de pré-visualização, a partir da versão 2026-05-01-preview da API REST. |
| Grupos Microsoft Entra (Microsoft 365 e segurança) | Acesso em grupo. | ✔️ | IDs de grupo incluídos quando possam ser resolvidos para um identificador do Microsoft Entra (ID). |
| Grupos de sites do SharePoint | Proprietários/Membros/Visitantes e grupos personalizados de sites. | ✔️ | Versão de pré-visualização, a partir da versão 2026-05-01-preview da API REST. Requer a configuração de grupos do SharePoint. Os IDs de grupo são emitidos com o spg: prefixo. |
| Partilhável "Links para qualquer pessoa" ou "Links para pessoas na sua organização" | Acesso público ou a nível de toda a organização. | ❌ | Não é suportado na pré-visualização. |
| Utilizadores externos/convidados | Acesso para convidados. | ❌ | Não suportado. |
| Políticas de Gestão da Informação | Políticas para definir requisitos específicos de permissões. | ❌ | Não é suportado na pré-visualização. |
| Etiquetas de sensibilidade do Purview | Segurança ao nível do documento para privacidade, categorização, permissões e encriptação | ❌ | Suportado por uma funcionalidade separada: preservar e honrar as etiquetas de sensibilidade. |
Relações de grupo apoiadas
A transitividade de grupos do Microsoft Entra aplica-se no Microsoft Entra. Não expande os grupos Microsoft Entra que são membros de grupos SharePoint.
| Relação de permissão | Apoiado | Orientações |
|---|---|---|
| Utilizador ou grupo Microsoft Entra atribuído diretamente ao item SharePoint | Sim | O indexador armazena o ID do objeto do utilizador ou do grupo Microsoft Entra nos metadados de permissão do item. |
| O utilizador acede a um grupo do Microsoft Entra atribuído através do aninhamento transitivo de grupos do Microsoft Entra | Sim | A resolução Microsoft Graph em tempo de consulta expande as pertenças transitivas do utilizador ao grupo Microsoft Entra. |
| Utilizador atribuído diretamente a um grupo de site SharePoint que tenha acesso ao item | Sim | Configurar suporte para grupos do SharePoint. |
| Grupo Microsoft Entra incluído num grupo do SharePoint | No | A resolução do grupo do SharePoint não expande o grupo Microsoft Entra aninhado. Os resultados que dependem desta relação são filtrados. Adicione utilizadores diretamente ao grupo SharePoint ou conceda permissão através de uma atribuição de grupo Microsoft Entra suportada. |
| Outras direções mistas de aninhamento do SharePoint e do Microsoft Entra | Não especificado | Não presuma suporte com base na transitividade do Microsoft Entra. Esta limitação de pré-visualização é aplicada a grupos Microsoft Entra aninhados dentro de grupos SharePoint. |
Como as permissões hierárquicas são avaliadas
As permissões do SharePoint herdam a hierarquia de Site → Biblioteca → Pasta → Ficheiro, a menos que a herança seja interrompida.
Durante a ingestão, o indexador recolhe identificadores de utilizador e de grupo (ID) em cada nível e calcula a ACL efetiva para cada ficheiro.
Permissões por cenário de ACL
As permissões da aplicação Microsoft Entra e o tipo de credencial necessários para a ingestão de ACL dependem dos tipos de itens e grupos que indexa. No registo da aplicação, todas as permissões são adicionadas sob permissões da API.>Adicionar uma permissão, e a credencial federada é adicionada em credenciais federadas de Certificados & Segredos>. Para instruções passo a passo e capturas de ecrã, veja Passo 3: Criar um registo de Microsoft Entra aplicação e Configurar a aplicação registada com uma identidade gerida.
| Scenario | Permissões da API para adicionar | Credential |
|---|---|---|
| ACLs nos ficheiros da biblioteca de documentos, quando o acesso é concedido apenas através de utilizadores do Microsoft Entra e grupos padrão (grupos de segurança do Microsoft Entra, grupos do Microsoft 365, grupos de segurança com suporte para correio eletrónico) |
Microsoft Graph: Files.Read.All, Sites.FullControl.All (ou Sites.Selected para acesso com âmbito) |
Segredo do cliente ou credencial federada |
| ACLs em ficheiros de biblioteca de documentos, quando grupos de sites SharePoint (Proprietários, Membros, Visitantes ou grupos personalizados de sites) também devem ser respeitados |
Microsoft Graph: Files.Read.All, Sites.FullControl.All (ou Sites.Selected)SharePoint: Sites.FullControl.All (ou Sites.Selected) |
Credencial federada (obrigatória) |
| ACLs em itens de lista do SharePoint |
Microsoft Graph: Files.Read.All, Sites.FullControl.All (ou Sites.Selected), User.Read.AllSharePoint: Sites.FullControl.All (ou Sites.Selected) |
Credencial federada (obrigatória) |
| Conteúdo e ACLs nas páginas do site ASPX |
Microsoft Graph: Sites.FullControl.All (ou Sites.Selected), User.Read.All (mantenha Files.Read.All das linhas acima se também estiver a indexar bibliotecas ou listas de documentos)SharePoint: Sites.FullControl.All (ou Sites.Selected) |
Credencial federada (obrigatória) |
Resolução no momento da consulta de grupos de sites do SharePoint via sharePointConnectorAppRegistration |
Adicionar SharePoint: User.Read.All ao mesmo registo da aplicação usado pelo indexador |
Credencial federada (obrigatória) |
Nota
Quando adiciona uma permissão, escolhe entre duas superfícies de API: Microsoft Graph e SharePoint. Ambos expõem permissões com nomes semelhantes. Por exemplo,
Sites.FullControl.Allexiste em ambos. Adicione cada permissão sob a superfície da API indicada na tabela.Use uma credencial federada sempre que o cenário incluir permissões da API do SharePoint. Os segredos de cliente funcionam apenas para a linha da biblioteca de documentos exclusiva do Microsoft Graph.
User.Read.Allé necessário para itens de lista e páginas de site ASPX porque o indexador lê essas permissões através da API REST do SharePoint, que devolve apenas o email do utilizador. Em seguida, o indexador chama o Microsoft Graph para associar cada endereço de e-mail ao respetivo ID de objeto do Microsoft Entra, e essa procura requerUser.Read.All.Quando usar
Sites.Selected, conceda à aplicação acesso explícito a cada site SharePoint destino antes de indexar.
Uma credencial federada autentica a aplicação usando uma identidade gerida de confiança em vez de um segredo do cliente. A mesma credencial federada abrange tanto a ingestão (indexador) como a avaliação, no momento da consulta, dos grupos de sites do SharePoint. Para os passos de configuração, consulte Configurar a aplicação registada com uma identidade gerida.
Antes de ativar a ingestão de ACL
Complete estes passos na sua aplicação Microsoft Entra registada:
- Identifique o seu cenário na tabela anterior com base no que planeia indexar (ficheiros da biblioteca de documentos, itens da lista, páginas ASPX do site) e se os grupos de sites do SharePoint têm de ser respeitados.
- Abra o registo da sua aplicação no centro de administração Microsoft Entra e vá a APIs permissões>Adicionar uma permissão.
- Adicione as permissões do Microsoft Graph listadas para o seu cenário. Conceda o consentimento do administrador.
- Se o seu cenário também exigir permissões SharePoint, selecione novamente Adicionar uma permissão, escolha a API SharePoint e adicione
Sites.FullControl.All(ouSites.Selected). Conceda o consentimento do administrador. - Configurar a credencial:
- Para cenários exclusivos do Microsoft Graph, pode utilizar um segredo do cliente (Certificados & segredos>Segredos do cliente) ou uma credencial federada.
- Para qualquer cenário que inclua permissões de SharePoint, adicione uma credencial federada em
Certificados & Segredos credenciais federadas . Veja Configurar a aplicação registada com uma identidade gerida.
- Conceda à aplicação acesso aos sites SharePoint alvo (especialmente importante quando usa
Sites.Selectedpara acesso com âmbito definido) para que possa ler o conteúdo e as permissões que pretende indexar.
Encontre os identificadores corretos da Microsoft Entra
Cada identificador aparece numa localização diferente no portal do Azure e corresponde a um campo de configuração específico. Use esta secção como referência ao configurar a ingestão de ACL do SharePoint com uma credencial federada. Estes identificadores são referidos em Configurar o suporte para grupos do SharePoint e na cadeia de ligação da fonte de dados.
| Identificador | Localização do portal | Utilizado onde | Notas |
|---|---|---|---|
| ID da aplicação cliente de ingestão |
Registos de aplicações><your-app>> |
ApplicationId na cadeia de ligação da fonte de dados; applicationId em sharePointConnectorAppRegistration |
Este ID está correto para a maioria dos campos de configuração. Também chamado de "ID do cliente". |
| ID do objeto do aplicativo |
Registos de aplicações><your-app>>Descrição geral (abaixo do ID da aplicação (cliente)) |
Não utilizado na configuração do Pesquisa de IA do Azure | Não confundas isto com o ID da Aplicação (cliente). Aparece na mesma lâmina, diretamente abaixo do ID do cliente. |
| ID de objeto principal de serviço |
Microsoft Entra ID>Aplicações empresariais><your-app>>Gerir>Propriedades |
Não utilizado na configuração do Pesquisa de IA do Azure | Esta é a representação principal do serviço da aplicação. É um GUID diferente do ID do objeto de registo da aplicação. |
| ID principal de identidade gerida | Propriedades do recurso > de identidade gerida ou o serviço de pesquisa Blade de identidade | Não utilizado diretamente na configuração de fonte de dados ou índice do Pesquisa de IA do Azure | Usado internamente quando configuras a credencial de identidade federada no registo da aplicação. A credencial que cria confia nesta identidade. |
| ID do objeto de credencial federada | Registos de aplicaçõesGerirCertificados e segredosCredenciais federadas | Não utilizado na configuração do Pesquisa de IA do Azure | Não use o GUID da entrada da credencial de identidade federada para federatedCredentialId. |
| ID da aplicação da credencial federada | Atribuído ao sistema: Microsoft Entra ID>Aplicações empresariais><search-service>>; Atribuído pelo utilizador: <managed-identity-resource>>Propriedades |
FederatedCredentialApplicationId na cadeia de ligação da fonte de dados; federatedCredentialId em sharePointConnectorAppRegistration |
Consulte o ID da aplicação de credencial federada para a pesquisa de identidade gerida. |
ID da aplicação da credencial federada
Para FederatedCredentialApplicationId na cadeia de ligação da fonte de dados e federatedCredentialId na definição do índice, utilize o ID da própria aplicação (cliente) da identidade gerida, e não o ID da aplicação de ingestão.
Identidade gerenciada atribuída ao sistema:
- Aceda ao seu serviço Pesquisa de IA do Azure.
- Selecione Segurança + redes>Identidade.
- No separador Atribuído pelo sistema, anote o ID do objeto (principal).
- Aceda a Microsoft Entra ID>Gerenciar>aplicações empresariais.
- Procure o nome do seu serviço de pesquisa ou cole o ID do Objeto (principal) na caixa de pesquisa.
- Selecione o resultado e abra Propriedades. Copie o ID da Aplicação mostrado aqui, que é o valor de
FederatedCredentialApplicationIdna fonte de dados efederatedCredentialIdno índice.
Identidade gerenciada atribuída pelo usuário:
- Vai ao recurso de identidade gerida atribuído pelo utilizador.
- Selecione Configurações>Propriedades.
- Copie o ID do Cliente, que é o valor para
FederatedCredentialApplicationIdna fonte de dados efederatedCredentialIdno índice.
Configure o seu serviço de pesquisa para a ingestão da ACL e a aplicação no momento da consulta
Estes passos configuram o seu serviço de pesquisa para a ingestão de ACL e ativam o ACL honoring no momento da consulta.
Escolha onde preencher os campos ACL
O local onde mapear os campos de metadados ACL depende se o indexador escreve um documento por item de origem ou vários blocos por item de origem.
| Scenario | Preencher os campos ACL através de | Porquê |
|---|---|---|
| Sem competências ou conjunto de competências sem segmentação; um documento de pesquisa por item de origem |
Mapeamentos de campos do indexador apenas (metadata_user_ids → UserIds, metadata_group_ids → GroupIds e, para grupos do SharePoint, metadata_spo_site_url → SharePointSiteUrl). |
O indexador escreve um único documento no índice alvo, e os mapeamentos de campos transportam metadados de origem para os campos de índice. |
Conjunto de competências com fragmentação em blocos (por exemplo, competência de Divisão de Texto para vetorização integrada), índice único com campos principais repetidos em cada bloco (projectionMode: skipIndexingParentDocuments) |
Projeções de índice no conjunto de competências (mappings de /document/metadata_user_ids, /document/metadata_group_ids e, para grupos do SharePoint, /document/metadata_spo_site_url). |
O documento principal não está indexado; só os fragmentos estão. Os valores de ACL devem ser propagados para cada bloco, para que os filtros aplicados no momento da consulta incidam sobre o bloco devolvido nos resultados. Os mapeamentos de campos do indexador para estes campos são contornados neste modo. |
| Conjunto de competências com segmentação, padrão de dois índices (índice pai + índice dos segmentos filhos) | Ambos: os mapeamentos de campos do indexador preenchem os campos ACL no índice principal, e as projeções de índice preenchem os campos ACL no índice subordinado de segmentos. | Ambos os índices são consultáveis, e cada um precisa dos metadados que filtra. |
Em todos os cenários segmentados, cada bloco deve incluir os campos ACL. Os filtros de permissões são aplicados por documento, pelo que um bloco sem campos ACL não pode ser devolvido ao chamador correto.
1. Configuração da fonte de dados
Esta secção é um delta em relação à base Passo 4: Guia para criar fonte de dados . Defina indexerPermissionOptions na definição fonte de dados para permitir a indexação de userIds e groupIds dos documentos do SharePoint.
{
"name": "my-sharepoint-acl-datasource",
"type": "sharepoint",
"indexerPermissionOptions": ["userIds", "groupIds"],
"credentials": {
"connectionString": "<connection-string>;"
},
"container": {
"name": "<library-name>",
"query": "<optional-folder-path>"
}
}
2. Adicionar campos de permissão à definição do índice
Adicione campos à definição do seu esquema de índice para armazenar ACLs e suportar filtragem em tempo de consulta.
{
"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"
}
Atribua retrievable o valor true apenas durante o desenvolvimento para verificar os valores. Podes mudar o recuperável de verdadeiro para falso sem necessidade de reconstruir o índice.
3. Configure projeções de índice no seu conjunto de competências (se aplicável)
Quando a fragmentação está ativada, o documento principal não é gravado no índice quando projectionMode é skipIndexingParentDocuments. Transportar os metadados ACL para cada bloco através de indexProjections.selectors[].mappings.
Se o seu indexador usar um conjunto de competências com fragmentação de dados, como a competência Text Split ao ativar vetorização integrada, certifique-se de mapear propriedades ACL para cada bloco usando projeções de índice. As // linhas no exemplo seguinte são anotações ilustrativas e não são JSON válidas. Remova-os antes de submeteres o pedido.
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"
}
}
}
Os mapeamentos UserIds, GroupIds e SharePointSiteUrl leem os metadados ao nível da fonte emitidos pelo indexador SharePoint (/document/metadata_*) e escrevem os valores em cada bloco.
4. Configurar os mapeamentos de campos do indexador para ACLs
Use mapeamentos de campos do indexador quando o indexador escreve um documento por item de origem (sem fragmentação) ou quando mantém um índice pai separado juntamente com um índice de blocos. Se o seu conjunto de competências dividir documentos num único índice de destino com projectionMode: skipIndexingParentDocuments, os mapeamentos de campos apresentados aqui são substituídos pelo indexProjections.mappings da etapa anterior para o índice de segmentos.
Além da configuração obrigatória de indexer, mapeia os campos de metadados brutos da ACL da SharePoint para os seus campos de índice.
{
"fieldMappings": [
{ "sourceFieldName": "metadata_user_ids", "targetFieldName": "UserIds" },
{ "sourceFieldName": "metadata_group_ids", "targetFieldName": "GroupIds" }
]
}
5. Executar o indexador
Os metadados ACL são ingeridos quando o indexador é executado. Depois de criar ou atualizar o indexador (ver Passo 6: Criar um indexador), desencadeie uma execução para que o indexador absorva ACLs juntamente com o conteúdo.
POST https://[service name].search.windows.net/indexers/[indexer-name]/run?api-version=2026-08-01-preview
api-key: [admin key]
Se ativaste a ingestão de ACL num indexador existente que já tinha indexado itens, chama /resync com options: ["permissions"] para preencher retroativamente as ACLs desses itens, ou /resetdocs para reextrair itens específicos.
6. Verificar a ingestão da ACL
Para confirmar que os valores de ACL foram corretamente preenchidos:
- Defina temporariamente
retrievablecomotrueemUserIdseGroupIdsna definição do seu índice. Mudarretrievablenão requer uma reconstrução do índice. - Execute uma consulta de leitura elevada que selecione
UserIdseGroupIds, e confirme que as coleções não estão vazias. Para cenários com fragmentação, confirme que cada bloco contém ambos os campos. - Voltar
retrievableafalseapós a verificação.
Configurar suporte para grupos SharePoint
A partir da API REST 2026-05-01-preview, o indexador do SharePoint pode ingerir associações a grupos de sites do SharePoint (Proprietários, Membros, Visitantes e grupos de sites personalizados). Homenageia estes grupos no momento das consultas. Os IDs de grupo do SharePoint são emitidos no campo metadata_group_ids com o prefixo spg: para os distinguir dos IDs de objeto de grupo do Microsoft Entra.
Este tutorial é autónomo: conclua os passos pela ordem indicada para configurar o índice, os mapeamentos de campos no indexador e consultar o índice com aplicação dos grupos de sites do SharePoint.
Os seguintes componentes trabalham em conjunto para permitir a resolução de grupos de sites do SharePoint:
| Componente | Onde | Purpose |
|---|---|---|
sharePointConnectorAppRegistration (com applicationId, tenantId, federatedCredentialId) |
Definição de índice | Fornece a configuração de autenticação necessária para que o serviço de pesquisa chame a API REST do SharePoint como utilizador chamador e resolva a pertença ao grupo de site no momento da consulta. |
SharePointSiteUrl campo (com sharepointSiteUrl: true) |
Esquema de índice + mapeamento de campos do indexador a partir de metadata_spo_site_url |
Identifica a que site do SharePoint pertence um documento, para que a resolução de grupos SP tenha o âmbito corretamente definido. |
valores com o prefixo spg: em GroupIds |
Metadados das permissões do documento | Distinga os identificadores de grupo de sites do SharePoint dos identificadores de objeto de grupo do Microsoft Entra. |
1. Pré-requisitos
- Indexador SharePoint já configurado para ingestão ACL. Consulte Configurar os mapeamentos de campo do indexador para ACLs.
- Registo da aplicação Microsoft Entra com credencial de identidade federada. Veja Configurar a aplicação registada com uma identidade gerida.
- API REST
2026-05-01-previewou posterior.
Nota
FederatedCredentialApplicationId na cadeia de ligação da origem de dados e federatedCredentialId em sharePointConnectorAppRegistration utilize o ID da aplicação da identidade gerida. A propriedade applicationId em sharePointConnectorAppRegistration utiliza o ID de cliente da aplicação de ingestão. Para encontrar os valores corretos, veja Encontrar os identificadores corretos da Microsoft Entra.
2. Configurar o índice
Adicione a configuração sharePointConnectorAppRegistration e o campo SharePointSiteUrl juntamente com os campos de filtro de permissões UserIds e GroupIds, para que a estrutura completa do índice fique num único local. Manter 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. Configurar os mapeamentos de campos do indexador
Mapeie os campos de metadados do SharePoint para os campos de índice num único bloco combinado de mapeamento. Os dois primeiros mapeamentos são os mesmos usados para a ingestão padrão de ACL; o terceiro mapeamento ativa a resolução de grupos do SharePoint.
{
"fieldMappings": [
{ "sourceFieldName": "metadata_user_ids", "targetFieldName": "UserIds" },
{ "sourceFieldName": "metadata_group_ids", "targetFieldName": "GroupIds" },
{ "sourceFieldName": "metadata_spo_site_url", "targetFieldName": "SharePointSiteUrl" }
]
}
Se o seu conjunto de competências dividir documentos em blocos (por exemplo, com a competência Text Split para vetorização integrada), projete SharePointSiteUrl em cada bloco através de indexProjections.mappings. Consulte Escolher onde preencher os campos de ACL.
4. Consultar o índice
Não é necessária qualquer alteração do lado do cliente. O mesmo token x-ms-query-source-authorization ativa a aplicação tanto do Microsoft Entra como do grupo de sites do SharePoint. O serviço de pesquisa determina, no servidor, as associações aos grupos do SharePoint usando sharePointConnectorAppRegistration no índice.
Para a estrutura do pedido, veja o exemplo de consulta geral e o exemplo específico do SharePoint com imposição do grupo de sites.
5. Verificar
Para confirmar se os IDs de grupo do SharePoint foram incluídos no índice, execute uma consulta de leitura elevada que seleciona GroupIds e procure valores com o prefixo spg: na resposta.
Sincronizar permissões entre conteúdos indexados e de origem
A partir da API REST de pré-visualização de 01-05-2026, as alterações às ACL de itens com permissões únicas são detetadas e atualizadas em cada execução bem-sucedida do indexador. O indexador utiliza tokens de alteração do SharePoint para detetar adições e remoções de atribuição de funções de forma incremental, da mesma forma que capta alterações de conteúdo.
Alguns cenários ainda requerem uma atualização explícita:
| Alterar o âmbito | Detetado automaticamente | Ação recomendada |
|---|---|---|
| Permissões sobre um item específico com permissões únicas (ficheiro, item de lista ou página) | Sim | Nenhuma ação necessária. A alteração é refletida na próxima execução bem-sucedida do indexador. |
| Alteração de conteúdo num item específico (que também reavalia ACLs efetivas para esse item) | Sim | Nenhuma ação necessária. |
| As permissões são alteradas num âmbito principal (site, biblioteca, lista ou pasta) que é herdado por itens subordinados | No | Chame /resync com options: ["permissions"] para atualizar as ACLs em toda a fonte de dados, ou chame /resetdocs com as chaves dos documentos afetados para atualizar tanto o conteúdo como as ACLs. |
| Ingestão de ACL ativada num indexador existente | No | Chame /resync com options: ["permissions"] para preencher retroativamente as ACLs de itens previamente indexados. |
Reiniciar documentos específicos
Podes reiniciar documentos específicos para ingerir totalmente conteúdo e ACLs.
POST https://{service}.search.windows.net/indexers/{indexer}/resetdocs?api-version=2026-08-01-preview
{
"documentKeys": ["doc123", "doc456"]
}
Sincronizar as ACLs em toda a fonte de dados
Pode ressincronizar o conteúdo da ACL do conjunto completo de dados após a ingestão inicial. Para ter sucesso total, esta operação requer a execução de um indexador após a conclusão.
POST https://{service}.search.windows.net/indexers/{indexer}/resync?api-version=2026-08-01-preview
{
"options": ["permissions"]
}
Importante
Se alterar permissões do SharePoint sem ativar um mecanismo de atualização, o índice fornece dados ACL obsoletos para ficheiros previamente ingeridos.
Depois de indexar os seus dados e ACLs, pode consultar o índice.
Troubleshooting
| Symptom | Causa e resolução |
|---|---|
UserIds ou GroupIds estão vazios em documentos indexados |
Se o teu conjunto de competências utilizar projectionMode: skipIndexingParentDocuments, os mapeamentos de campos do indexador para campos ACL são ignorados. Defina os campos ACL através de indexProjections.mappings em cada fragmento, em vez disso. |
Os IDs dos grupos de sites do SharePoint estão em falta ou os valores GroupIds não têm o prefixo spg: |
Confirme que o índice tem a configuração sharePointConnectorAppRegistration, que o campo SharePointSiteUrl existe com sharepointSiteUrl: true e que o mapeamento metadata_spo_site_url está presente nos mapeamentos de campos do indexador ou nas projeções de índice. |
SharePointSiteUrl está vazio ou nulo após indexação, mesmo que as ACLs estejam a preencher corretamente |
O indexador emite estes metadados sob metadata_spo_site_url, não metadata_sharepoint_site_url. Verifique se o mapeamento de campos do seu indexador utiliza "sourceFieldName": "metadata_spo_site_url". Se o seu conjunto de competências utilizar projeções de índice para documentos segmentados, verifique se a origem do mapeamento da projeção é /document/metadata_spo_site_url. |
| O indexador devolve 401 ou 403 | Conceda consentimento do administrador tanto para as permissões da API do Microsoft Graph como do SharePoint para o seu cenário. Use uma credencial federada (não um segredo do cliente) quando o cenário o exigir. Veja o cenário de permissões por ACL. |
| As permissões ficam obsoletas após a alteração de uma ACL de site, biblioteca, lista ou pasta | Chame /resync utilizando options: ["permissions"]. Consulte Sincronizar permissões entre conteúdo indexado e fonte para contexto. |
federatedCredentialId é rejeitado ao configurar sharePointConnectorAppRegistration |
Use o ID de aplicação da identidade gerida, não o ID de objeto da credencial de identidade federada nem o ID principal da identidade gerida. Consulte o ID da aplicação de credencial federada. |
O indexador retorna 401 Unauthorized e FederatedCredentialApplicationId é definido |
Verifique se usou o ID de Aplicação da identidade gerida (encontrado em aplicações empresariais), e não o ID de Aplicação (cliente) da aplicação de ingestão (ApplicationId) ou qualquer ID de Objeto. Para uma identidade gerida atribuída pelo utilizador, use o ID do Cliente da página de Propriedades do recurso de identidade gerida. Veja Encontrar os identificadores corretos da Microsoft Entra. |
Para resultados em falta, inesperados ou com falha no momento da consulta, depois de os metadados ACL serem indexados, consulte Resolver problemas de filtragem de permissões do SharePoint.