Utilize um indexador do Pesquisa de IA do Azure para importar etiquetas de confidencialidade do Microsoft Purview e aplicar segurança ao nível do documento (pré-visualização)

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.

O Pesquisa de IA do Azure suporta extração de etiquetas de sensibilidade Microsoft Purview e aplicação de tempo de consulta (preview). Durante a indexação, extrai e armazena automaticamente os metadados das etiquetas de sensibilidade para cada documento. No momento da consulta, aplica o controlo de acesso baseado em rótulos, de acordo com as políticas de proteção de informação existentes na Microsoft Purview, garantindo que apenas utilizadores autorizados possam recuperar conteúdos rotulados nos resultados de pesquisa.

Esta funcionalidade está disponível para as seguintes fontes de dados:

Diagrama de arquitetura mostrando uma solução RAG governada onde documentos rotulados com etiquetas de sensibilidade Microsoft Purview são indexados no Pesquisa de IA do Azure, e um orquestrador RAG filtra os resultados das consultas de acordo com a etiqueta, de modo que os utilizadores menos experientes veem apenas conteúdo Geral enquanto os utilizadores executivos veem conteúdo Geral, Confidencial e Altamente Confidencial.

Pré-requisitos

Importante

O serviço de pesquisa deve usar a sua identidade gerida atribuída pelo sistema para se autenticar com a Microsoft Purview. Esta funcionalidade não suporta identidades geridas atribuídas pelo utilizador.

Limitações

  • O portal do Azure não suporta esta funcionalidade.

  • As APIs Autocomplete e Suggest não são suportadas para índices com Purview, pois ainda não conseguem impor controlo de acesso baseado em etiquetas.

  • Contas de convidados e consultas entre entidades não são suportadas.

  • Identidades geridas atribuídas pelos utilizadores não são suportadas para atribuições de funções no Microsoft Purview. Só a identidade gerida atribuída pelo sistema do serviço pode ter as funções Content.SuperUser e UnifiedPolicy.Tenant.Read necessárias para a extração de rótulos. Atribua estes papéis diretamente à identidade do serviço – ele executa as operações privilegiadas EXTRACT (leitura de conteúdos encriptados e classificações de segurança) em nome do indexador. Veja o Passo 1 e o Passo 3.

  • As seguintes funcionalidades do indexador não suportam documentos com etiquetas de sensibilidade. Se usar alguma destas funcionalidades num conjunto de competências ou indexador, documentos com etiquetas de sensibilidade não são processados.

Como funciona a aplicação das políticas

O suporte a rótulos de sensibilidade tem duas fases: indexação e aplicação durante a consulta.

Indexação

Quando configura a indexação num calendário, o indexador recolhe novos documentos e atualizações da fonte de dados. Para cada documento, recolhe:

  • Conteúdo do documento
  • A etiqueta de sensibilidade associada
  • Alterações ao conteúdo ou aos rótulos desde a última execução do indexador

Nota

O índice não reflete alterações de rótulos nos documentos de origem até à próxima execução bem-sucedida do indexador.

Aplicação em tempo de consulta

No momento da pesquisa, o Pesquisa de IA do Azure avalia as etiquetas de sensibilidade e aplica o controlo de acesso ao nível do documento com base no token do Microsoft Entra ID e nas políticas de etiquetas de sensibilidade do Microsoft Purview do utilizador. Apenas utilizadores autorizados a aceder a conteúdos com o direito de uso READ sob um determinado rótulo podem obter documentos correspondentes nos resultados de pesquisa.

Os administradores autorizados também podem emitir solicitações de leitura elevada, que devolvem documentos rotulados que o utilizador que efetua a chamada normalmente não veria e geram uma entrada no registo de auditoria do Microsoft Purview para cada documento devolvido. A leitura com privilégios elevados requer a função de Contribuidor de Dados do Índice de Pesquisa no serviço de pesquisa e a versão da API 2026-05-01-preview ou posterior.

Exemplo de fim a fim

As imagens seguintes mostram como os rótulos de sensibilidade fluem da autoria para a experiência de pesquisa. Na primeira imagem, um utilizador aplica o rótulo Confidencial a um documento em Microsoft Word. Na segunda imagem, um chatbot empresarial impõe esse rótulo no momento da consulta, bloqueando ações de cópia e partilha para conteúdos confidenciais.

Captura de ecrã do menu de Sensibilidade Microsoft Word mostrando uma hierarquia de etiquetas incluindo Não-Empresarial, Público, Geral, Confidencial com subrótulos como Project Obsidian e Apenas Destinatários, e Altamente Confidencial, com o rótulo Confidencial atualmente aplicado ao documento.

