Model Armor-Audit und Plattform-Logging

In diesem Dokument wird Audit-Logging für Model Armor beschrieben. Google Cloud -Dienste generieren Audit-Logs, die Verwaltungs- und Zugriffsaktivitäten in Ihren Google Cloud Ressourcen aufzeichnen. Weitere Informationen zu Cloud-Audit-Logs finden Sie hier:

Dienstname

Für Model Armor-Audit-Logs wird der Dienstname modelarmor.googleapis.com verwendet. Nach diesem Dienst filtern:

    protoPayload.serviceName="modelarmor.googleapis.com"
  

Methoden nach Berechtigungstyp

Jede IAM-Berechtigung hat ein type-Attribut, dessen Wert ein Enum ist, der einen der folgenden vier Werte haben kann: ADMIN_READ, ADMIN_WRITE, DATA_READ oder DATA_WRITE. Wenn Sie eine Methode aufrufen, generiert Model Armor ein Audit-Log, dessen Kategorie vom Attribut type der Berechtigung abhängt, die für die Ausführung der Methode erforderlich ist. Methoden, die eine IAM-Berechtigung mit dem type-Attributwert DATA_READ, DATA_WRITE oder ADMIN_READ erfordern, generieren Audit-Logs zum Datenzugriff. Methoden, die eine IAM-Berechtigung mit dem type-Attributwert ADMIN_WRITE erfordern, generieren Audit-Logs zur Administratoraktivität.

Berechtigungstyp Methoden
ADMIN_READ google.cloud.modelarmor.v1.ModelArmor.GetFloorSetting
google.cloud.modelarmor.v1.ModelArmor.GetTemplate
google.cloud.modelarmor.v1.ModelArmor.ListTemplates
google.cloud.modelarmor.v1alpha.ModelArmor.GetFloorSetting
google.cloud.modelarmor.v1alpha.ModelArmor.GetTemplate
google.cloud.modelarmor.v1alpha.ModelArmor.ListTemplates
ADMIN_WRITE google.cloud.modelarmor.v1.ModelArmor.CreateTemplate
google.cloud.modelarmor.v1.ModelArmor.DeleteTemplate
google.cloud.modelarmor.v1.ModelArmor.UpdateFloorSetting
google.cloud.modelarmor.v1.ModelArmor.UpdateTemplate
google.cloud.modelarmor.v1alpha.ModelArmor.CreateTemplate
google.cloud.modelarmor.v1alpha.ModelArmor.DeleteTemplate
google.cloud.modelarmor.v1alpha.ModelArmor.UpdateFloorSetting
google.cloud.modelarmor.v1alpha.ModelArmor.UpdateTemplate
DATA_READ google.cloud.modelarmor.v1.ModelArmor.SanitizeModelResponse
google.cloud.modelarmor.v1.ModelArmor.SanitizeUserPrompt
google.cloud.modelarmor.v1alpha.ModelArmor.SanitizeModelResponse
google.cloud.modelarmor.v1alpha.ModelArmor.SanitizeUserPrompt

Audit-Logs der API-Schnittstelle

Informationen dazu, wie und welche Berechtigungen für die einzelnen Methoden evaluiert werden, finden Sie in der Dokumentation zur Identitäts- und Zugriffsverwaltung für Model Armor.

google.cloud.modelarmor.v1.ModelArmor

Die folgenden Audit-Logs sind Methoden zugeordnet, die zu google.cloud.modelarmor.v1.ModelArmor gehören.

CreateTemplate

  • Methode: google.cloud.modelarmor.v1.ModelArmor.CreateTemplate
  • Audit-Logtyp: Administratoraktivität
  • Berechtigungen:
    • modelarmor.templates.create - ADMIN_WRITE
  • Methode ist ein Vorgang mit langer Ausführungszeit oder Streamingvorgang: Nr.
  • Filter für diese Methode: protoPayload.methodName="google.cloud.modelarmor.v1.ModelArmor.CreateTemplate"

