Herstellen einer Verbindung mit Azure Storage mithilfe einer verwalteten Identität (Azure KI-Suche)

Hinweis

Azure KI-Suche ist über das Azure Portal, REST-APIs und Azure SDKs verfügbar. Es unterstützt auch Foundry IQ, die verwaltete Wissensschicht, die Unternehmensinhalte in wiederverwendbare, berechtigungsfähige Wissensbasen für Agenten im Microsoft Foundry-Portal transformiert.

In diesem Artikel wird erläutert, wie Sie eine Suchdienstverbindung mit einem Azure Storage Konto mithilfe einer verwalteten Identität konfigurieren, anstatt Anmeldeinformationen im Verbindungszeichenfolge bereitzustellen.

Sie können eine vom System zugewiesene verwaltete Identität oder eine vom Benutzer zugewiesene verwaltete Identität verwenden. Verwaltete Identitäten sind Microsoft Entra Anmeldungen und erfordern Rollenzuweisungen für den Zugriff auf Azure Storage.

Voraussetzungen

Hinweis

Wenn der Speicher netzwerkgeschützt ist und sich in derselben Region wie Ihr Suchdienst befindet, müssen Sie eine vom System zugewiesene verwaltete Identität und eine der folgenden Netzwerkoptionen verwenden: Verbinden als vertrauenswürdiger Dienst oder Herstellen einer Verbindung mithilfe der Ressourceninstanzregel.

Erstellen einer Rollenzuweisung in Azure Storage

  1. Melden Sie sich bei Azure Portal an, und suchen Sie Ihr Speicherkonto.

  2. Wählen Sie access control (IAM) aus.

  3. Wählen Sie "Hinzufügen" und dann "Rollenzuweisung" aus.

  4. Wählen Sie in der Liste der Rollen der Auftragsfunktion die rollen aus, die für Ihren Suchdienst erforderlich sind:

    Aufgabe Rollenzuweisung
    Blob-Indizierung mit einem Indexer Hinzufügen eines Speicher-Blob-Datenlesers
    ADLS Gen2-Indizierung mit einem Indexer Hinzufügen eines Speicher-Blob-Datenlesers
    Tabellenindizierung mithilfe eines Indexers Hinzufügen eines Speichertabellendatenlesers
    Dateiindizierung mit einem Indexer Hinzufügen von Lese- und Datenzugriff
    Schreiben in einen Wissensspeicher Fügen Sie "Storage Blob Data Contributor " für Objekt- und Dateiprojektionen sowie Lese- und Datenzugriff für Tabellenprojektionen hinzu.
    In einen Anreicherungscache (Vorschau) schreiben Hinzufügen von "Storage Blob Data Contributor " und "Storage Table Data Contributor"
    Sitzungsstatus der Debug-Session speichern Fügen Sie Mitwirkender an Speicher-Blobdaten hinzu
  5. Wählen Sie "Weiter" aus.

  6. Wählen Sie "Verwaltete Identität " und dann " Mitglieder" aus.

  7. Filtern Nach vom System zugewiesenen verwalteten Identitäten oder vom Benutzer zugewiesenen verwalteten Identitäten. Sie sollten die verwaltete Identität sehen, die Sie zuvor für Ihren Suchdienst erstellt haben. Wenn Sie keins haben, lesen Sie " Konfigurieren der Suche für die Verwendung einer verwalteten Identität". Wenn Sie bereits eins eingerichtet haben, aber es nicht verfügbar ist, geben Sie es ein paar Minuten.

  8. Wählen Sie die Identität aus, und speichern Sie die Rollenzuweisung.

Angeben einer verwalteten Identität in einem Verbindungszeichenfolge

Sobald Sie über eine Rollenzuweisung verfügen, können Sie eine Verbindung mit Azure Storage einrichten, die unter dieser Rolle ausgeführt wird.

Indexer verwenden ein Datenquellenobjekt für Verbindungen mit einer externen Datenquelle. In diesem Abschnitt wird erläutert, wie Sie eine vom System zugewiesene verwaltete Identität oder eine vom Benutzer zugewiesene verwaltete Identität in einer Verbindungszeichenfolge einer Datenquelle angeben. Weitere Verbindungszeichenfolge Beispiele finden Sie im Artikel zur verwalteten Identität.

Tipp