Captura de ecrã de um chatbot empresarial da Contoso a mostrar uma resposta sensível às políticas com citações numeradas, um banner de etiqueta de sensibilidade

1. Ativar a identidade gerida pela pesquisa por IA

Ative uma identidade gerida atribuída pelo sistema para o seu serviço Pesquisa de IA do Azure – as identidades geridas atribuídas pelo utilizador não são suportadas para esta funcionalidade. O indexador utiliza esta identidade para autenticar com o Microsoft Purview e extrair metadados das etiquetas de sensibilidade. Também deve receber as atribuições de funções no Passo 3.

2. Ative o RBAC no seu serviço de Pesquisa por IA

Ative o controlo de acesso baseado em funções (RBAC) no seu serviço Pesquisa de IA do Azure. Este passo é necessário para que operações relacionadas com o conteúdo, como indexação de conteúdo e consulta ao índice, tenham sucesso. Mantém tanto as chaves RBAC como as APIs para evitar perturbar operações que dependem de chaves API.

3. Conceder acesso para extrair etiquetas de sensibilidade

Aceder aos metadados de etiquetas de sensibilidade do Microsoft Purview envolve operações altamente privilegiadas, incluindo a leitura de conteúdos encriptados e classificações de segurança. Para ativar esta funcionalidade no Pesquisa de IA do Azure, deve atribuir funções específicas à identidade gerida do serviço – seguindo os processos internos de governação e aprovação da sua organização.

Identifique os seus administradores globais ou privilegiados de funções

Se precisar de determinar quem pode autorizar permissões para o serviço de pesquisa, pode localizar Administradores Globais ativos ou elegíveis no seu tenant Microsoft Entra.

  1. No portal Azure, procure por Microsoft Entra ID.

    Captura de ecrã da ação de pesquisa do produto Microsoft Entra.

  2. No painel de navegação esquerdo, selecione Gerir > Papéis e administradores.

    Captura de ecrã das funções e da página de administradores do Entra.

  3. Procure pelo papel de Administrador Global ou Administrador de Função Privilegiada e selecione-o.

    Captura de ecrã da seleção do cargo de administrador global.

  4. Em Atribuições Elegíveis e Atribuições Ativas, consulte a lista de administradores autorizados a executar o processo de configuração de permissões.

    Captura de ecrã das atribuições elegíveis e ativas de funções.

Aprovação segura da governação

Envolva as suas equipas internas de segurança ou conformidade para analisar o pedido. A Microsoft recomenda seguir o processo padrão de governação e revisão de segurança da sua empresa antes de avançar com qualquer atribuição de funções.

Uma vez aprovado, um Administrador Global ou Administrador de Funções Privilegiadas deve atribuir as seguintes funções à identidade gerida atribuída pelo sistema Pesquisa de IA do Azure:

  • Content.SuperUser – para extração de rótulos e conteúdos
  • UnifiedPolicy.Tenant.Read – para acesso à política Purview e aos metadados de etiquetas

Atribuir papéis via PowerShell

Nota

Atribua estes papéis apenas à identidade gerida atribuída pelo sistema do serviço Pesquisa de IA do Azure – não a uma identidade gerida atribuída pelo utilizador, principal de serviço ou conta individual de utilizador. O script PowerShell recupera automaticamente o ID do objeto de identidade gerida do recurso de serviço.

O seu Administrador Global ou Administrador de Funções Privilegiadas deve usar o seguinte script PowerShell para conceder as permissões necessárias. Substitua os valores provisórios pelos nomes da sua subscrição real, grupo de recursos e serviço de pesquisa.

Install-Module -Name Az -Scope CurrentUser
Install-Module -Name Microsoft.Entra -AllowClobber
Import-Module Az.Resources
Connect-Entra -Scopes 'Application.ReadWrite.All'

$resourceIdWithManagedIdentity = "subscriptions/<subscriptionId>/resourceGroups/<resourceGroup>/providers/Microsoft.Search/searchServices/<searchServiceName>"
$managedIdentityObjectId = (Get-AzResource -ResourceId $resourceIdWithManagedIdentity).Identity.PrincipalId

# Microsoft Information Protection (MIP)
$MIPResourceSP = Get-EntraServicePrincipal -Filter "appID eq '870c4f2e-85b6-4d43-bdda-6ed9a579b725'"
New-EntraServicePrincipalAppRoleAssignment -ServicePrincipalId $managedIdentityObjectId -Principal $managedIdentityObjectId -ResourceId $MIPResourceSP.Id -Id "8b2071cd-015a-4025-8052-1c0dba2d3f64"

