Einrichten der privaten ausgehenden Konnektivität

Wichtig

Diese Lernprogrammreihe verwendet die REST-API 2026-08-01-Preview für den agentischen Abruf. Die Vorschau 2026-08-01 wird Ihnen als Teil Ihres Azure-Abonnements lizenziert und unterliegt den Bedingungen für "Vorschauen" in den Microsoft Produktbedingungen, dem Microsoft Produkt- und Dienstdatenschutzzusatz ("DPA") und den ergänzenden Nutzungsbedingungen für Microsoft Azure Previews.

Dieser Artikel ist Teil 2 einer dreiteiligen Lernprogrammreihe. In diesem Teil des Tutorials erstellen Sie ausgehende gemeinsam genutzte private Links von Azure KI-Suche zu Azure Blob Storage und Microsoft Foundry, genehmigen die entsprechenden Private-Endpunktverbindungen und weisen der verwalteten Identität von Azure KI-Suche die Rollen zu, die sie zum Lesen von Blobinhalten und zum Aufrufen von Modellendpunkten benötigt. Die End-to-End-Überprüfung des vollständigen Abrufpfads erfolgt in Teil 3.

Voraussetzungen

  • Abschluss der Einrichtung privater eingehender Verbindungen.

  • Zusätzlicher Kontozugriff für Aktionen in Teil 2:

    • Contributor oder Owner auf dem Azure KI-Suche-Dienst, um freigegebene private Verbindungen zu erstellen.

    • Contributor oder Owner für das Azure Storage-Konto und die Foundry-Ressource, um private Endpunktverbindungen auf der Zielseite zu genehmigen.

    • Owner, User Access Administrator oder Role Based Access Control Administrator in Bereichen, in denen Sie Rollenzuweisungen erstellen, um Laufzeitzugriff auf die verwaltete Identität der Suche zu gewähren.

  • Rollenbasierte Zugriffssteuerung und eine vom System zugewiesene verwaltete Identität, die im Azure KI-Suche-Dienst aktiviert ist.

Erstellen Sie freigegebene private Links auf Azure KI-Suche, damit der Suchdienst den erforderlichen ausgehenden Zugriff auf jedes Ziel initiieren kann. In Teil 3 des Lernprogramms erstellen Sie eine Wissensquelle, die BLOB-Inhalte aus dem Azure Storage-Konto liest und eine Einbettungsmodellbereitstellung in der Foundry-Ressource aufruft, um diesen Inhalt zu vektorisieren. Das Lesen des Blobs verwendet den freigegebenen privaten Link für Azure Storage. Die freigegebene private Verbindung von Foundry ist weiterhin für die Beziehung zur Zielressource erforderlich, aber der in Teil 3 beschriebene Einbettungsaufruf zum Erfassungszeitpunkt ist derzeit ebenfalls auf die Umgehung für vertrauenswürdige Dienste der Foundry-Ressource angewiesen.

Tipp

Ersetzen Sie bei den entsprechenden Befehlen in diesem Artikel die Platzhalter <...-name> und <subscription-id> durch die Ressourcennamen und die Abonnement-ID, die Sie in Teil 1 notiert haben.

So erstellen Sie die geteilten privaten Links:

  1. Überprüfen Sie vorhandene geteilte private Links.

    az search shared-private-link-resource list \
      --service-name <search-service-name> \
      --resource-group rg-private-retrieval
    
  2. Erstellen Sie den freigegebenen privaten Link für Azure Blob Storage.

    az search shared-private-link-resource create \
      --name spl-blob-private-retrieval \
      --service-name <search-service-name> \
      --resource-group rg-private-retrieval \
      --group-id blob \
      --resource-id "/subscriptions/<subscription-id>/resourceGroups/rg-private-retrieval/providers/Microsoft.Storage/storageAccounts/<storage-account-name>" \
      --request-message "Approve private blob access for Azure AI Search"
    
  3. Erstellen Sie die freigegebene private Verbindung für die Foundry-Ressource.

    az rest --method put \
      --uri "https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/rg-private-retrieval/providers/Microsoft.Search/searchServices/<search-service-name>/sharedPrivateLinkResources/spl-foundry-private-retrieval?api-version=2025-05-01" \
      --body '{
        "properties": {
          "groupId": "openai_account",
          "privateLinkResourceId": "/subscriptions/<subscription-id>/resourceGroups/rg-private-retrieval/providers/Microsoft.CognitiveServices/accounts/<foundry-resource-name>",
         "requestMessage": "Approve private model access for Azure AI Search"
        }
      }'
    

    Hinweis

    • Der Befehl az search shared-private-link-resource create kann openai_account ablehnen, auch wenn der Suchdienst die Ressource über die Search Management-REST-API akzeptiert. Verwenden Sie den az rest hier gezeigten Ansatz, um Validierungsfehler zu vermeiden.

    • Dieser freigegebene private Link verwendet openai_account, da Azure KI-Suche über den Azure OpenAI-Endpunkttyp auf die Modellinferenz für die Foundry-Ressource zugreift.

