Model Armor auf einem Gateway konfigurieren

Mit Model Armor können Sie dafür sorgen, dass Ihre KI-Agenten Ihre Sicherheits- und Governance-Standards einhalten, ohne dass Sie Filterlogik direkt in den Agenten implementieren müssen. Wenn Sie Model Armor mit Agent Gateway konfigurieren, wendet Model Armor die Sicherheitsrichtlinien für Inhalte Ihrer Organisation an, indem alle Prompts und Antworten, die das Gateway passieren, geprüft werden. Mit dieser Funktion können Sie Sicherheitsvorkehrungen für Inhalte einheitlich für alle KI-Agenten durchsetzen, die dem Gateway unterliegen. Mit Model Armor können Sie Risiken wie Prompt Injection, Jailbreaking-Versuche, die Preisgabe vertraulicher Informationen und die Generierung schädlicher Inhalte minimieren. Weitere Informationen finden Sie unter Model Armor-Filter.

Model Armor-Vorlagen

Wenn Sie Model Armor auf einem Gateway konfigurieren möchten, erstellen Sie Vorlagen, die festlegen, wie die Prompts und Antworten, die Ihre KI-Agenten empfangen und zurückgeben, geprüft werden sollen. Die Vorlagen enthalten benutzerdefinierte Filter und Schwellenwerte für mehrere Sicherheitskategorien. Weitere Informationen finden Sie unter Model Armor-Vorlagen.

Model Armor bettet Prüffunktionen direkt in die Kommunikationspfade ein, die von Agent Gateway verwaltet werden. Wenn der Inhalt über Model Armor geleitet wird, erzwingt das Gateway Ihre Vorlagen für die Inhaltssicherheit. In Ihrer Vorlage können Sie Model Armor so konfigurieren, dass Inhalte, die gegen Ihre Vorlagen verstoßen, unkenntlich gemacht oder blockiert werden.

Ein- und ausgehender Traffic

Über Agent Gateway kann Model Armor die folgenden Traffic-Flüsse schützen.

Client zu Agent (eingehender Agententraffic)

Sie definieren Vorlagen, die Model Armor verwendet, um sowohl Anfragen als auch Antworten im Client-zu-Agent-Traffic zu bewerten. Sie können eine einzelne Vorlage auf beide Richtungen anwenden oder für jede Richtung unterschiedliche Vorlagen konfigurieren.

Model Armor folgt den Vorlagen, wenn Folgendes geprüft wird:

  • Eingehende Anfragen vom Client (Endnutzer oder aufrufende Anwendungen) an Ihren KI-Agenten
  • Ausgehende Antworten des KI-Agenten an den Client

Wenn ein Client einen Prompt an den Agenten sendet, fängt Agent Gateway den Traffic ab und sendet die Nutzlast zur Bereinigung an Model Armor. Wenn Model Armor das Ergebnis ALLOW ausgibt, sendet Agent Gateway den Prompt an den KI-Agenten. Wenn Model Armor das Urteil BLOCK ausgibt, erhält der Client einen Fehler und der Ablauf endet, bevor der KI-Agent erreicht wird.

Nachdem der KI-Agent die Anfrage verarbeitet und eine Antwort generiert hat, fängt das Agent Gateway den ausgehenden Stream ab, bevor er den Client erreicht. Model Armor wertet die Antwort aus und gibt ein Urteil ab. Basierend auf dem Ergebnis lässt das Agent Gateway die Antwort entweder zu oder blockiert sie vollständig.

Agent zu beliebigem Ziel (ausgehender Agententraffic)

Sie definieren Vorlagen, die Model Armor verwendet, um Anfragen und Antworten im Agent-to-Anywhere-Traffic zu bewerten. Sie können eine einzelne Vorlage auf beide Richtungen anwenden oder für jede Richtung unterschiedliche Vorlagen konfigurieren.

Model Armor folgt den Vorlagen, wenn die Kommunikation zwischen Ihrem KI-Agenten und externen Systemen geprüft wird, einschließlich der folgenden:

  • Externe Large Language Models (LLMs)
  • KI-Agenten von Drittanbietern
  • MCP-Server (Model Context Protocol)