# Microsoft Rights Management Services (MRMS) - Service Principal for policy read
$MRMSResourceSP = Get-EntraServicePrincipal -Filter "appID eq '00000012-0000-0000-c000-000000000000'"
New-EntraServicePrincipalAppRoleAssignment -ServicePrincipalId $managedIdentityObjectId -Principal $managedIdentityObjectId -ResourceId $MRMSResourceSP.Id -Id "7347eb49-7a1a-43c5-8eac-a5cd1d1c7cf0"

Os funções appID no script PowerShell fornecido estão associadas às seguintes funções no Azure.

AppID Diretor de Serviço
870c4f2e-85b6-4d43-bdda-6ed9a579b725 Serviço de Sincronização de Proteção de Informação Microsoft
00000012-0000-0000-c000-000000000000 Serviços de Gestão de Direitos da Microsoft

4. Configurar o índice para ativar a etiqueta de sensibilidade do Purview

Quando for necessário suporte para etiquetas de sensibilidade, defina a purviewEnabled propriedade como true na definição do seu índice.

Importante

A purviewEnabled propriedade deve ser definida para true quando o índice é criado. Esta configuração é permanente e não pode ser modificada mais tarde.

Quando purviewEnabled está definido para true, apenas a autenticação RBAC é suportada para todas as APIs de operações documentais.

O acesso à chave API é limitado à recuperação de esquemas de índice (“list” e “get”).

PUT https://{service}.search.windows.net/indexes('{indexName}')?api-version=2026-08-01-preview
{
  "purviewEnabled": true,
  "fields": [
    {
      "name": "sensitivityLabel",
      "type": "Edm.String",
      "filterable": true,
      "sensitivityLabel": true,
      "retrievable": true
    }
  ]
}

5. Configurar a fonte de dados

Para permitir a ingestão de etiquetas de sensibilidade, configure a fonte de dados com a propriedade indexerPermissionOptions definida para ["sensibilityLabel"].

{
  "name": "purview-sensitivity-datasource",
  "type": "azureblob", // < adjust type value according to the data source you are enabling this for: sharepoint, onelake, adlsgen2.
  "indexerPermissionOptions": [ "sensitivityLabel" ],
  "credentials": {
    "connectionString": <your-connection-string>;"
  },
  "container": {
    "name": "<container-name>"
  }
}

A indexerPermissionOptions propriedade instrui o indexador a extrair os metadados da etiqueta de sensibilidade durante a ingestão e a anexá-los ao documento indexado.

6. Configure projeções de índice no seu conjunto de competências (se aplicável)

Se o teu indexador tiver um conjunto de competências e estiveres a implementar fragmentação de dados através da competência Text Split, como com vetorização integrada, projeta a etiqueta de sensibilidade em cada bloco através de projeções de índice no conjunto de competências.

Para uma regra mais ampla sobre quando os campos de permissão e ACL pertencem aos mapeamentos de campos do indexador versus projeções de índice, veja Escolher onde preencher campos ACL.

Esta etapa é necessária tanto para a aplicação no momento da consulta como para que as respostas de recuperação orientada por agentes incluam, para cada bloco, sensitivityLabelInfo por documento. Sem o mapeamento de projeções, as linhas dos blocos subordinados não serão filtradas corretamente.

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": "sensitivityLabel",  "source": "/document/metadata_sensitivity_label" } // <-- parent → child
        ]
      }
    ],
    "parameters": {
      "projectionMode": "skipIndexingParentDocuments"
    }
  }
}

7. Configurar o indexador

  • Defina mapeamentos de campos na definição do seu indexador para encaminhar metadados de etiquetas extraídas para os campos de índice. Se a sua fonte de dados emitir metadados de etiquetas sob um nome de campo diferente (por exemplo, metadata_sensitivity_label), mapeia-as explicitamente.
{
  "fieldMappings": [
    {
      "sourceFieldName": "metadata_sensitivity_label",
      "targetFieldName": "sensitivityLabel"
    }
  ]
}
  • O indexador indexa automaticamente as atualizações de etiquetas de sensibilidade quando deteta alterações ao rótulo, conteúdo ou metadados de um documento durante uma execução agendada do indexador. Configure o indexador num calendário recorrente. O intervalo mínimo suportado é a cada 5 minutos.

Próximos passos