Wichtig

Lassen Sie für dieses Lernprogramm die Einstellung Azure-Dienste in der Liste der vertrauenswürdigen Dienste zulassen der Foundry-Ressource aktiviert. Die freigegebene private openai_account-Verbindung leitet derzeit den Einbettungsaufruf zur Erfassungszeit nicht von Azure KI-Suche an Foundry weiter. Wenn Sie die Umgehung für vertrauenswürdige Dienste deaktivieren (networkAcls.bypass = AzureServices), kann die Aufnahme von Wissensquellen mit 403 Public access is disabled fehlschlagen, auch wenn die freigegebenen privaten Verbindungen und privaten Endpunkte genehmigt sind.

Genehmigen von privaten Endpunktverbindungen

Gemeinsam genutzte private Links legen die Absicht fest, aber Genehmigungen auf der Zielseite legen die Vertrauensgrenzen fest, die den Datenverkehr ermöglichen. In diesem Abschnitt genehmigen Sie jede entsprechende private Endpunktverbindung für Azure Storage und Foundry, um ausgehenden Zugriff zu autorisieren.

So genehmigen Sie die private Endpunktverbindung für jede Zielressource:

  1. Listen Sie die privaten Endpunktverbindungen für <storage-account-name> auf, und kopieren Sie dann den Namen der Pending-Verbindung, um ihn im nächsten Schritt als <storage-connection-name> zu verwenden.

    az network private-endpoint-connection list \
      --id /subscriptions/<subscription-id>/resourceGroups/rg-private-retrieval/providers/Microsoft.Storage/storageAccounts/<storage-account-name> \
      --query "[].{name:name,status:properties.privateLinkServiceConnectionState.status}" \
      -o table
    
  2. Genehmigen Sie die Verbindung mit dem privaten Endpunkt von Azure Blob Storage.

    az network private-endpoint-connection approve \
      --id /subscriptions/<subscription-id>/resourceGroups/rg-private-retrieval/providers/Microsoft.Storage/storageAccounts/<storage-account-name>/privateEndpointConnections/<storage-connection-name>
    
  3. Listen Sie die privaten Endpunktverbindungen für <foundry-resource-name> auf, und kopieren Sie dann den Namen der Pending-Verbindung, um ihn im nächsten Schritt als <foundry-connection-name> zu verwenden.

    Diese Verbindung kann eine oder zwei Minuten dauern, bis sie angezeigt werden, nachdem Sie den freigegebenen privaten Link erstellt haben. Wenn die Liste leer ist, warten Sie kurz, und führen Sie dann den Befehl erneut aus.

    az network private-endpoint-connection list \
      --id /subscriptions/<subscription-id>/resourceGroups/rg-private-retrieval/providers/Microsoft.CognitiveServices/accounts/<foundry-resource-name> \
      --query "[].{name:name,status:properties.privateLinkServiceConnectionState.status}" \
      -o table
    
  4. Private Endpunktverbindung der Foundry-Ressource genehmigen.

    Wenn der Verbindungsname im <foundry-resource-name>/<connection-name> Format zurückgegeben wird, verwenden Sie nur den Teil nach dem Schrägstrich als <foundry-connection-name>.

    az network private-endpoint-connection approve \
      --id /subscriptions/<subscription-id>/resourceGroups/rg-private-retrieval/providers/Microsoft.CognitiveServices/accounts/<foundry-resource-name>/privateEndpointConnections/<foundry-connection-name>
    
  5. Stellen Sie sicher, dass die speziellen freigegebenen privaten Links, die Sie auf Azure KI-Suche erstellt haben, einen Approved Status aufweisen.

    az search shared-private-link-resource list \
      --service-name <search-service-name> \
      --resource-group rg-private-retrieval \
      --query "[].{name:name,status:properties.status}" \
      -o table
    

    Die Zeilen für spl-blob-private-retrieval und spl-foundry-private-retrieval sollten Approved anzeigen.

