Model Armor-Etageneinstellungen

Mit den Mindesteinstellungen für Model Armor werden Regeln definiert, die Mindestanforderungen für alle Model Armor-Vorlagen festlegen, die an einem bestimmten Punkt in der Google Cloud Ressourcenhierarchie (d. h. auf Organisations-, Ordner- oder Projektebene) erstellt wurden. Wenn mehrere Einstellungen für Stockwerke miteinander in Konflikt stehen, haben die Einstellungen in der Ressourcenhierarchie mit der niedrigeren Ebene Vorrang. Wenn beispielsweise eine Richtlinie für die Mindesteinstellung auf Ordner- und Projektebene erstellt wird, wird die Richtlinie auf Projektebene angewendet.

Hier ein Beispiel, das zeigt, wie eine Richtlinie für die Mindestpreiseinstellung von Model Armor funktioniert. Die Floor-Richtlinie X ist für einen Ordner festgelegt, in dem der Filter für schädliche URLs aktiviert ist. Die Mindestrichtlinie Y ist für ein Projekt in diesem Ordner für den Prompt-Injection- und Jailbreak-Erkennungsfilter mit einem mittleren Konfidenzgrenzwert festgelegt. Das bedeutet, dass für jede im Projekt erstellte Model Armor-Vorlage mindestens der Filter für die Erkennung von Prompt-Injection und Jailbreak mit einem mittleren Konfidenzgrenzwert festgelegt sein muss. Für eine Vorlage, die in einem anderen Ordner als dem übergeordneten Ordner dieses Projekts erstellt wurde, ist der schädliche URI-Filter nicht erforderlich.

Mit Mindesteinstellungen können CISOs und Sicherheitsarchitekten für alle Model Armor-Vorlagen in ihrer Organisation eine Mindestsicherheitsstufe erzwingen und verhindern, dass einzelne Entwickler die Sicherheitsstandards versehentlich oder absichtlich unter ein akzeptables Niveau senken. Bei Kunden mit einer Premium- oder Enterprise-Stufe von Security Command Center lösen Verstöße gegen die Mindesteinstellungen Probleme aus. Wenn also eine Vorlage vor einer Mindesteinstellung erstellt wird und weniger restriktive Einstellungen hat, wird in Security Command Center ein Ergebnis angezeigt, mit dem Sie weniger sichere Model Armor-Vorlagen identifizieren und beheben können.

Untere Grenzwerte für Model Armor aktivieren und deaktivieren

Wenn Sie die Einstellungen für Model Armor-Etagen aktivieren möchten, setzen Sie das Flag enable_floor_setting_enforcement auf true. Die folgenden Beispiele zeigen, wie das geht.

gcloud

  • Aktivieren Sie die Einstellungen für den Model Armor-Grenzwert für ein bestimmtes Projekt.

      gcloud model-armor floorsettings update \
       --full-uri='projects/PROJECT_ID/locations/global/floorSetting' \
       --enable-floor-setting-enforcement=true
    
  • Aktivieren Sie die Mindesteinstellungen für Model Armor für eine bestimmte Organisation.

      gcloud model-armor floorsettings update \
      --full-uri='organizations/ORGANIZATION_ID/locations/global/floorSetting' \
      --enable-floor-setting-enforcement=true
    
  • Aktivieren Sie die Einstellungen für den Model Armor-Grenzwert für einen bestimmten Ordner.

      gcloud model-armor floorsettings update \
      --full-uri='folders/FOLDER_ID/locations/global/floorSetting' \
      --enable-floor-setting-enforcement=true
    

    Ersetzen Sie Folgendes:

  • PROJECT_ID ist die ID des Projekts für die Vorlage.

  • FOLDER_ID ist die ID des Ordners für die Vorlage.

  • ORGANIZATION_ID ist die ID der Organisation für die Vorlage.

REST

  curl -X PATCH
  -d '{"enable_floor_setting_enforcement" : "true"}'
  -H "Content-Type: application/json"
  -H "Authorization: Bearer $(gcloud auth print-access-token)" "https://modelarmor.googleapis.com/v1/projects/PROJECT_ID/locations/global/floorSetting?update_mask=enable_floor_setting_enforcement"
  