DeleteTemplate

  • Methode: google.cloud.modelarmor.v1.ModelArmor.DeleteTemplate
  • Audit-Logtyp: Administratoraktivität
  • Berechtigungen:
    • modelarmor.templates.delete - ADMIN_WRITE
  • Methode ist ein Vorgang mit langer Ausführungszeit oder Streamingvorgang: Nr.
  • Filter für diese Methode: protoPayload.methodName="google.cloud.modelarmor.v1.ModelArmor.DeleteTemplate"

GetFloorSetting

  • Methode: google.cloud.modelarmor.v1.ModelArmor.GetFloorSetting
  • Audit-Logtyp: Datenzugriff
  • Berechtigungen:
    • modelarmor.floorSettings.get - ADMIN_READ
  • Methode ist ein Vorgang mit langer Ausführungszeit oder Streamingvorgang: Nr.
  • Filter für diese Methode: protoPayload.methodName="google.cloud.modelarmor.v1.ModelArmor.GetFloorSetting"

GetTemplate

  • Methode: google.cloud.modelarmor.v1.ModelArmor.GetTemplate
  • Audit-Logtyp: Datenzugriff
  • Berechtigungen:
    • modelarmor.templates.get - ADMIN_READ
  • Methode ist ein Vorgang mit langer Ausführungszeit oder Streamingvorgang: Nr.
  • Filter für diese Methode: protoPayload.methodName="google.cloud.modelarmor.v1.ModelArmor.GetTemplate"

ListTemplates

  • Methode: google.cloud.modelarmor.v1.ModelArmor.ListTemplates
  • Audit-Logtyp: Datenzugriff
  • Berechtigungen:
    • modelarmor.templates.list - ADMIN_READ
  • Methode ist ein Vorgang mit langer Ausführungszeit oder Streamingvorgang: Nr.
  • Filter für diese Methode: protoPayload.methodName="google.cloud.modelarmor.v1.ModelArmor.ListTemplates"

SanitizeModelResponse

  • Methode: google.cloud.modelarmor.v1.ModelArmor.SanitizeModelResponse
  • Audit-Logtyp: Datenzugriff
  • Berechtigungen:
    • modelarmor.templates.useToSanitizeModelResponse - DATA_READ
  • Methode ist ein Vorgang mit langer Ausführungszeit oder Streamingvorgang: Nr.
  • Filter für diese Methode: protoPayload.methodName="google.cloud.modelarmor.v1.ModelArmor.SanitizeModelResponse"

SanitizeUserPrompt

  • Methode: google.cloud.modelarmor.v1.ModelArmor.SanitizeUserPrompt
  • Audit-Logtyp: Datenzugriff
  • Berechtigungen:
    • modelarmor.templates.useToSanitizeUserPrompt - DATA_READ
  • Methode ist ein Vorgang mit langer Ausführungszeit oder Streamingvorgang: Nr.
  • Filter für diese Methode: protoPayload.methodName="google.cloud.modelarmor.v1.ModelArmor.SanitizeUserPrompt"

UpdateFloorSetting

  • Methode: google.cloud.modelarmor.v1.ModelArmor.UpdateFloorSetting
  • Audit-Logtyp: Administratoraktivität
  • Berechtigungen:
    • modelarmor.floorSettings.update - ADMIN_WRITE
  • Methode ist ein Vorgang mit langer Ausführungszeit oder Streamingvorgang: Nr.
  • Filter für diese Methode: protoPayload.methodName="google.cloud.modelarmor.v1.ModelArmor.UpdateFloorSetting"

UpdateTemplate

  • Methode: google.cloud.modelarmor.v1.ModelArmor.UpdateTemplate
  • Audit-Logtyp: Administratoraktivität
  • Berechtigungen:
    • modelarmor.templates.update - ADMIN_WRITE
  • Methode ist ein Vorgang mit langer Ausführungszeit oder Streamingvorgang: Nr.
  • Filter für diese Methode: protoPayload.methodName="google.cloud.modelarmor.v1.ModelArmor.UpdateTemplate"