Rollen für verwaltete Identitäten zuweisen

Nachdem Sie Private Links genehmigt haben, weisen Sie der verwalteten Identität von Azure KI-Suche RBAC-Rollen zu, damit Laufzeitaufrufe in Teil 3 des Lernprogramms auf Blobinhalte und Modellendpunkte zugreifen können. Private Netzwerke steuern den Pfadzugriff, während RBAC Daten- und Modellautorisierung steuert.

So weisen Sie der Azure KI-Suche verwalteten Identität Rollen zu:

  1. Rufen Sie die Objekt-ID der verwalteten Identität von Azure KI-Suche ab, um sie in den folgenden Befehlen als <search-mi-object-id> zu verwenden.

    az search service show \
      --name <search-service-name> \
      --resource-group rg-private-retrieval \
      --query identity.principalId \
      -o tsv
    
  2. Weisen Sie der verwalteten Identität von Azure KI-Suche im Geltungsbereich des Speicherkontos die Rolle Storage Blob Data Reader zu.

    Diese Rolle ist erforderlich, damit Azure KI-Suche blob-Inhalte während der Aufnahme und beim Abrufen lesen kann.

    az role assignment create \
      --assignee-object-id <search-mi-object-id> \
      --assignee-principal-type ServicePrincipal \
      --role "Storage Blob Data Reader" \
      --scope "/subscriptions/<subscription-id>/resourceGroups/rg-private-retrieval/providers/Microsoft.Storage/storageAccounts/<storage-account-name>"
    
  3. Weisen Sie der verwalteten Identität von Azure KI-Suche im Geltungsbereich der Foundry-Ressource die Cognitive Services User-Rolle zu.

    Diese Rolle ist erforderlich, damit Azure KI-Suche Modell-Ableitungsendpunkte für die Foundry-Ressource aufrufen können.

    az role assignment create \
      --assignee-object-id <search-mi-object-id> \
      --assignee-principal-type ServicePrincipal \
      --role "Cognitive Services User" \
      --scope "/subscriptions/<subscription-id>/resourceGroups/rg-private-retrieval/providers/Microsoft.CognitiveServices/accounts/<foundry-resource-name>"
    
  4. Vergewissern Sie sich, dass beide Rollenzuweisungen erfolgreich erstellt wurden.

    az role assignment list \
      --assignee-object-id <search-mi-object-id> \
      --query "[].{role:roleDefinitionName,scope:scope}" \
      -o table
    

    Sie sollten die Rollen Storage Blob Data Reader und Cognitive Services User aufgelistet sehen.

Problembehandlung

Ausgehender privater Abruf funktioniert nur, wenn das Erstellen freigegebener privater Verbindungen, die Genehmigung des Ziels und die RBAC-Autorisierung aufeinander abgestimmt sind. Verwenden Sie die folgende Tabelle, um zu isolieren, welche Steuerungsebene fehlschlägt, damit Sie die spezifische Abhängigkeitsgrenze vor der End-to-End-Überprüfung korrigieren können.

Prüfung oder Symptom Wahrscheinliches Problem Nächste Schritte
Status des freigegebenen privaten Links bleibt Pending Die private Endpunktverbindung ist für die Zielressource nicht genehmigt. Genehmigen Sie die Verbindung in Azure Storage oder in der Foundry-Ressource, und überprüfen Sie dann erneut den Status des gemeinsam genutzten privaten Links.
Fehler bei der Erstellung freigegebener privater Verbindungen Falsche Ressourcen-ID, Gruppen-ID oder API-Version. Überprüfen Sie die Ressourcen-ID und gruppen-ID erneut. Bestätigen Sie für den Link "Foundry" die openai_account Gruppen-ID und die 2025-05-01 API-Version.
az role assignment create schlägt mit einem Autorisierungsfehler fehl Ihr Konto verfügt nicht über die Berechtigung zum Erstellen von Rollenzuweisungen im Zielbereich. Vergewissern Sie sich, dass Ihr Konto auf der Ebene des Azure Storage-Kontos und der Foundry-Ressource über Owner, User Access Administrator oder Role Based Access Control Administrator verfügt.

Learn more

Weitere Informationen zu den themen, die in diesem Teil des Lernprogramms behandelt werden, finden Sie in den folgenden Artikeln:

Nächster Schritt