Ersetzen Sie PROJECT_ID durch die ID des Projekts für die Vorlage.

Wenn Sie die Einstellungen für die Bodenbeschichtungen von Model Armor nicht verwenden möchten, setzen Sie das Flag filter_config auf empty oder das Flag enable_floor_setting_enforcement auf false.

gcloud

    gcloud model-armor floorsettings get 
--full-uri='projects/PROJECT_ID/locations/global/floorSetting'
Flags --full-uri = name of the floor setting resource
--enable-floor-setting-enforcement=false
--filterConfig = {}

Ersetzen Sie PROJECT_ID durch die ID des Projekts für die Vorlage.

    curl -X PATCH 
-H "Content-Type: application/json"
-H "Authorization: Bearer $(gcloud auth print-access-token)"
-d '{"filterConfig" :{},"enable_floor_setting_enforcement":"false"}'
"https://modelarmor.googleapis.com/v1/projects/PROJECT_ID/locations/global/floorSetting"

Ersetzen Sie PROJECT_ID durch die ID des Projekts für die Vorlage.

Einstellungen für Model Armor-Etagen ansehen

Führen Sie den folgenden Befehl aus, um die Einstellungen für die Model Armor-Ebene aufzurufen.

gcloud

  • Bodeneinstellung für Model Armor für ein bestimmtes Projekt aufrufen

      gcloud model-armor floorsettings describe \
      --full-uri='projects/PROJECT_ID/locations/global/floorSetting'
  • Die Einstellung für den Model Armor-Grenzwert für eine bestimmte Organisation ansehen.

      gcloud model-armor floorsettings describe \
      --full-uri='organizations/ORGANIZATION_ID/locations/global/floorSetting'
  • Die Mindesteinstellung für Model Armor für einen bestimmten Ordner ansehen

       gcloud model-armor floorsettings describe \
       --full-uri='folders/FOLDER_ID/locations/global/floorSetting'

    Ersetzen Sie Folgendes:

    • PROJECT_ID ist die ID des Projekts für die Vorlage.
    • FOLDER_ID ist die ID des Ordners für die Vorlage.
    • ORGANIZATION_ID ist die ID der Organisation für die Vorlage.

REST

  • Die Einstellung für den Mindestpreis für den Modellschutz für ein bestimmtes Projekt aufrufen

    curl -X GET \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    "https://modelarmor.googleapis.com/v1/projects/PROJECT_ID/locations/global/floorSetting"
  • Die Mindesteinstellung für Model Armor für einen bestimmten Ordner ansehen

    curl -X GET \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    "https://modelarmor.googleapis.com/v1/folders/FOLDER_ID/locations/global/floorSetting"
  • Die Einstellung für den Mindestpreis für Model Armor für eine bestimmte Organisation ansehen.

    curl -X GET \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    "https://modelarmor.googleapis.com/v1/organizations/ORGANIZATION_ID/locations/global/floorSetting"

Ersetzen Sie Folgendes:

  • PROJECT_ID ist die ID des Projekts für die Vorlage.
  • FOLDER_ID ist die ID des Ordners für die Vorlage.
  • ORGANIZATION_ID ist die ID der Organisation für die Vorlage.

Python

Um diesen Befehl auszuführen, müssen Sie zuerst einen Model Armor-Client in Python initialisieren.

  • Bodeneinstellung für Model Armor für ein bestimmtes Projekt aufrufen

    request = modelarmor_v1.GetFloorSettingRequest(
    floor_setting={
      "name": "projects/PROJECT_ID/locations/global/floorSetting",
    }
    )
    response = client.get_floor_setting(request=request)
  • Die Mindesteinstellung für Model Armor für einen bestimmten Ordner ansehen

    request = modelarmor_v1.GetFloorSettingRequest(
    floor_setting={
      "name": "folders/FOLDER_ID/locations/global/floorSetting",
    }
    )
    response = client.get_floor_setting(request=request)
  • Die Einstellung für den Mindestpreis für Model Armor für eine bestimmte Organisation ansehen.

    request = modelarmor_v1.GetFloorSettingRequest(
    floor_setting={
      "name": "organizations/ORGANIZATION_ID/locations/global/floorSetting",
    }
    )
    response = client.get_floor_setting(request=request)

    Ersetzen Sie Folgendes:

    • PROJECT_ID ist die ID des Projekts, zu dem die Vorlage gehört.
    • FOLDER_ID ist die ID des Ordners für die Vorlage.
    • ORGANIZATION_ID ist die ID der Organisation für die Vorlage.

