Les paramètres de plancher Model Armor définissent des règles qui dictent les exigences minimales pour tous les modèles Model Armor créés à un point spécifique de la hiérarchie des ressources Google Cloud(c'est-à-dire au niveau d'une organisation, d'un dossier ou d'un projet). Si plusieurs paramètres de sol sont en conflit, les paramètres situés plus bas dans la hiérarchie des ressources prévalent. Par exemple, si une stratégie de paramétrage du plancher est créée au niveau d'un dossier et d'un projet, la stratégie au niveau du projet est appliquée.
Voici un exemple illustrant le fonctionnement d'une règle de paramètre de sol Model Armor. La règle de plancher X est définie sur un dossier pour lequel le filtre d'URL malveillantes est activé. La stratégie de plancher Y est définie sur un projet de ce dossier pour le filtre d'injection d'invite et de détection de jailbreak avec un seuil de confiance moyen. En conséquence, chaque modèle Armor créé dans le projet doit avoir au moins le filtre d'injection de requête et de détection de jailbreak défini avec un seuil de confiance moyen, mais le filtre d'URL malveillante n'est pas obligatoire.
Les paramètres de plancher aident les responsables de la sécurité des systèmes d'information et les architectes de la sécurité à appliquer une posture de sécurité minimale à tous les modèles Model Armor de leur organisation, ce qui empêche les développeurs individuels de baisser accidentellement ou intentionnellement les normes de sécurité en dessous des niveaux acceptables. Pour les clients disposant d'un niveau Premium ou Enterprise de Security Command Center, les cas de non-respect des paramètres de plancher déclenchent des résultats. Cela signifie que si un modèle est créé avant un paramètre de plancher et qu'il comporte des paramètres moins restrictifs, un résultat s'affichera dans Security Command Center pour vous aider à identifier et à corriger les modèles Model Armor moins sécurisés.
Activer et désactiver les paramètres de plancher Model Armor
Pour activer les paramètres de sol Model Armor, définissez l'indicateur enable_floor_setting_enforcement
sur true
.
Les exemples suivants montrent comment procéder.
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"
Remplacez PROJECT_ID
par l'ID du projet du modèle.
Si vous ne souhaitez pas utiliser les paramètres de plancher de Model Armor, définissez l'option filter_config
sur empty
ou l'option enable_floor_setting_enforcement
sur false
. L'exemple suivant montre comment procéder.
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"
Remplacez PROJECT_ID
par l'ID du projet du modèle.
Afficher les paramètres de Model Armor Floor
Exécutez la commande suivante pour afficher les paramètres de sol de Model Armor.
REST
Afficher le paramètre de plancher Model Armor pour un projet donné.
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"
Afficher le paramètre de plancher Model Armor pour un dossier donné.
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"
Afficher le paramètre de niveau de protection du modèle pour une organisation donnée.
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"
Remplacez les éléments suivants :
PROJECT_ID
correspond à l'ID du projet du modèle.FOLDER_ID
correspond à l'ID du dossier du modèle.ORGANIZATION_ID
est l'ID de l'organisation du modèle.
Python
Pour exécuter cette commande, commencez par initialiser un client Model Armor en Python.
Afficher le paramètre de plancher Model Armor pour un projet donné.
request = modelarmor_v1.GetFloorSettingRequest( floor_setting={ "name": "projects/PROJECT_ID/locations/global/floorSetting", } ) response = client.get_floor_setting(request=request)
Afficher le paramètre de plancher Model Armor pour un dossier donné.
request = modelarmor_v1.GetFloorSettingRequest( floor_setting={ "name": "folders/FOLDER_ID/locations/global/floorSetting", } ) response = client.get_floor_setting(request=request)
Afficher le paramètre de niveau de protection du modèle pour une organisation donnée.
request = modelarmor_v1.GetFloorSettingRequest( floor_setting={ "name": "organizations/ORGANIZATION_ID/locations/global/floorSetting", } ) response = client.get_floor_setting(request=request)
Remplacez les éléments suivants :
PROJECT_ID
correspond à l'ID du projet auquel appartient le modèle.FOLDER_ID
correspond à l'ID du dossier du modèle.ORGANIZATION_ID
est l'ID de l'organisation du modèle.
Mettre à jour les paramètres de Model Armor Floor
Exécutez la commande suivante pour mettre à jour les paramètres de sol de Model Armor.
REST
Mettez à jour le paramètre de plancher de l'armure de modèle pour un projet donné.
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"
Mettre à jour le paramètre de plancher de Model Armor pour un dossier donné.
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"
Modifiez le paramètre de plancher de la protection du modèle pour une organisation donnée.
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"
Remplacez les éléments suivants :
PROJECT_ID
correspond à l'ID du projet du modèle.FOLDER_ID
correspond à l'ID du dossier du modèle.ORGANIZATION_ID
est l'ID de l'organisation du modèle.
La commande update renvoie la réponse suivante:
{ "name": "projects/PROJECT_ID/locations/global/floorSetting", "updateTime": "2024-12-19T15:36:21.318191Z", "filterConfig": { "piAndJailbreakFilterSettings": { "filterEnforcement": "ENABLED" }, "maliciousUriFilterSettings": { "filterEnforcement": "ENABLED" } } }
Python
Pour exécuter cette commande, commencez par initialiser un client Model Armor en Python.
Mettez à jour le paramètre de plancher de l'armure de modèle pour un projet donné.
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)
Mettre à jour le paramètre de plancher de Model Armor pour un dossier donné.
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)
Modifiez le paramètre de plancher de la protection du modèle pour une organisation donnée.
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)
Remplacez les éléments suivants :
FILTER_CONFIG
est la configuration du filtre pour le modèle.PROJECT_ID
correspond à l'ID du projet auquel appartient le modèle.FOLDER_ID
: ID du dossier du modèle.ORGANIZATION_ID
est l'ID de l'organisation du modèle.
Non-respect des paramètres de sol
Chaque résultat du service Model Armor identifie une violation de niveau de base qui se produit lorsqu'un modèle Model Armor ne répond pas aux normes de sécurité minimales définies par les paramètres de niveau de base de la hiérarchie des ressources. Les paramètres de plancher déterminent le niveau le moins strict autorisé pour chaque filtre d'un modèle. Un cas de non-respect du paramètre de plancher peut impliquer un modèle qui n'inclut pas les filtres requis ou qui ne répond pas au niveau de confiance minimal pour ces filtres. Lorsqu'une violation est détectée, un résultat de gravité élevée est publié dans Security Command Center. Le résultat indique le paramètre de plancher non respecté, le modèle non conforme et des informations sur le non-respect. Pour en savoir plus, consultez Résultats du service Model Armor.
Il s'agit d'un exemple du champ "source_properties" du résultat dans le cas d'un non-respect des paramètres de plancher.
{ "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" } } }
Étape suivante
- Découvrez la présentation de Model Armor.
- En savoir plus sur les modèles d'armure de modèle
- Nettoyez les requêtes et les réponses.
- Résoudre les problèmes liés à Model Armor