Cette page décrit les règles de prévention et de détection incluses dans la version 1.0 de la stratégie prédéfinie pour une IA sécurisée, étendue. Cette stratégie comprend deux jeux de règles:
Un ensemble de règles qui inclut les règles d'administration qui s'appliquent à charges de travail Vertex AI.
Un ensemble de règles qui inclut des détecteurs Security Health Analytics personnalisés qui s'appliquent à charges de travail Vertex AI.
Vous pouvez utiliser cette stratégie prédéfinie pour configurer une stratégie de sécurité qui contribue à protéger Gemini et aux ressources Vertex AI. Si vous souhaitez déployer cette stratégie prédéfinie, vous devez personnaliser certaines stratégies afin qu'elles s'appliquent à votre environnement.
Contraintes liées aux règles d'administration
Le tableau suivant décrit les règles d'administration incluses dans cette stratégie.
Règle | Description | Norme de conformité |
---|---|---|
ainotebooks.accessMode |
Cette contrainte Définit les modes d'accès autorisés à Vertex AI Workbench notebooks et instances. Vous devez configurer cette valeur lorsque vous adoptez cette stratégie prédéfinie. |
Contrôle NIST SP 800-53: AC-3(3) et AC-6(1) |
ainotebooks.disableFileDownloads |
Cette contrainte empêche la création d'instances Vertex AI Workbench avec le fichier option de téléchargement activée. Par défaut, l'option de téléchargement de fichiers peut être activée sur n'importe quelle instance Vertex AI Workbench. La valeur est de |
Contrôle NIST SP 800-53: AC-3(1) |
ainotebooks.disableRootAccess |
Cette contrainte empêche notebooks et instances Vertex AI Workbench gérés par l'utilisateur nouvellement créés d'activer l'accès root. Par défaut, Vertex AI Workbench géré par l'utilisateur l'accès root peut être activé sur les notebooks et les instances. La valeur est
|
Contrôle NIST SP 800-53: AC-3 et AC-6(2) |
ainotebooks.disableTerminal |
Cette contrainte empêche la création d'instances Vertex AI Workbench avec le terminal activé. Par défaut, le terminal peut être activé aux instances Vertex AI Workbench. La valeur est de |
Contrôles NIST SP 800-53: AC-3, AC-6 et CM-2 |
ainotebooks.environmentOptions |
Cette contrainte définit les options de VM et d'images de conteneurs qu'un utilisateur peut sélectionner lorsqu'il crée Notebooks et instances Vertex AI Workbench où cette contrainte est application. Les options à autoriser ou à refuser doivent être explicitement répertoriées. Les valeurs sont les suivantes: policy_rules: - values: allowed_values: - is:ainotebooks-vm/deeplearning-platform-release/image-family/tf-1-15-cpu - is:ainotebooks-vm/deeplearning-platform-release/image-family/tf-2-1-cpu - is:ainotebooks-vm/deeplearning-platform-release/image-family/tf-1-15-gpu - is:ainotebooks-vm/deeplearning-platform-release/image-family/tf-2-1-gpu - is:ainotebooks-vm/deeplearning-platform-release/image-family/caffe1-latest-cpu-experimental - is:ainotebooks-vm/deeplearning-platform-release/image-name/r-3-6-cpu-experimental-20200617 - is:ainotebooks-vm/deeplearning-platform-release/image-name/tf2-ent-2-1-cpu-20200613 - is:ainotebooks-vm/deeplearning-platform-release/image-name/tf2-2-2-cu101-20200616 - is:ainotebooks-vm/deeplearning-platform-release/image-name/tf-1-15-cu100-20200615 - is:ainotebooks-vm/deeplearning-platform-release/image-name/pytorch-latest-cpu-20200615 - is:ainotebooks-container/gcr.io/deeplearning-platform-release/tf-gpu.1-15 - is:ainotebooks-container/gcr.io/deeplearning-platform-release/tf-cpu.1-15:latest - is:ainotebooks-container/gcr.io/deeplearning-platform-release/tf-cpu.1-15:m48 - is:ainotebooks-container/gcr.io/deeplearning-platform-release/tf-cpu.1-15:m46 - is:ainotebooks-container/custom-container:latest |
Contrôles NIST SP 800-53: AC-3, AC-6 et CM-2 |
ainotebooks.requireAutoUpgradeSchedule |
Cette contrainte nécessite que les notebooks Vertex AI Workbench gérés par l'utilisateur nouvellement créés un calendrier de mise à niveau automatique est défini pour les instances. La valeur est
|
Contrôle NIST SP 800-53: AU-9, CM-2 et CM-6 |
ainotebooks.restrictPublicIp |
Cette contrainte limite un accès depuis des adresses IP publiques aux notebooks Vertex AI Workbench nouvellement créés Compute Engine. Par défaut, les adresses IP publiques peuvent accéder aux notebooks Vertex AI Workbench et les instances. La valeur est |
Contrôles NIST SP 800-53: AC-3, AC-4 et SC-7 |
ainotebooks.restrictVpcNetworks |
Cette liste définit Réseaux VPC qu'un utilisateur peut sélectionner lorsqu'il crée Vertex AI Workbench aux instances où cette contrainte est appliquée. Vous devez configurer cette valeur lorsque vous adoptez cette stratégie prédéfinie. |
Contrôles NIST SP 800-53: AC-3, AC-4 et CM-2 |
Détecteurs Security Health Analytics
Le tableau suivant décrit les modules personnalisés de Security Health Analytics qui sont incluses dans la stratégie prédéfinie.
Nom du détecteur | Ressource applicable | Description | Normes de conformité |
---|---|---|---|
vertexAIDataSetCMEKDisabled | aiplatform.googleapis.com/Dataset |
Ce détecteur vérifie si Ensemble de données qui n'est pas chiffré à l'aide d'une clé de chiffrement gérée par le client (CMEK). Pour résoudre ce résultat, vérifiez que vous avez créé la clé et votre trousseau de clés, configuré les autorisations et fourni la clé lorsque vous avez créé votre ensemble de données. Pour obtenir des instructions, consultez la page Configurer des clés CMEK pour votre ressources. |
Contrôle NIST SP 800-53: SC12 et SC13 |
vertexAIModelCMEKDisabled | aiplatform.googleapis.com/Model |
Ce détecteur vérifie si un modèle n'est pas chiffré à l'aide d'une clé CMEK. Pour résoudre ce résultat, vérifiez que vous avez créé la clé et votre trousseau de clés, configuré les autorisations et fourni la clé lorsque vous avez créé votre dans un modèle de ML. Pour obtenir des instructions, consultez la page Configurer des clés CMEK pour votre ressources. |
Contrôle NIST SP 800-53: SC12 et SC13 |
vertexAIEndpointCMEKDisabled | aiplatform.googleapis.com/Endpoint |
Ce détecteur vérifie si un point de terminaison n'est pas chiffré à l'aide d'une clé CMEK. Pour résoudre ce résultat, vérifiez que vous avez créé la clé et votre trousseau de clés, configuré les autorisations et fourni la clé lorsque vous avez créé votre point de terminaison unique. Pour obtenir des instructions, consultez la page Configurer des clés CMEK pour votre ressources. |
Contrôle NIST SP 800-53: SC12 et SC13 |
vertexAITrainingPipelineCMEKDisabled | aiplatform.googleapis.com/TrainingPipeline |
Ce détecteur vérifie si un pipeline d'entraînement n'est pas chiffré à l'aide d'une clé CMEK. Pour résoudre ce résultat, vérifiez que vous avez créé la clé et votre trousseau de clés, configuré les autorisations et fourni la clé lorsque vous avez créé votre le pipeline d'entraînement. Pour obtenir des instructions, consultez la page Configurer des clés CMEK pour votre ressources. |
Contrôle NIST SP 800-53: SC12 et SC13 |
vertexAIDataLabelingJobCMEKDisabled | aiplatform.googleapis.com/DataLabelingJob |
Ce détecteur vérifie si une étiquette de données n'est pas chiffrée à l'aide d'une clé CMEK. Pour résoudre ce résultat, vérifiez que vous avez créé la clé et votre trousseau de clés, configuré les autorisations et fourni la clé lorsque vous avez créé votre libellé de données. Pour obtenir des instructions, consultez la page Configurer des clés CMEK pour votre ressources. |
Contrôle NIST SP 800-53: SC12 et SC13 |
vertexAICustomJobCMEKDisabled | aiplatform.googleapis.com/CustomJob |
Ce détecteur vérifie si une tâche qui exécute une charge de travail personnalisée n'est pas chiffrée à l'aide d'une clé CMEK. Pour résoudre ce résultat, vérifiez que vous avez créé la clé et votre trousseau de clés, configuré les autorisations et fourni la clé lorsque vous avez créé votre une tâche personnalisée. Pour obtenir des instructions, consultez la page Configurer des clés CMEK pour votre ressources. |
Contrôle NIST SP 800-53: SC12 et SC13 |
vertexAIDataLabelingJobHyperparameterTuningJobCMEKDisabled | aiplatform.googleapis.com/HyperparameterTuningJob |
Ce détecteur vérifie si une tâche de réglage des hyperparamètres n'est pas chiffrée à l'aide d'une clé CMEK. Pour résoudre ce résultat, vérifiez que vous avez créé la clé et votre trousseau de clés, configuré les autorisations et fourni la clé lorsque vous avez créé votre de réglage des hyperparamètres. Pour obtenir des instructions, consultez la page Configurer des clés CMEK pour votre ressources. |
Contrôle NIST SP 800-53: SC12 et SC13 |
Définition YAML
Voici la définition YAML de la stratégie prédéfinie pour l'IA sécurisée.
name: organizations/123/locations/global/postureTemplates/secure_ai_extended
description: Posture Template to make your AI workload secure.
revision_id: v.1.0
state: ACTIVE
policy_sets:
- policy_set_id: Secure-AI policy_set
description: 8 org policies that new customers can automatically enable.
policies:
- policy_id: Define access mode for Vertex AI Workbench notebooks and instances
compliance_standards:
- standard: NIST SP 800-53
control: AC-3(3)
- standard: NIST SP 800-53
control: AC-6(1)
constraint:
org_policy_constraint:
canned_constraint_id: ainotebooks.accessMode
policy_rules:
- values:
allowed_values:
- is:service-account
- is:single-user
description: This list constraint defines the modes of access allowed to Vertex AI Workbench notebooks and instances where enforced. The allow or deny list can specify multiple users with the service-account mode or single-user access with the single-user mode. The access mode to be allowed or denied must be listed explicitly.
- policy_id: Disable file downloads on new Vertex AI Workbench instances
compliance_standards:
- standard: NIST SP 800-53
control: AC-3(1)
constraint:
org_policy_constraint:
canned_constraint_id: ainotebooks.disableFileDownloads
policy_rules:
- enforce: true
description: This boolean constraint, when enforced, prevents the creation of Vertex AI Workbench instances with the file download option enabled. By default, the file download option can be enabled on any Vertex AI Workbench instance.
- policy_id: Disable root access on new Vertex AI Workbench user-managed notebooks and instances
compliance_standards:
- standard: NIST SP 800-53
control: AC-3
- standard: NIST SP 800-53
control: AC-6(2)
constraint:
org_policy_constraint:
canned_constraint_id: ainotebooks.disableRootAccess
policy_rules:
- enforce: true
description: This boolean constraint, when enforced, prevents newly created Vertex AI Workbench user-managed notebooks and instances from enabling root access. By default, Vertex AI Workbench user-managed notebooks and instances can have root access enabled.
- policy_id: Disable terminal on new Vertex AI Workbench instances
compliance_standards:
- standard: NIST SP 800-53
control: AC-3
- standard: NIST SP 800-53
control: AC-6
- standard: NIST SP 800-53
control: CM-2
constraint:
org_policy_constraint:
canned_constraint_id: ainotebooks.disableTerminal
policy_rules:
- enforce: true
description: This boolean constraint, when enforced, prevents the creation of Vertex AI Workbench instances with the terminal enabled. By default, the terminal can be enabled on Vertex AI Workbench instances.
- policy_id: Restrict environment options on new Vertex AI Workbench notebooks and instances
compliance_standards:
- standard: NIST SP 800-53
control: AC-3
- standard: NIST SP 800-53
control: AC-6
- standard: NIST SP 800-53
control: CM-2
constraint:
org_policy_constraint:
canned_constraint_id: ainotebooks.environmentOptions
policy_rules:
- values:
allowed_values:
- is:ainotebooks-vm/deeplearning-platform-release/image-family/tf-1-15-cpu
- is:ainotebooks-vm/deeplearning-platform-release/image-family/tf-2-1-cpu
- is:ainotebooks-vm/deeplearning-platform-release/image-family/tf-1-15-gpu
- is:ainotebooks-vm/deeplearning-platform-release/image-family/tf-2-1-gpu
- is:ainotebooks-vm/deeplearning-platform-release/image-family/caffe1-latest-cpu-experimental
- is:ainotebooks-vm/deeplearning-platform-release/image-name/r-3-6-cpu-experimental-20200617
- is:ainotebooks-vm/deeplearning-platform-release/image-name/tf2-ent-2-1-cpu-20200613
- is:ainotebooks-vm/deeplearning-platform-release/image-name/tf2-2-2-cu101-20200616
- is:ainotebooks-vm/deeplearning-platform-release/image-name/tf-1-15-cu100-20200615
- is:ainotebooks-vm/deeplearning-platform-release/image-name/pytorch-latest-cpu-20200615
- is:ainotebooks-container/gcr.io/deeplearning-platform-release/tf-gpu.1-15
- is:ainotebooks-container/gcr.io/deeplearning-platform-release/tf-cpu.1-15:latest
- is:ainotebooks-container/gcr.io/deeplearning-platform-release/tf-cpu.1-15:m48
- is:ainotebooks-container/gcr.io/deeplearning-platform-release/tf-cpu.1-15:m46
- is:ainotebooks-container/custom-container:latest
description: "This list constraint defines the VM and container image options a user can select when creating new Vertex AI Workbench notebooks and instances where this constraint is enforced. The options to be allowed or denied must be listed explicitly. \n
The expected format for VM instances is ainotebooks-vm/PROJECT_ID/IMAGE_TYPE/CONSTRAINED_VALUE. Replace IMAGE_TYPE with image-family or image-name. Examples: ainotebooks-vm/deeplearning-platform-release/image-family/pytorch-1-4-cpu, ainotebooks-vm/deeplearning-platform-release/image-name/pytorch-latest-cpu-20200615. \n
The expected format for container images will be ainotebooks-container/CONTAINER_REPOSITORY:TAG. Examples: ainotebooks-container/gcr.io/deeplearning-platform-release/tf-gpu.1-15:latest, ainotebooks-container/gcr.io/deeplearning-platform-release/tf-gpu.1-15:m48."
- policy_id: Require automatic scheduled upgrades on new Vertex AI Workbench user-managed notebooks and instances
compliance_standards:
- standard: NIST SP 800-53
control: AU-9
- standard: NIST SP 800-53
control: CM-2
- standard: NIST SP 800-53
control: CM-6
constraint:
org_policy_constraint:
canned_constraint_id: ainotebooks.requireAutoUpgradeSchedule
policy_rules:
- enforce: true
description: This boolean constraint, when enforced, requires that newly created Vertex AI Workbench user-managed notebooks and instances have an automatic upgrade schedule set. The automatic upgrade schedule can be defined by using the `notebook-upgrade-schedule` metadata flag to specify a cron schedule for the automatic upgrades.
- policy_id: Restrict public IP access on new Vertex AI Workbench notebooks and instances
compliance_standards:
- standard: NIST SP 800-53
control: AC-3
- standard: NIST SP 800-53
control: AC-4
- standard: NIST SP 800-53
control: SC-7
constraint:
org_policy_constraint:
canned_constraint_id: ainotebooks.restrictPublicIp
policy_rules:
- enforce: true
description: This boolean constraint, when enforced, restricts public IP access to newly created Vertex AI Workbench notebooks and instances. By default, public IPs can access Vertex AI Workbench notebooks and instances.
- policy_id: Restrict VPC networks on new Vertex AI Workbench instances
compliance_standards:
- standard: NIST SP 800-53
control: AC-3
- standard: NIST SP 800-53
control: AC-4
- standard: NIST SP 800-53
control: CM-2
constraint:
org_policy_constraint:
canned_constraint_id: ainotebooks.restrictVpcNetworks
policy_rules:
- values:
allowed_values:
- is:organizations/ORGANIZATION_ID
- is:folders/FOLDER_ID
- is:projects/PROJECT_ID
- is:projects/PROJECT_ID/global/networks/NETWORK_NAME
description: This list constraint defines the VPC networks a user can select when creating new Vertex AI Workbench instances where this constraint is enforced. By default, a Vertex AI Workbench instance can be created with any VPC networks. The allowed or denied list of networks must be identified in the form.
- policy_set_id: Secure-AI SHA_policy_set
description: 5 custome SHA modules that new customers can automatically enable.
policies:
- policy_id: CMEK key is use for Vertex AI DataSet
compliance_standards:
- standard: NIST SP 800-53
control: SC-12
- standard: NIST SP 800-53
control: SC-13
constraint:
security_health_analytics_custom_module:
display_name: "vertexAIDataSetCMEKDisabled"
config:
customOutput: {}
predicate:
expression: "!has(resource.encryptionSpec)"
resource_selector:
resource_types:
- aiplatform.googleapis.com/Dataset
severity: CRITICAL
description: "When enforced, this detector finds if any Data Set is not encrypted using CMEK. CMEKs, managed via Cloud KMS, offer advanced control over key operations."
recommendation: "Restore SHA module- Reset the SHA module to its intended state. Consult documentation- Refer to the comprehensive guidance provided at
https://cloud.google.com/security-command-center/docs/custom-modules-sha-overview"
module_enablement_state: ENABLED
- policy_id: CMEK key is use for Vertex AI Model
compliance_standards:
- standard: NIST SP 800-53
control: SC-12
- standard: NIST SP 800-53
control: SC-13
constraint:
security_health_analytics_custom_module:
display_name: "vertexAIModelCMEKDisabled"
config:
customOutput: {}
predicate:
expression: "!has(resource.encryptionSpec)"
resource_selector:
resource_types:
- aiplatform.googleapis.com/Model
severity: CRITICAL
description: "When enforced, this detector finds if any Data Set is not encrypted using CMEK. CMEKs, managed via Cloud KMS, offer advanced control over key operations."
recommendation: "Restore SHA module- Reset the SHA module to its intended state. Consult documentation- Refer to the comprehensive guidance provided at
https://cloud.google.com/security-command-center/docs/custom-modules-sha-overview"
module_enablement_state: ENABLED
- policy_id: CMEK key is use for Vertex AI Endpoint
compliance_standards:
- standard: NIST SP 800-53
control: SC-12
- standard: NIST SP 800-53
control: SC-13
constraint:
security_health_analytics_custom_module:
display_name: "vertexAIEndpointCMEKDisabled"
config:
customOutput: {}
predicate:
expression: "!has(resource.encryptionSpec)"
resource_selector:
resource_types:
- aiplatform.googleapis.com/Endpoint
severity: CRITICAL
description: "When enforced, this detector finds if any Data Set is not encrypted using CMEK. CMEKs, managed via Cloud KMS, offer advanced control over key operations."
recommendation: "Restore SHA module- Reset the SHA module to its intended state. Consult documentation- Refer to the comprehensive guidance provided at
https://cloud.google.com/security-command-center/docs/custom-modules-sha-overview"
module_enablement_state: ENABLED
- policy_id: CMEK key is use for Vertex AI TrainingPipeline
compliance_standards:
- standard: NIST SP 800-53
control: SC-12
- standard: NIST SP 800-53
control: SC-13
constraint:
security_health_analytics_custom_module:
display_name: "vertexAITrainingPipelineCMEKDisabled"
config:
customOutput: {}
predicate:
expression: "!has(resource.encryptionSpec)"
resource_selector:
resource_types:
- aiplatform.googleapis.com/TrainingPipeline
severity: CRITICAL
description: "When enforced, this detector finds if any Data Set is not encrypted using CMEK. CMEKs, managed via Cloud KMS, offer advanced control over key operations."
recommendation: "Restore SHA module- Reset the SHA module to its intended state. Consult documentation- Refer to the comprehensive guidance provided at
https://cloud.google.com/security-command-center/docs/custom-modules-sha-overview"
module_enablement_state: ENABLED
- policy_id: CMEK key is use for Vertex AI DataLabelingJob
compliance_standards:
- standard: NIST SP 800-53
control: SC-12
- standard: NIST SP 800-53
control: SC-13
constraint:
security_health_analytics_custom_module:
display_name: "vertexAIDataLabelingJobCMEKDisabled"
config:
customOutput: {}
predicate:
expression: "!has(resource.encryptionSpec)"
resource_selector:
resource_types:
- aiplatform.googleapis.com/DataLabelingJob
severity: CRITICAL
description: "When enforced, this detector finds if any Data Set is not encrypted using CMEK. CMEKs, managed via Cloud KMS, offer advanced control over key operations."
recommendation: "Restore SHA module- Reset the SHA module to its intended state. Consult documentation- Refer to the comprehensive guidance provided at
https://cloud.google.com/security-command-center/docs/custom-modules-sha-overview"
module_enablement_state: ENABLED
- policy_id: CMEK key is use for Vertex AI CustomJob
compliance_standards:
- standard: NIST SP 800-53
control: SC-12
- standard: NIST SP 800-53
control: SC-13
constraint:
security_health_analytics_custom_module:
display_name: "vertexAICustomJobCMEKDisabled"
config:
customOutput: {}
predicate:
expression: "!has(resource.encryptionSpec)"
resource_selector:
resource_types:
- aiplatform.googleapis.com/CustomJob
severity: CRITICAL
description: "When enforced, this detector finds if any Data Set is not encrypted using CMEK. CMEKs, managed via Cloud KMS, offer advanced control over key operations."
recommendation: "Restore SHA module- Reset the SHA module to its intended state. Consult documentation- Refer to the comprehensive guidance provided at
https://cloud.google.com/security-command-center/docs/custom-modules-sha-overview"
module_enablement_state: ENABLED
- policy_id: CMEK key is use for Vertex AI HyperparameterTuningJob
compliance_standards:
- standard: NIST SP 800-53
control: SC-12
- standard: NIST SP 800-53
control: SC-13
constraint:
security_health_analytics_custom_module:
display_name: "vertexAIDataLabelingJobHyperparameterTuningJobCMEKDisabled"
config:
customOutput: {}
predicate:
expression: "!has(resource.encryptionSpec)"
resource_selector:
resource_types:
- aiplatform.googleapis.com/HyperparameterTuningJob
severity: CRITICAL
description: "When enforced, this detector finds if any Data Set is not encrypted using CMEK. CMEKs, managed via Cloud KMS, offer advanced control over key operations."
recommendation: "Restore SHA module- Reset the SHA module to its intended state. Consult documentation- Refer to the comprehensive guidance provided at
https://cloud.google.com/security-command-center/docs/custom-modules-sha-overview"
module_enablement_state: ENABLED