Einstellungen für den Model Armor-Grenzwert aktualisieren

Führen Sie den folgenden Befehl aus, um die Einstellungen für die Model Armor-Ebene zu aktualisieren.

gcloud

   gcloud model-armor floorsettings update --full-uri=<full-uri-of-the-floorsetting>

Beispielbefehl:

       gcloud model-armor floorsettings update \
       --malicious-uri-filter-settings-enforcement=ENABLED \
       --pi-and-jailbreak-filter-settings-enforcement=DISABLED \
       --pi-and-jailbreak-filter-settings-confidence-level=LOW_AND_ABOVE \
       --basic-config-filter-enforcement=ENABLED \
       --add-rai-settings-filters='[{"confidenceLevel": "low_and_above", "filterType": "HARASSMENT"}, {"confidenceLevel": "high", "filterType": "SEXUALLY_EXPLICIT"}]'
       --full-uri='folders/FOLDER_ID/locations/global/floorSetting' \
       --enable-floor-setting-enforcement=true

Ersetzen Sie FOLDER_ID durch die ID des Ordners für die Vorlage.

REST

  • Aktualisieren Sie die Mindestanzahl von Modellen für ein bestimmtes Projekt.

    curl -X PATCH -d '{"filterConfig" :{"piAndJailbreakFilterSettings": { "filterEnforcement": "ENABLED"}, "maliciousUriFilterSettings": { "filterEnforcement": "ENABLED" }, "rai_settings":{"rai_filters":{"filter_type":"DANGEROUS", "confidence_level":"LOW_AND_ABOVE" },
    "rai_filters":{"filter_type":"HATE_SPEECH", "confidence_level":"LOW_AND_ABOVE" }, "rai_filters":{"filter_type":"HARASSMENT", "confidence_level":"LOW_AND_ABOVE" }, "rai_filters":{"filter_type":"SEXUALLY_EXPLICIT", "confidence_level":"LOW_AND_ABOVE" }}},"enable_floor_setting_enforcement":"true"}' -H "Content-Type: application/json" -H "Authorization: Bearer $(gcloud auth print-access-token) "https://modelarmor.googleapis.com/v1/projects/PROJECT_ID/locations/global/floorSetting"
  • Aktualisieren Sie die Einstellung für die Modellabdeckung für einen bestimmten Ordner.

    curl -X PATCH \
    -d '{"filterConfig" :{"piAndJailbreakFilterSettings": { "filterEnforcement": "ENABLED"}, "maliciousUriFilterSettings": { "filterEnforcement": "ENABLED" }},"enable_floor_setting_enforcement":"true"}' \
    -H "Content-Type: application/json" \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
      "https://modelarmor.googleapis.com/v1/folders/FOLDER_ID/locations/global/floorSetting"
  • Aktualisieren Sie die Mindesteinstellung für den Modellschutz für eine bestimmte Organisation.

    curl -X PATCH \
    -d '{"filterConfig" :{"piAndJailbreakFilterSettings": { "filterEnforcement": "ENABLED"}, "maliciousUriFilterSettings": { "filterEnforcement": "ENABLED" }},"enable_floor_setting_enforcement":"true"}' \
    -H "Content-Type: application/json" \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
        "https://modelarmor.googleapis.com/v1/organizations/ORGANIZATION_ID/locations/global/floorSetting"

    Ersetzen Sie Folgendes:

    • PROJECT_ID ist die ID des Projekts für die Vorlage.
    • FOLDER_ID ist die ID des Ordners für die Vorlage.
    • ORGANIZATION_ID ist die ID der Organisation für die Vorlage.

    Der Befehl „update“ gibt die folgende Antwort zurück:

    {
    "name": "projects/PROJECT_ID/locations/global/floorSetting",
    "updateTime": "2024-12-19T15:36:21.318191Z",
    "filterConfig": {
    "piAndJailbreakFilterSettings": {
      "filterEnforcement": "ENABLED"
    },
    "maliciousUriFilterSettings": {
    "filterEnforcement": "ENABLED"
    }
    }
    }