Wenn ein KI-Agent mit einem externen System kommuniziert, fängt Agent Gateway den ausgehenden Traffic ab und ruft Model Armor auf. Model Armor wertet die Nutzlast gemäß den von Ihnen festgelegten Vorlagen für ausgehenden Traffic aus.

Wenn die ausgehenden Daten gegen Ihre Sicherheitsrichtlinien verstoßen, gibt Model Armor ein BLOCK-Urteil aus. Das Agent Gateway beendet dann die Verbindung, um zu verhindern, dass schädliche oder sensible Daten das LLM, das Tool oder den externen KI-Agenten erreichen.

Hinweis

Aktivieren Sie die Model Armor API, falls sie noch nicht aktiviert ist.

Erforderliche Rollen zum Aktivieren von APIs

Zum Aktivieren von APIs benötigen Sie die Berechtigung serviceusage.services.enable. Wenn Sie das Projekt erstellt haben, haben Sie diese Berechtigung wahrscheinlich bereits über die Inhaberrolle (roles/owner). Andernfalls können Sie diese Berechtigung über die Rolle „Service Usage-Administrator“ (roles/serviceusage.serviceUsageAdmin) erhalten. Informationen zum Zuweisen von Rollen

API aktivieren

Erforderliche Rollen

Bitten Sie Ihren Administrator, Ihnen die IAM-Rolle Model Armor Admin (roles/modelarmor.admin) für das Projekt zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Erstellen von Model Armor-Vorlagen benötigen. Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.

Sie können die erforderlichen Berechtigungen auch über benutzerdefinierte Rollen oder andere vordefinierte Rollen erhalten.

Informationen zu den Rollen, die für die Arbeit mit Agent Gateway erforderlich sind, finden Sie in der Agent Gateway-Dokumentation unter Erforderliche Rollen.

Informationen zu unterstützten und nicht unterstützten Nutzlasten, die das Gateway passieren, finden Sie in diesem Dokument unter Unterstützte und nicht unterstützte Nutzlasten.

Model Armor auf einem Gateway konfigurieren