Sie können eine Datenquellenverbindung zu Azure Storage im Azure-Portal erstellen, entweder eine Systemidentität oder eine vom Benutzer zugewiesene verwaltete Identität angeben und dann die JSON-Definition anzeigen, um zu sehen, wie die Verbindungszeichenfolge formuliert ist.

Vom System zugewiesene verwaltete Identität

Sie müssen über eine system zugewiesene verwaltete Identität verfügen und sie muss über eine Rollenzuweisung für Azure Storage verfügen.

Bei Verbindungen mit einer vom System zugewiesenen verwalteten Identität ist die einzige Änderung an der Datenquellendefinition das Format der credentials Eigenschaft.

Stellen Sie eine Verbindungszeichenfolge bereit, die einen ResourceId ohne Kontoschlüssel oder Kennwort enthält. Dies ResourceId muss die Abonnement-ID des Speicherkontos, die Ressourcengruppe des Speicherkontos und den Namen des Speicherkontos enthalten.

POST https://[service name].search.windows.net/datasources?api-version=2026-04-01

{
    "name" : "blob-datasource",
    "type" : "azureblob",
    "credentials" : { 
        "connectionString" : "ResourceId=/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/MY-DEMO-RESOURCE-GROUP/providers/Microsoft.Storage/storageAccounts/MY-DEMO-STORAGE-ACCOUNT/;" 
    },
    "container" : { 
        "name" : "my-container", "query" : "<optional-virtual-directory-name>" 
    }
}   

Vom Benutzer zugewiesene verwaltete Identität

Sie müssen eine benutzer zugewiesene verwaltete Identität bereits konfiguriert haben und Ihrem Suchdienst zugeordnet sein, und die Identität muss über eine Rollenzuweisung für Azure Storage verfügen.

Verbindungen, die über vom Benutzer zugewiesene verwaltete Identitäten vorgenommen werden, verwenden dieselben Anmeldeinformationen wie eine vom System zugewiesene verwaltete Identität sowie eine zusätzliche Identitätseigenschaft, die die Sammlung von vom Benutzer zugewiesenen verwalteten Identitäten enthält. Beim Erstellen der Datenquelle sollte nur eine vom Benutzer zugewiesene verwaltete Identität bereitgestellt werden.

Stellen Sie eine Verbindungszeichenfolge bereit, die einen ResourceId ohne Kontoschlüssel oder Kennwort enthält. Dies ResourceId muss die Abonnement-ID des Speicherkontos, die Ressourcengruppe des Speicherkontos und den Namen des Speicherkontos enthalten.

Bereitstellen eines identity unter Verwendung der im folgenden Beispiel gezeigten Syntax. Weisen Sie userAssignedIdentity der vom Benutzer zugewiesenen verwalteten Identität zu.

POST https://[service name].search.windows.net/datasources?api-version=2026-04-01

{
    "name" : "blob-datasource",
    "type" : "azureblob",
    "credentials" : { 
        "connectionString" : "ResourceId=/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/MY-DEMO-RESOURCE-GROUP/providers/Microsoft.Storage/storageAccounts/MY-DEMO-STORAGE-ACCOUNT/;" 
    },
    "container" : { 
        "name" : "my-container", "query" : "<optional-virtual-directory-name>" 
    },
    "identity" : { 
        "@odata.type": "#Microsoft.Azure.Search.DataUserAssignedIdentity",
        "userAssignedIdentity" : "/subscriptions/00000000-0000-0000-0000-00000000/resourcegroups/MY-DEMO-RESOURCE-GROUP/providers/Microsoft.ManagedIdentity/userAssignedIdentities/MY-DEMO-USER-MANAGED-IDENTITY" 
    }
}   

Verbindungsinformationen und -berechtigungen für den Remotedienst werden während der Indexerausführung zur Laufzeit überprüft. Wenn der Indexer erfolgreich ist, sind die Verbindungssyntax und Rollenzuweisungen gültig. Weitere Informationen finden Sie unter Ausführen oder Zurücksetzen von Indexern, Qualifikationen oder Dokumenten.

Zugreifen auf netzwerksicherte Daten in Speicherkonten

Azure Speicherkonten können mithilfe von Firewalls und virtuellen Netzwerken weiter gesichert werden. Wenn Sie Inhalte von einem Speicherkonto indizieren möchten, das über eine Firewall oder ein virtuelles Netzwerk gesichert ist, lesen Sie Indexer-Verbindungen zu Azure Storage als vertrauenswürdigen Dienst herstellen.

Siehe auch