google.cloud.modelarmor.v1alpha.ModelArmor

Die folgenden Audit-Logs sind Methoden zugeordnet, die zu google.cloud.modelarmor.v1alpha.ModelArmor gehören.

CreateTemplate

  • Methode: google.cloud.modelarmor.v1alpha.ModelArmor.CreateTemplate
  • Audit-Logtyp: Administratoraktivität
  • Berechtigungen:
    • modelarmor.templates.create - ADMIN_WRITE
  • Methode ist ein Vorgang mit langer Ausführungszeit oder Streamingvorgang: Nr.
  • Filter für diese Methode: protoPayload.methodName="google.cloud.modelarmor.v1alpha.ModelArmor.CreateTemplate"

DeleteTemplate

  • Methode: google.cloud.modelarmor.v1alpha.ModelArmor.DeleteTemplate
  • Audit-Logtyp: Administratoraktivität
  • Berechtigungen:
    • modelarmor.templates.delete - ADMIN_WRITE
  • Methode ist ein Vorgang mit langer Ausführungszeit oder Streamingvorgang: Nr.
  • Filter für diese Methode: protoPayload.methodName="google.cloud.modelarmor.v1alpha.ModelArmor.DeleteTemplate"

GetFloorSetting

  • Methode: google.cloud.modelarmor.v1alpha.ModelArmor.GetFloorSetting
  • Audit-Logtyp: Datenzugriff
  • Berechtigungen:
    • modelarmor.floorSettings.get - ADMIN_READ
  • Methode ist ein Vorgang mit langer Ausführungszeit oder Streamingvorgang: Nr.
  • Filter für diese Methode: protoPayload.methodName="google.cloud.modelarmor.v1alpha.ModelArmor.GetFloorSetting"

GetTemplate

  • Methode: google.cloud.modelarmor.v1alpha.ModelArmor.GetTemplate
  • Audit-Logtyp: Datenzugriff
  • Berechtigungen:
    • modelarmor.templates.get - ADMIN_READ
  • Methode ist ein Vorgang mit langer Ausführungszeit oder Streamingvorgang: Nr.
  • Filter für diese Methode: protoPayload.methodName="google.cloud.modelarmor.v1alpha.ModelArmor.GetTemplate"

ListTemplates

  • Methode: google.cloud.modelarmor.v1alpha.ModelArmor.ListTemplates
  • Audit-Logtyp: Datenzugriff
  • Berechtigungen:
    • modelarmor.templates.list - ADMIN_READ
  • Methode ist ein Vorgang mit langer Ausführungszeit oder Streamingvorgang: Nr.
  • Filter für diese Methode: protoPayload.methodName="google.cloud.modelarmor.v1alpha.ModelArmor.ListTemplates"

SanitizeModelResponse

  • Methode: google.cloud.modelarmor.v1alpha.ModelArmor.SanitizeModelResponse
  • Audit-Logtyp: Datenzugriff
  • Berechtigungen:
    • modelarmor.templates.useToSanitizeModelResponse - DATA_READ
  • Methode ist ein Vorgang mit langer Ausführungszeit oder Streamingvorgang: Nr.
  • Filter für diese Methode: protoPayload.methodName="google.cloud.modelarmor.v1alpha.ModelArmor.SanitizeModelResponse"

SanitizeUserPrompt

  • Methode: google.cloud.modelarmor.v1alpha.ModelArmor.SanitizeUserPrompt
  • Audit-Logtyp: Datenzugriff
  • Berechtigungen:
    • modelarmor.templates.useToSanitizeUserPrompt - DATA_READ
  • Methode ist ein Vorgang mit langer Ausführungszeit oder Streamingvorgang: Nr.
  • Filter für diese Methode: protoPayload.methodName="google.cloud.modelarmor.v1alpha.ModelArmor.SanitizeUserPrompt"