Python

Um diesen Befehl auszuführen, müssen Sie zuerst einen Model Armor-Client in Python initialisieren.

  • Aktualisieren Sie die Mindestanzahl von Modellen für ein bestimmtes Projekt.

    request = modelarmor_v1.UpdateFloorSettingRequest(
    floor_setting={
      "name": "projects/PROJECT_ID/locations/global/floorSetting",
      "filter_config": FILTER_CONFIG,
      "enable_floor_setting_enforcement": True
    }
    )
    response = client.update_floor_setting(request=request)
  • Aktualisieren Sie die Einstellung für die Modellabdeckung für einen bestimmten Ordner.

    request = modelarmor_v1.UpdateFloorSettingRequest(
    floor_setting={
      "name": "folders/FOLDER_ID/locations/global/floorSetting",
      "filter_config": FILTER_CONFIG
      "enable_floor_setting_enforcement": True
    }
    )
    response = client.update_floor_setting(request=request)
  • Aktualisieren Sie die Mindesteinstellung für den Modellschutz für eine bestimmte Organisation.

    request = modelarmor_v1.UpdateFloorSettingRequest(
    floor_setting={
      "name": "organizations/ORGANIZATION_ID/locations/global/floorSetting",
      "filter_config": FILTER_CONFIG
      "enable_floor_setting_enforcement": True
    }
    )
    response = client.update_floor_setting(request=request)

    Ersetzen Sie Folgendes:

  • FILTER_CONFIG ist die Filterkonfiguration für die Vorlage.

  • PROJECT_ID ist die ID des Projekts, zu dem die Vorlage gehört.

  • FOLDER_ID: Die ID des Ordners für die Vorlage.

  • ORGANIZATION_ID ist die ID der Organisation für die Vorlage.

Verstoß gegen die Mindesteinstellungen

Jedes Model Armor-Dienstergebnis identifiziert einen Verstoß gegen die Mindesteinstellungen, der auftritt, wenn eine Model Armor-Vorlage nicht den Mindestsicherheitsstandards entspricht, die in den Mindesteinstellungen der Ressourcenhierarchie definiert sind. Die Mindesteinstellungen legen das für jeden Filter in einer Vorlage zulässige Mindestniveau fest. Ein Verstoß gegen die Mindesteinstellung kann sich auf eine Vorlage beziehen, die nicht die erforderlichen Filter enthält oder das Mindestvertrauensniveau für diese Filter nicht erfüllt. Wenn ein Verstoß erkannt wird, wird ein Ergebnis mit hoher Schwere in Security Command Center veröffentlicht. In der Meldung werden die verletzte Mindestpreiseinstellung, die nicht konforme Vorlage und Details zum Verstoß angegeben. Weitere Informationen finden Sie unter Ergebnisse des Model Armor-Dienstes.

Das ist ein Beispiel für das Feld „source_properties“ des Ergebnisses im Zusammenhang mit einem Verstoß gegen die Einstellungen für Fußböden.

{
  "filterConfig": {
    "raiSettings": {
      "raiFilters": [
        {
          "filterType": "HATE_SPEECH",
          "confidenceLevel": {
            "floorSettings": "LOW_AND_ABOVE",
            "template": "MEDIUM_AND_ABOVE"
          }
        },
        {
          "filterType": "HARASSMENT",
          "confidenceLevel": {
            "floorSettings": "MEDIUM_AND_ABOVE",
            "template": "HIGH"
          }
        }
      ]
    },
    "piAndJailbreakFilterSettings": {
      "confidenceLevel": {
        "floorSettings": "LOW_AND_ABOVE",
        "template": "HIGH"
      }
    },
    "maliciousUriFilterSettings": {
      "floorSettings": "ENABLED",
      "template": "DISABLED"
    }
  }
}

Nächste Schritte