So konfigurieren Sie Model Armor auf einem Gateway:

  1. Aktivieren Sie die Model Armor API in dem Projekt, in dem Sie die Model Armor-Vorlagen erstellen möchten.
  2. Erstellen Sie eine oder mehrere Model Armor-Vorlagen in der Region, in der Sie das Gateway hinzufügen möchten. Sie können dieselbe Vorlage sowohl für eingehenden als auch für ausgehenden Traffic verwenden.

    Notieren Sie sich die Vorlagennamen. Wenn Sie den Namen einer Vorlage in derGoogle Cloud Console kopieren möchten, rufen Sie die Details der Vorlage auf und klicken Sie neben dem Vorlagennamen auf In die Zwischenablage kopieren.

    Wenn Sie die Model Armor-Vorlagen in einem anderen Projekt als dem Projekt erstellen, das den KI-Agenten oder das Agent Gateway enthält, und Sie VPC Service Controls verwenden, müssen sich beide Projekte im selben VPC Service Controls-Dienstperimeter befinden.

  3. Richten Sie das Agent Gateway in derselben Region ein, in der die Model Armor-Vorlagen gespeichert sind. Geben Sie für das Client-zu-Agent-Gateway (eingehend) die Model Armor-Vorlagen an, die Sie für eingehenden Traffic erstellt haben. Geben Sie für das Agent-to-Anywhere-Gateway (ausgehend) die Model Armor-Vorlagen an, die Sie für ausgehenden Traffic erstellt haben. Sie können für beide Trafficflüsse dieselbe Vorlage verwenden.

  4. Weisen Sie den entsprechenden Dienst-Agents die erforderlichen IAM-Rollen zu:

    • Client zu Agent (eingehend): Weisen Sie dem KI-Plattform Reasoning Engine-Dienst-Agent die folgenden Rollen zu:

      • Die Rolle „Model Armor Callout User“ (roles/modelarmor.calloutUser) im Projekt, das den KI-Agenten enthält.

      • Die Rolle „Model Armor User“ (roles/modelarmor.user) im Projekt, das die Model Armor-Vorlage enthält.

      gcloud projects add-iam-policy-binding AGENT_RUNTIME_PROJECT_ID \
          --member=serviceAccount:service-AGENT_RUNTIME_PROJECT_NUMBER@gcp-sa-aiplatform-re.iam.gserviceaccount.com \
          --role=roles/modelarmor.calloutUser
      gcloud projects add-iam-policy-binding MODEL_ARMOR_PROJECT_ID \
          --member=serviceAccount:service-AGENT_RUNTIME_PROJECT_NUMBER@gcp-sa-aiplatform-re.iam.gserviceaccount.com \
          --role=roles/modelarmor.user
      

      Ersetzen Sie Folgendes:

      • AGENT_RUNTIME_PROJECT_ID: Die Projekt-ID des Projekts, in dem Sie den Agenten erstellt haben.
      • AGENT_RUNTIME_PROJECT_NUMBER: Die Projektnummer des Projekts, in dem Sie den Agenten erstellt haben.
      • MODEL_ARMOR_PROJECT_ID: Die Projekt-ID des Projekts, das die Model Armor-Vorlage enthält.
    • Agent-to-Anywhere (ausgehend): Weisen Sie dem Service Extensions-Dienst-Agenten die folgenden Rollen zu:

      • Die Rollen „Model Armor Callout User“ (roles/modelarmor.calloutUser) und „Service Usage Consumer“ (roles/serviceusage.serviceUsageConsumer) im Projekt, das das Gateway enthält.
      • Die Rolle „Model Armor User“ (roles/modelarmor.user) in dem Projekt, das die Model Armor-Vorlage enthält.
      gcloud projects add-iam-policy-binding GATEWAY_PROJECT_ID \
          --member=serviceAccount:service-GATEWAY_PROJECT_NUMBER@gcp-sa-dep.iam.gserviceaccount.com \
          --role=roles/modelarmor.calloutUser
      gcloud projects add-iam-policy-binding GATEWAY_PROJECT_ID \
          --member=serviceAccount:service-GATEWAY_PROJECT_NUMBER@gcp-sa-dep.iam.gserviceaccount.com \
          --role=roles/serviceusage.serviceUsageConsumer
      gcloud projects add-iam-policy-binding MODEL_ARMOR_PROJECT_ID \
          --member=serviceAccount:service-GATEWAY_PROJECT_NUMBER@gcp-sa-dep.iam.gserviceaccount.com \
          --role=roles/modelarmor.user
      

      Ersetzen Sie Folgendes:

      • GATEWAY_PROJECT_ID: Die Projekt-ID des Projekts, in dem Sie das Gateway erstellt haben.
      • GATEWAY_PROJECT_NUMBER: Die Projektnummer des Projekts, in dem Sie das Gateway erstellt haben.
      • MODEL_ARMOR_PROJECT_ID: Die Projekt-ID des Projekts, das die Model Armor-Vorlage enthält.

      Eine Anleitung finden Sie unter Autorisierung an Model Armor delegieren.

    Allgemeine Informationen zum Zuweisen einer Rolle finden Sie unter Einzelne IAM-Rolle zuweisen.

Optional: Vorlagenvalidierung vor der Bereitstellung

Bevor Sie Ihre Vorlagen auf einem Gateway bereitstellen, können Sie eine Vorabprüfung durchführen, um zu prüfen, ob Ihre Vorlagenkonfiguration Ihre Sicherheitsrichtlinien korrekt erzwingt.

Sie können Ihre Vorlage validieren, indem Sie die Methode sanitizeUserPrompt direkt mit einer Reihe von Test-Prompts abfragen. Weitere Informationen zum Ausführen dieser Prüfung vor der Bereitstellung und eine Liste der verifizierten Test-Prompts finden Sie unter Model Armor-Vorlage testen.

Sensible Daten aus Anfragen und Antworten entfernen

Sie können Model Armor anweisen, sensible Daten wie Personenkennzeichen und Telefonnummern aus Nutzlasten zu entfernen. So verwenden Sie diese Funktion:

Wenn Sie den Erzwingungstyp INSPECT_AND_BLOCK verwenden, geschieht Folgendes:

  • Wenn eine Nutzlast nur gegen den Sensitive Data Protection-Detektor verstößt, wird sie von Model Armor gemäß Ihren erweiterten Sensitive Data Protection-Einstellungen und der De-Identifikationsvorlage unkenntlich gemacht.

  • Wenn eine Nutzlast gegen mehrere Detektoren verstößt, führt Model Armor keine Entfernung durch, sondern blockiert die gesamte Nutzlast.

