이 페이지에서는 보안 AI를 위한 사전 정의된 상황(확장 요소)의 v1.0 버전에 포함된 예방 및 감지 정책에 대해 설명합니다. 이 상황에는 두 가지 정책 집합이 포함됩니다.
Vertex AI 워크로드에 적용되는 조직 정책을 포함하는 정책 집합
Vertex AI 워크로드에 적용되는 커스텀 Security Health Analytics 감지기를 포함하는 정책 집합
이 사전 정의된 상황을 사용해서 Gemini 및 Vertex AI 리소스 보호에 도움이 되는 보안 상황을 구성할 수 있습니다. 이 사전 정의된 상황을 배포하려면 환경에 적용되도록 일부 정책을 맞춤설정해야 합니다.
조직 정책 제약조건
다음 표에서는 이 상황에 포함된 조직 정책에 대해 설명합니다.
정책 | 설명 | 규정 준수 표준 |
---|---|---|
ainotebooks.accessMode |
이 제약조건은 Vertex AI Workbench 노트북 및 인스턴스에 허용된 액세스 모드를 정의합니다. 이 사전 정의된 상황을 채택할 때 이 값을 구성해야 합니다. |
NIST SP 800-53 제어: AC-3(3) 및 AC-6(1) |
ainotebooks.disableFileDownloads |
이 제약조건은 파일 다운로드 옵션을 사용 설정하여 Vertex AI Workbench 인스턴스를 만들 수 없도록 방지합니다. 기본적으로 파일 다운로드 옵션은 모든 Vertex AI Workbench 인스턴스에서 사용 설정할 수 있습니다. 값은 |
NIST SP 800-53 제어: AC-3(1) |
ainotebooks.disableRootAccess |
이 제약조건은 새로 만든 Vertex AI Workbench 사용자 관리 노트북 및 인스턴스에서 루트 액세스를 사용 설정하지 못하도록 방지합니다. 기본적으로 Vertex AI Workbench 사용자 관리형 노트북 및 인스턴스는 루트 액세스를 사용 설정할 수 있습니다. 값은 |
NIST SP 800-53 제어: AC-3 및 AC-6(2) |
ainotebooks.disableTerminal |
이 제약조건은 터미널을 사용 설정하여 Vertex AI Workbench 인스턴스를 만들 수 없도록 방지합니다. 기본적으로 터미널은 Vertex AI Workbench 인스턴스에서 사용 설정됩니다. 값은 |
NIST SP 800-53 제어: AC-3, AC-6, CM-2 |
ainotebooks.environmentOptions |
이 제약조건은 해당 제약조건이 적용되는 새 Vertex AI Workbench 노트북과 인스턴스를 만들 때 사용자가 선택할 수 있는 VM 및 컨테이너 이미지 옵션을 정의합니다. 허용 또는 거부할 옵션을 명시적으로 나열해야 합니다. 값은 다음과 같습니다. 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 |
NIST SP 800-53 제어: AC-3, AC-6, CM-2 |
ainotebooks.requireAutoUpgradeSchedule |
이 제약조건은 새로 만든 Vertex AI Workbench 사용자 관리 노트북 및 인스턴스에 자동 업그레이드 예약이 설정되도록 지정합니다. 값은 |
NIST SP 800-53 제어: AU-9, CM-2, CM-6 |
ainotebooks.restrictPublicIp |
이 제약조건은 새로 만든 Vertex AI Workbench 노트북 및 인스턴스에 대한 공개 IP 액세스를 제한합니다. 기본적으로 공개 IP는 Vertex AI Workbench 노트북 및 인스턴스에 액세스할 수 있습니다. 값은 |
NIST SP 800-53 제어: AC-3, AC-4, SC-7 |
ainotebooks.restrictVpcNetworks |
이 목록은 이 제약조건이 적용되는 Vertex AI Workbench 인스턴스를 새로 만들 때 사용자가 선택할 수 있는 VPC 네트워크를 정의합니다. 이 사전 정의된 상황을 채택할 때 이 값을 구성해야 합니다. |
NIST SP 800-53 제어: AC-3, AC-4, CM-2 |
Security Health Analytics 감지기
다음 표에서는 사전 정의된 상황에 포함되는 Security Health Analytics의 커스텀 모듈에 대해 설명합니다.
감지기 이름 | 적용 가능한 리소스 | 설명 | 규정 준수 표준 |
---|---|---|---|
vertexAIDataSetCMEKDisabled | aiplatform.googleapis.com/Dataset |
이 감지기는 데이터 세트가 고객 관리 암호화 키(CMEK)를 사용해서 암호화되지 않았는지 확인합니다. 이 발견 항목을 해결하려면 데이터 세트를 만들 때 키 및 키링을 만들었고, 권한을 설정하고, 키를 제공했는지 확인합니다. 자세한 내용은 리소스의 CMEK 구성을 참조하세요. |
NIST SP 800-53 제어: SC12 및 SC13 |
vertexAIModelCMEKDisabled | aiplatform.googleapis.com/Model |
이 감지기는 모델이 CMEK를 사용해서 암호화되지 않았는지 여부를 확인합니다. 이 발견 항목을 해결하려면 모델을 만들 때 키 및 키링을 만들었고, 권한을 설정하고, 키를 제공했는지 확인합니다. 자세한 내용은 리소스의 CMEK 구성을 참조하세요. |
NIST SP 800-53 제어: SC12 및 SC13 |
vertexAIEndpointCMEKDisabled | aiplatform.googleapis.com/Endpoint |
이 감지기는 엔드포인트가 CMEK를 사용하여 암호화되지 않았는지 여부를 확인합니다. 이 발견 항목을 해결하려면 엔드포인트를 만들 때 키 및 키링을 만들었고, 권한을 설정하고, 키를 제공했는지 확인합니다. 자세한 내용은 리소스의 CMEK 구성을 참조하세요. |
NIST SP 800-53 제어: SC12 및 SC13 |
vertexAITrainingPipelineCMEKDisabled | aiplatform.googleapis.com/TrainingPipeline |
이 감지기는 학습 파이프라인이 CMEK를 사용하여 암호화되지 않았는지 여부를 확인합니다. 이 발견 항목을 해결하려면 학습 파이프라인을 만들 때 키 및 키링을 만들었고, 권한을 설정하고, 키를 제공했는지 확인합니다. 자세한 내용은 리소스의 CMEK 구성을 참조하세요. |
NIST SP 800-53 제어: SC12 및 SC13 |
vertexAIDataLabelingJobCMEKDisabled | aiplatform.googleapis.com/DataLabelingJob |
이 감지기는 데이터 라벨이 CMEK를 사용하여 암호화되지 않았는지 여부를 확인합니다. 이 발견 항목을 해결하려면 데이터 라벨을 만들 때 키 및 키링을 만들었고, 권한을 설정하고, 키를 제공했는지 확인합니다. 자세한 내용은 리소스의 CMEK 구성을 참조하세요. |
NIST SP 800-53 제어: SC12 및 SC13 |
vertexAICustomJobCMEKDisabled | aiplatform.googleapis.com/CustomJob |
이 감지기는 커스텀 워크로드를 실행하는 작업이 CMEK를 사용하여 암호화되지 않았는지 여부를 확인합니다. 이 발견 항목을 해결하려면 커스텀 작업을 만들 때 키 및 키링을 만들었고, 권한을 설정하고, 키를 제공했는지 확인합니다. 자세한 내용은 리소스의 CMEK 구성을 참조하세요. |
NIST SP 800-53 제어: SC12 및 SC13 |
vertexAIDataLabelingJobHyperparameterTuningJobCMEKDisabled | aiplatform.googleapis.com/HyperparameterTuningJob |
이 감지기는 초매개변수 조정 작업이 CMEK를 사용하여 암호화되지 않았는지 여부를 확인합니다. 이 발견 항목을 해결하려면 초매개변수 조정 작업을 만들 때 키 및 키링을 만들었고, 권한을 설정하고, 키를 제공했는지 확인합니다. 자세한 내용은 리소스의 CMEK 구성을 참조하세요. |
NIST SP 800-53 제어: SC12 및 SC13 |
YAML 정의
다음은 보안 AI의 사전 정의된 상황에 대한 YAML 정의입니다.
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