UpdateFloorSetting

  • Methode: google.cloud.modelarmor.v1alpha.ModelArmor.UpdateFloorSetting
  • Audit-Logtyp: Administratoraktivität
  • Berechtigungen:
    • modelarmor.floorSettings.update - ADMIN_WRITE
  • Methode ist ein Vorgang mit langer Ausführungszeit oder Streamingvorgang: Nr.
  • Filter für diese Methode: protoPayload.methodName="google.cloud.modelarmor.v1alpha.ModelArmor.UpdateFloorSetting"

UpdateTemplate

  • Methode: google.cloud.modelarmor.v1alpha.ModelArmor.UpdateTemplate
  • Audit-Logtyp: Administratoraktivität
  • Berechtigungen:
    • modelarmor.templates.update - ADMIN_WRITE
  • Methode ist ein Vorgang mit langer Ausführungszeit oder Streamingvorgang: Nr.
  • Filter für diese Methode: protoPayload.methodName="google.cloud.modelarmor.v1alpha.ModelArmor.UpdateTemplate"

Methoden, die keine Audit-Logs generieren

Eine Methode kann aus folgenden Gründen keine Audit-Logs erstellen:

  • Dies ist eine Methode mit hohem Volumen, die erhebliche Loggenerierungs- und Speicherkosten mit sich bringt.
  • Sie hat einen geringen Prüfwert.
  • Ein anderes Audit- oder Plattformlog bietet bereits eine Methodenabdeckung.

Die folgenden Methoden generieren keine Audit-Logs:

  • envoy.service.ext_proc.v3.ExternalProcessor.Process
  • google.cloud.location.Locations.GetLocation
  • google.cloud.location.Locations.ListLocations

Logging-Konfiguration

Sie können Model Armor so konfigurieren, dass die folgenden Vorgänge protokolliert werden:

  • Vorlage erstellen, aktualisieren und löschen
  • Nutzerprompt und Modellantwort bereinigen

  curl -X POST \
   -d "{filter_config: {}, 'template_metadata': { 'log_template_operations': 'true', 'log_sanitize_operations': 'true'} }" \
   -H "Content-Type: application/json" \
   -H "Authorization: Bearer $(gcloud auth print-access-token)" \
     "https://modelarmor.<var>LOCATION</var>.rep.googleapis.com/v1/projects/<var>PROJECT_ID</var>/locations/<var>LOCATION</var>/templates?template_id=<var>TEMPLATE_ID</var>"

   request = modelarmor_v1.CreateTemplateRequest(
     parent="projects/PROJECT_ID/locations/LOCATION",
     template_id="TEMPLATE_ID",
     template={
        "name": "projects/PROJECT_ID/locations/LOCATION/templates/TEMPLATE_ID",
        "filter_config": {},
        "template_metadata": {
           "log_template_operations": True,
           "log_sanitize_operations": True
        }
     }
   )
   response = client.create_template(request=request)
   

  • log_template_operations : Boolescher Wert, der angibt, ob die Vorgänge zum Erstellen, Aktualisieren, Lesen und Löschen von Vorlagen in den Plattformprotokollen protokolliert werden sollen.

  • log_sanitize_operations : Boolescher Wert, der angibt, ob die Sanitizer-Vorgänge in den Plattformprotokollen protokolliert werden sollen. Die Protokolle enthalten den Prompt und die Antwort, die Bewertungsergebnisse von Model Armor und zusätzliche Metadatenfelder.

    Ersetzen Sie Folgendes:

    • PROJECT_ID ist die ID des Projekts, zu dem die Vorlage gehört.
    • LOCATION ist der Speicherort der Vorlage.
    • TEMPLATE_ID ist die ID der Vorlage.