Wenn Sie den Erzwingungstyp INSPECT_ONLY anstelle von INSPECT_AND_BLOCK verwenden, wird die Nutzlast von Model Armor nicht entfernt.

Unabhängig von der Art der Erzwingung (INSPECT_ONLY oder INSPECT_AND_BLOCK) werden Model Armor-Logs gemäß Ihren erweiterten Einstellungen für den Schutz sensibler Daten und der Vorlage für die De-Identifikation entfernt.

Eine vollständige Liste der Model Armor-Detektoren (auch Filter genannt) finden Sie unter Model Armor-Filter.

Unterstützte und nicht unterstützte Nutzlasten

In diesem Abschnitt werden die Arten von Nutzlasten aufgeführt, die von Model Armor bereinigt werden.

Client-zu-Agent-Traffic (eingehend)

Bei Client-zu-Agent-Traffic (eingehend) über das ADK-Protokoll bereinigt Model Armor nur reasoningEngines.streamQuery-Anfragen und -Antworten für Agenten, die mit dem Agent Development Kit (ADK) erstellt wurden und in der Vertex AI Agent Engine ausgeführt werden.

Alle anderen ReasoningEngine-Nutzlasten und ReasoningEngine-Fehlerantworten werden nicht an Model Armor gesendet. Nicht-ADK-Nutzlasten (z. B. Langchain-Nutzlasten) werden ebenfalls nicht an Model Armor gesendet.

Traffic von KI-Agent zu beliebigem Ziel (ausgehend)

Für den Traffic vom Agent zu einem beliebigen Ziel (ausgehend) werden die folgenden Nutzlasten unterstützt.

A2A-Nutzlasten

Model Armor bereinigt nur die folgenden Nutzlasten des A2A v1-Protokolls:

Model Armor lässt die folgenden A2A-Nutzlasten ohne Bereinigung zu:

MCP-Nutzlasten

Model Armor bereinigt nur die folgenden MCP-Nutzlasten:

  • tools/call-Anfrage und -Antwort
  • prompts/get-Anfrage und -Antwort
  • MCP-Tool-Ausführungsfehler (Ziel für Prompt Injection durch böswillige MCP-Tool-Autoren)

Model Armor lässt die folgenden Nutzlasten ohne Bereinigung zu:

  • tools/list
  • resources/*
  • notifications/*
  • Streamable HTTP/SSE for MCP
  • MCP-Protokollfehler (z. B. alle Fehler außer Fehlern bei der Toolausführung)

Externe LLM-Nutzlasten

Model Armor bereinigt nur die folgenden Payloads des OpenAI API-Protokolls (ausgehend), einschließlich GPT-Modellen auf openai.com sowie aller anderen Modelle über OpenAI API-kompatible LLM-Server (z. B. vLLM). Nutzlasten, die hier nicht aufgeführt sind, sind ohne Bereinigung zulässig.

Dokumentenprüfung

Das Bereinigen von Prompts und Antworten, die Dokumente oder Dateiuploads (z. B. PDFs) enthalten, wird in dieser Integration nicht unterstützt. Wenn Sie Dokumente prüfen möchten, rufen Sie die Model Armor REST API direkt auf. Weitere Informationen finden Sie in der Model Armor-Dokumentation unter Dokumentprüfung.

Kontingente und Systemlimits

Das Kontingent wird in dem Projekt verbraucht, in dem sich die Model Armor-Vorlagen befinden. Wenn sich das Gateway in einem anderen Projekt befindet, wird das ExternalProcessor-Kontingent auch im Gateway-Projekt verbraucht.

Weitere Informationen zu Kontingenten, die gelten, wenn Sie Model Armor mit anderen Diensten verwenden, finden Sie unter Kontingente verwalten.

Allgemeine Informationen zu Model Armor-Kontingenten und Systemlimits, einschließlich Eingabegröße und Tokenlimits, finden Sie in der Model Armor-Dokumentation unter Kontingente und Systemlimits.

Nächste Schritte