Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Opmerking
Azure AI Zoeken is beschikbaar via de Azure-portal, REST API's en Azure-SDK's. Het vormt ook een basis voor Foundry IQ, de beheerde kennislaag die bedrijfsinhoud transformeert in herbruikbare, machtigingsbewuste knowledge bases voor agents in de Microsoft Foundry-portal.
Important
Functies, mogelijkheden of eigenschappen die zijn gemarkeerd (preview) vallen niet onder een service level agreement, worden niet aanbevolen voor productieworkloads en kunnen worden gewijzigd of beperkt voordat ze algemeen beschikbaar worden. De Azure AI Zoeken preview-voorwaarden zijn van toepassing op alle preview-functionaliteit, ongeacht of deze zelfstandig is of deel uitmaakt van een algemeen beschikbare functie.
Azure Storage maakt toegang op basis van rollen mogelijk voor containers in blobopslag, waarbij rollen zoals Storage Blob Data Reader of Storage Blob Data Contributor bepalen of iemand toegang heeft tot inhoud. Azure AI Zoeken ondersteunt het opnemen van gebruikersmachtigingen (preview) naast documentopname, zodat u deze machtigingen kunt gebruiken om de toegang tot zoekresultaten te beheren. Als een gebruiker geen machtigingen heeft voor een specifieke map of bestand in Azure Storage, heeft die gebruiker geen toegang tot de bijbehorende documenten in Azure AI Zoeken resultaten, zelfs als u persoonlijk een Search Index Data Reader toewijzing hebt on de index.
- 2025-05-01-preview en hoger, metagegevens van RBAC-bereiken kunnen worden opgenomen met behulp van de Blob-indexeerfunctie.
- 2025-11-01-preview en hoger biedt gelijkwaardige ondersteuning voor Blob-kennisbronnen in Azure Storage.
Het RBAC-bereik wordt ingesteld op containerniveau en wordt via overname van machtigingen naar alle blobs (documenten) gestroomd. Het RBAC-bereik wordt vastgelegd tijdens het indexeren als metagegevens van machtigingen. U kunt de push-API's gebruiken om inhoud en metagegevens van machtigingen handmatig te uploaden en te indexeren (zie Indexeringsmachtigingen met behulp van de PUSH REST API), of u kunt een indexeerfunctie of kennisbron gebruiken om gegevensopname te automatiseren. Dit artikel richt zich op de automatisering van het indexeren.
Tijdens de query wordt de identiteit van de aanroeper via de x-ms-query-source-authorization parameter opgenomen in de aanvraagheader. De identiteit moet overeenkomen met de machtigingsmetagegevens voor documenten als de gebruiker de zoekresultaten moet zien.
Dit artikel is gericht op de automatiseringsmethoden voor indexering, gebaseerd op deze basis:
Azure Storage blobs beveiligd met op rollen gebaseerd toegangsbeheer (Azure RBAC). Er is geen ondersteuning voor op kenmerken gebaseerd toegangsbeheer (Azure ABAC).
Azure Blob-indexeerfunctie of een Blob-kennisbron waarmee gegevens en metagegevens worden opgehaald en opgenomen, inclusief machtigingsfilters. Als u ondersteuning voor machtigingsfilters wilt krijgen, gebruikt u de nieuwste PREVIEW REST API of een preview-pakket van een Azure SDK die ondersteuning biedt voor de functie.
An index in Azure AI Zoeken met de opgenomen documenten en de bijbehorende machtigingen. Machtigingsmetagegevens worden opgeslagen als velden in de index.
Een query die gebruikmaakt van machtigingsfilters. Als u query's wilt instellen die de machtigingsfilters respecteren, gebruikt u de nieuwste PREVIEW REST API of een preview-pakket van een Azure SDK die ondersteuning biedt voor de functie.
Voorwaarden
Microsoft Entra ID verificatie en autorisatie. Services en apps moeten zich in dezelfde tenant bevinden. Gebruikers kunnen zich in verschillende tenants bevinden, zolang alle tenants Microsoft Entra ID gebruiken. Roltoewijzingen worden gebruikt voor elke geverifieerde verbinding.
Azure AI Zoeken, elke regio, maar u moet een factureerbare laag (basic en hoger) hebben voor ondersteuning van beheerde identiteiten. De zoekservice moet worden geconfigureerd voor op rollen gebaseerde toegang en moet een beheerde identiteit (systeem of gebruiker) hebben.
Azure Storage, Standaardprestaties (algemeen gebruik v2), op warme, koele en koude toegangslagen, met RBAC-beveiligde containers of blobs.
U moet begrijpen hoe indexeerfuncties en kennisbronnen werken en hoe u een index maakt. In dit artikel worden de configuratie-instellingen voor de gegevensbron en indexeerfunctie uitgelegd, maar bevat geen stappen voor het maken van de index. Zie Een index maken met machtigingsfiltervelden voor meer informatie over indexen die zijn ontworpen voor machtigingsfilters.
Limitations
Azure Portal biedt geen ondersteuning voor deze functie.
De volgende indexeerfuncties bieden geen ondersteuning voor overname van machtigingen in geïndexeerde documenten die afkomstig zijn van ADLS Gen2. Als u een van deze functies gebruikt in een vaardighedenset of indexeerfunctie, worden machtigingen op documentniveau niet opgenomen in de geïndexeerde inhoud.
Blob Storage configureren
Controleer of uw blobcontainer gebruikmaakt van op rollen gebaseerde toegang.
Meld u aan bij de Azure-portal en zoek uw opslagaccount.
Vouw containers uit en selecteer de container met de blobs die u wilt indexeren.
Selecteer Access Control (IAM) om roltoewijzingen te controleren. Gebruikers en groepen met Opslagblobgegevenslezer of Inzender voor opslagblobgegevens hebben toegang tot het doorzoeken van documenten in de index nadat de container is geïndexeerd.
Vergunning
Voor de uitvoering van de indexeerfunctie moet uw zoekservice-id beschikken over de machtiging Opslagblobgegevenslezer . Zie Connect to Azure Storage using a managed identity voor meer informatie.
Azure AI Zoeken configureren
Zoals u weet, moet de zoekservice beschikken over:
Vergunning
Voor de uitvoering van de indexeerfunctie moet de client die de API-aanroep uitgeeft, Search Service Contributor machtiging hebben om objecten te maken, Search Index Data Contributor machtiging voor het importeren van gegevens en Search Index Data Reader om een query uit te voeren op een index, zie Connect to Azure AI Zoeken using roles.
Een kennisbron configureren
Als u een kennisbron gebruikt, worden definities in de kennisbron gebruikt om een volledige indexeringspijplijn (indexeerfunctie, gegevensbron en index) te genereren. Het RBAC-bereik wordt gedetecteerd en automatisch opgenomen in de gegenereerde index. Het is niet nodig om een van de gegenereerde objecten te wijzigen als u de overname van machtigingen in uw geïndexeerde inhoud wilt.
Belangrijke punten over de configuratie waarmee deze werkt voor dit scenario:
-
isADLSGen2is ingesteld op false, wat betekent dat de gegevensbron is Azure Blob Storage. -
ingestionPermissionOptionsspecificeertrbacScope.
# Create / Update Azure Blob Knowledge Source
###
PUT {{url}}/knowledgesources/azure-blob-ks?api-version=2026-08-01-preview
api-key: {{key}}
Content-Type: application/json
{
"name": "azure-blob-ks",
"kind": "azureBlob",
"description": "A sample azure blob knowledge source",
"azureBlobParameters": {
"connectionString": "{{blob-connection-string}}",
"containerName": "blobcontainer",
"folderPath": null,
"isADLSGen2": false,
"ingestionParameters": {
"identity": null,
"embeddingModel": {
"kind": "azureOpenAI",
"azureOpenAIParameters": {
"deploymentId": "text-embedding-3-large",
"modelName": "text-embedding-3-large",
"resourceUri": "{{aoai-endpoint}}",
"apiKey": "{{aoai-key}}"
}
},
"chatCompletionModel": null,
"disableImageVerbalization": true,
"ingestionSchedule": null,
"ingestionPermissionOptions": ["rbacScope"],
"contentExtractionMode": "minimal",
"aiServices": {
"uri": "{{ai-endpoint}}",
"apiKey": "{{ai-key}}"
}
}
}
}
Naslaginformatie:Knowledge Source maken of bijwerken (REST API)
Indexeerfunctie-gebaseerde indexering configureren
Als u een indexeerfunctie gebruikt, configureert u deze, de gegevensbron en de index om metagegevens van machtigingen op te halen uit blobs.
De gegevensbron maken
Het gegevensbrontype moet zijn
azureblob.De parseringsmodus voor gegevensbronnen moet de standaardmodus zijn.
De gegevensbron moet
indexerPermissionOptionshebben metrbacScope.Configureer voor
rbacScopede verbindingsreeks in het formaat voor beheerde identiteiten.Voor verbindingsreeksen met een door de gebruiker toegewezen beheerde identiteit moet u ook de
identityeigenschap opgeven.
JSON-voorbeeld met door het systeem beheerde identiteit en indexerPermissionOptions:
{
"name" : "my-blob-datasource",
"type": "azureblob",
"indexerPermissionOptions": ["rbacScope"],
"credentials": {
"connectionString": "ResourceId=/subscriptions/<your subscription ID>/resourceGroups/<your resource group name>/providers/Microsoft.Storage/storageAccounts/<your storage account name>/;"
},
"container": {
"name": "<your-container-name>",
"query": "<optional-query-used-for-selecting-specific-blobs>"
}
}
Voorbeeld van een JSON-schema met een door de gebruiker beheerde identiteit in de verbindingsreeks:
{
"name" : "my-blob-datasource",
"type": "azureblob",
"indexerPermissionOptions": ["rbacScope"],
"credentials": {
"connectionString": "ResourceId=/subscriptions/<your subscription ID>/resourceGroups/<your resource group name>/providers/Microsoft.Storage/storageAccounts/<your storage account name>/;"
},
"container": {
"name": "<your-container-name>",
"query": "<optional-query-used-for-selecting-specific-blobs>"
},
"identity": {
"@odata.type": "#Microsoft.Azure.Search.DataUserAssignedIdentity",
"userAssignedIdentity": "/subscriptions/{subscription-ID}/resourceGroups/{resource-group-name}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{user-assigned-managed-identity-name}"
}
}
Machtigingsvelden maken in de index
Controleer in Azure AI Zoeken of uw index velddefinities bevat voor de machtigingsmetagegevens. Machtigingsmetagegevens kunnen worden geïndexeerd wanneer indexerPermissionOptions deze is opgegeven in de definitie van de gegevensbron.
Aanbevolen schemakenmerken voor RBAC-scope:
- RBAC-bereikveld met
rbacScopepermissionFilter-waarde. - Eigenschap
permissionFilterOptionvoor het inschakelen van filteren tijdens het uitvoeren van query's. - Stringvelden gebruiken voor machtigingsmetagegevens
- Stel
filterablein op waar voor alle velden.
U ziet dat dit retrievable onwaar is. U kunt het op 'waar' zetten tijdens de ontwikkeling om te controleren of de machtigingen aanwezig zijn, maar vergeet niet om het weer op 'onwaar' te zetten voordat u implementeert in een productieomgeving, zodat identiteiten van beveiligingsprincipes niet zichtbaar zijn in de resultaten.
JSON-schemavoorbeeld:
{
...
"fields": [
...
{
"name": "RbacScope",
"type": "Edm.String",
"permissionFilter": "rbacScope",
"filterable": true,
"retrievable": false
}
],
"permissionFilterOption": "enabled"
}
De indexeerfunctie configureren
Veldtoewijzingen in een indexer leggen het gegevenspad naar velden in een index. Voor doel- en doelvelden die per naam of gegevenstype variëren, is een expliciete veldtoewijzing vereist. De volgende metagegevensvelden in Azure Blob Storage hebben mogelijk veldtoewijzingen nodig als u de veldnaam wijzigt:
-
metadata_rbac_scope (
Edm.String) - het RBAC-bereik van de container.
Geef fieldMappings in de indexeerfunctie op om de machtigingsmetagegevens tijdens het indexeren te routeren naar doelvelden.
JSON-schemavoorbeeld:
{
...
"fieldMappings": [
{ "sourceFieldName": "metadata_rbac_scope", "targetFieldName": "RbacScope" }
]
}
De indexeerfunctie uitvoeren
Nadat uw indexeerfunctie, gegevensbron en index zijn geconfigureerd, voert u de indexeerfunctie uit om het proces in te stellen. Als er een probleem is met de configuratie of machtigingen, treden deze problemen op in deze stap.
Standaard wordt een indexeerfunctie uitgevoerd zodra u deze in een zoekservice plaatst, maar als de configuratie disabled van de indexeerfunctie is ingesteld op true, wordt de indexeerfunctie in een uitgeschakelde status geplaatst, zodat u de indexeerfunctie handmatig kunt uitvoeren.
Het wordt aanbevolen om de indexer vanuit de Azure-portal te runnen, zodat u de status en berichten kunt controleren.
Ervan uitgaande dat er geen fouten zijn, wordt de index nu ingevuld en kunt u verdergaan met query's en testen.
Verwijdering bijhouden
Als u het verwijderen van blobs effectief wilt beheren, moet u ervoor zorgen dat u het bijhouden van verwijderingen hebt ingeschakeld voordat uw indexeerfunctie voor het eerst wordt uitgevoerd. Met deze functie kan het systeem verwijderde blobs uit uw bron detecteren en de bijbehorende inhoud uit de index verwijderen.