Protege los datos confidenciales de Notebooks

En este documento, se sugieren los controles y las capas de seguridad que puedes usar para proteger los datos confidenciales de Notebooks. Es parte de una solución de plano que consta de lo siguiente:

En este documento, los datos confidenciales se refieren a información sensible a la que un miembro de tu empresa necesitaría niveles más altos de privilegios para acceder. Este documento está dirigido a equipos que administran notebooks.

En este documento, se supone que ya configuraste un conjunto de controles de seguridad fundamentales para proteger tu implementación de infraestructura de nube. El plano te ayuda a agregar controles adicionales a estos controles de seguridad existentes para proteger los datos confidenciales en Notebooks. Para obtener más información sobre las prácticas recomendadas de seguridad en tus implementaciones de Google Cloud, consulta la guía de aspectos básicos de seguridad de Google Cloud.

Introducción

La aplicación de políticas de seguridad y administración de datos para proteger notebooks con datos confidenciales a menudo requiere balancear los siguientes objetivos:

  • Ayuda a proteger los datos que usan las instancias de notebook mediante las mismas prácticas y controles de administración de datos que aplicas en tu empresa.
  • Asegurarse de que los científicos de datos de tu empresa tengan acceso a los datos que necesitan para proporcionar estadísticas significativas

Antes de permitir que los científicos de datos de tu empresa accedan a los datos de los notebooks, debes comprender los siguientes puntos:

  • Cómo fluyen los datos por tu entorno
  • Quién accede a los datos

Ten en cuenta lo siguiente para que comprendas lo siguiente:

  • Cómo implementar tu jerarquía de recursos de Google Cloud para aislar tus datos
  • Qué grupos de IAM están autorizados para usar datos de BigQuery
  • Cómo influye la política de administración de datos en el entorno

Las secuencias de comandos de Terraform en el repositorio de GitHub asociadas con el modelo implementan los controles de seguridad que se describen en este documento. El repositorio también contiene datos de muestra para ilustrar las prácticas de administración de datos. Para obtener más información sobre la administración de datos en Google Cloud, consulta ¿Qué es la administración de datos?

Arquitectura

En el siguiente diagrama de arquitectura, se muestra la jerarquía del proyecto y los recursos como notebooks y claves de encriptación.

Arquitectura del plano técnico

El perímetro de esta arquitectura se denomina límite de confianza más alto. Ayuda a proteger los datos confidenciales que se usan en la nube privada virtual (VPC). Los científicos de datos deben acceder a los datos a través del límite de confianza más alto. Para obtener más información, consulta los Controles del servicio de VPC.

El límite de confianza más alto contiene todos los recursos de la nube que interactúan con los datos sensibles, lo que puede ayudarte a administrar tus controles de administración de datos. Los servicios como notebooks, BigQuery y Cloud Storage tienen el mismo nivel de confianza dentro del límite.

La arquitectura también crea controles de seguridad que te ayudan a hacer lo siguiente:

  • Mitiga el riesgo de robo de datos para un dispositivo que usan los científicos de datos en tu empresa.
  • Protege las instancias de notebooks del tráfico de red externo.
  • Limita el acceso a la VM que aloja las instancias de notebook.

Estructura de la organización

Resource Manager te permite agrupar recursos de manera lógica por proyecto, carpeta y organización. En el siguiente diagrama, se muestra una jerarquía de recursos con carpetas que representan diferentes entornos, como producción o desarrollo.

Jerarquía de recursos con carpetas de producción y desarrollador

En la carpeta de producción, crea una carpeta nueva que represente tu entorno de confianza.

Agregas políticas de la organización a la carpeta de confianza que creas. En las siguientes secciones, se describe cómo se organiza la información dentro de la carpeta, las subcarpetas y los proyectos.

Carpeta de confianza

El plano te ayuda a aislar datos mediante la introducción de una subcarpeta nueva dentro de la carpeta de producción para notebooks y cualquier dato que las instancias del notebook usen desde BigQuery. En la siguiente tabla, se describen las relaciones de las carpetas dentro de la organización y se enumeran las carpetas que usa este plano.

Carpeta Descripción
production Contiene proyectos que tienen recursos en la nube que se probaron y están listos para usarse.
trusted Contiene proyectos y recursos para instancias de notebooks con datos confidenciales. Esta carpeta es una subcarpeta que es un elemento secundario de la carpeta production.

Proyectos dentro de la organización

El plano te ayuda a aislar partes del entorno mediante proyectos. Debido a que estos proyectos no tienen un propietario de proyecto, debes crear vinculaciones de políticas de IAM explícitas para los grupos de IAM adecuados.

En la siguiente tabla, se describe dónde creas los proyectos que se necesitan dentro de la organización.

Proyecto Carpeta principal Descripción
trusted-kms trusted Contiene servicios que administran la clave de encriptación que protege tus datos (por ejemplo, Cloud HSM). Este proyecto se encuentra en el límite de confianza más alto.
trusted-data trusted Contiene servicios que controlan datos confidenciales (por ejemplo, BigQuery). Este proyecto se encuentra en el límite de confianza más alto.
trusted-analytics trusted Contiene los notebooks que usan los científicos de datos. Este proyecto está en el límite de confianza más alto.

Comprende los controles de seguridad que aplicas

En esta sección, se analizan los controles de seguridad de Google Cloud que te ayudan a proteger tus instancias de notebook. El enfoque que se analiza en este documento usa varias capas de control para ayudar a proteger tus datos sensibles. Te recomendamos que ajustes estas capas de control según lo requiera tu empresa.

Configuración de la política de la organización

El Servicio de políticas de la organización se usa para configurar restricciones en los recursos compatibles dentro de tu organización de Google Cloud. Configura las restricciones que se aplican a la carpeta trusted como se describe en la siguiente tabla. Para obtener más información sobre las restricciones de las políticas, consulta las restricciones de las políticas de la organización.

Restricción de política Descripción Valor recomendado
gcp.resourceLocations (lista) Define las restricciones sobre cómo se implementan los recursos en regiones específicas. Para obtener valores adicionales, consulta <a{: l10n-attrs-original-order="href,track-type,track-name,track-metadata-position" l10n-encrypted-href="p0QLUJkJWl022ZPF8XOpExbgk/lxGfezRLhprMa5doZN+cJCz6j1rNnG0f6zRCY5lNvENQyutzDSQoNKf6mWtw1wA7mc7xehzQW0s0VnKKA=" track-metadata-position="body" track-name="internalLink" track-type="solution" }="">valid region groups.</a{:> ["in:us-locations", "in:eu-locations"]
iam.disableServiceAccountCreation (booleano) Cuando el valor es true, evita la creación de un servicio<a{: l10n-attrs-original-order="href,track-type,track-name,track-metadata-position" l10n-encrypted-href="CDx+y1R+QGNLsOA+E2D9d9ou+FEz00PeI85jCLdEq5b4Kv4CQ6p1vl0x3rS9735/" track-metadata-position="body" track-name="internalLink" track-type="solution" }=""> account.</a{:> true
iam.disableServiceAccountKeyCreation (booleano) Cuando el valor es true, evita la creación de <a{: l10n-attrs-original-order="href,track-type,track-name,track-metadata-position" l10n-encrypted-href="WFRYDQtmB/86VDs7PZa96dou+FEz00PeI85jCLdEq5bHy+ezA0ewJmDnHN78IEaq/uqVRhG/IldRkC2L0Y9bBQ==" track-metadata-position="body" track-name="internalLink" track-type="solution" }="">service account keys.</a{:> true
iam.automaticIamGrantsForDefaultServiceAccounts (booleano) Cuando el valor es true, evita que las cuentas de servicio predeterminadas se otorguen a cualquier función de IAM en el proyecto cuando se crean las cuentas. true
compute.requireOsLogin (booleano) Cuando el valor es true, habilita el Acceso al SO. Para obtener más información, consulta <a{: l10n-attrs-original-order="href,track-type,track-name,track-metadata-position" l10n-encrypted-href="Mh2WvN3PzmbL/6M7AMJ+U8xdrud5wj8XJuhclBrl/6o=" track-metadata-position="body" track-name="internalLink" track-type="solution" }="">OS Login.</a{:> true
constraints/compute.restrictProtocolForwardingCreationForTypes (lista) Limita las nuevas reglas de reenvío de modo que sean solo para uso interno. ["is:INTERNAL"]
compute.restrictSharedVpcSubnetworks Define el conjunto de subredes de VPC compartidas que pueden usar los recursos aptos. Proporciona el nombre del proyecto que tiene tu subred de VPC compartida.

Reemplaza la subred VPC_SUBNET por el ID de recurso de la subred privada que deseas que use los notebooks.
["under:projects/VPC_SUBNET"]
compute.vmExternalIpAccess Define el conjunto de instancias de VM de Compute Engine que tienen permiso para usar direcciones IP externas. deny all=true
compute.skipDefaultNetworkCreation (booleano) Cuando el valor es true, Google Cloud omite la creación de la red predeterminada y los recursos relacionados durante la creación de recursos de Google Cloud. true
compute.disableSerialPortAccess (booleano) Cuando el valor es true, evita el acceso del puerto en serie a las VM de Compute Engine. true
compute.disableSerialPortLogging (booleano) Cuando el valor es true, evita el registro del puerto en serie en Cloud Logging desde las VM de Compute Engine. true

Para obtener más información sobre los controles de políticas adicionales, consulta la Guía de seguridad de Google Cloud.

Autenticación y autorización

El plano te ayuda a establecer los controles de IAM y los patrones de acceso que puedes aplicar a Notebooks. El plano te ayuda a definir patrones de acceso de las siguientes maneras:

  • Usa un grupo de científico de datos de confianza. Las identidades individuales no tienen permisos asignados para acceder a los datos.
  • Define una función de IAM personalizada llamada restrictedDataViewer.
  • Usa principios de privilegios mínimos para limitar el acceso a tus datos.

Usuarios y grupos

El límite de confianza más alto tiene dos personas, que son las siguientes:

  • El propietario de los datos, que es responsable de clasificar los datos dentro de BigQuery
  • El científico de datos confiable, que puede controlar datos confidenciales.

Puedes asociar a estas personas a grupos. Agrega una identidad que coincida con la persona con el grupo, en lugar de otorgar la función a identidades individuales.

El modelo te ayuda a aplicar el mínimo privilegio, ya que define una asignación uno a uno entre científicos de datos y sus instancias de notebook para que solo una identidad de científicos de datos única pueda acceder a la instancia de notebook. Los científicos de datos individuales no tienen permisos de editor para una instancia de notebook.

En la tabla, se muestra la siguiente información:

  • Personas que asignas al grupo
  • Las funciones de IAM que asignas al grupo a nivel de proyecto
Grupo Descripción Funciones Proyecto
data-owner@example.com Los miembros son responsables de la clasificación de datos y de la administración de datos en BigQuery. <a{: l10n-attrs-original-order="href,track-type,track-name,track-metadata-position" l10n-encrypted-href="qZGUxiLwMwSqAayYOaEAYsqqqBP4p/061BE24HsZBYzqnuNSkSxnVKwqYjVml1pv" track-metadata-position="body" track-name="internalLink" track-type="solution" }="">roles/bigquery.dataOwner</a{:> trusted-data
trusted-data-scientist@example.com Los miembros pueden acceder a los datos de la carpeta de confianza. roles/restrictedDataViewer (personalizado) trusted-data

Cuentas de servicio administradas por el usuario

Debes crear una cuenta de servicio administrada por el usuario para que use notebooks en lugar de la cuenta de servicio predeterminada de Compute Engine. Las funciones de la cuenta de servicio para las instancias de notebook se definen en la siguiente tabla.

Cuenta de servicio Descripción Funciones Proyecto
sa-p-notebook-compute@trusted-analytics.iam.gserviceaccount.com Una cuenta de servicio que usa Cloud AI Platform para aprovisionar instancias de notebook.
  • roles/restrictedDataViewer (Personalizados)
  • <a{: l10n-attrs-original-order="href,track-type,track-name,track-metadata-position" l10n-encrypted-href="qZGUxiLwMwSqAayYOaEAYsqqqBP4p/061BE24HsZBYzqnuNSkSxnVKwqYjVml1pv" track-metadata-position="body" track-name="internalLink" track-type="solution" }="">roles/bigquery.jobUser</a{:>
  • <a{: l10n-attrs-original-order="href,track-type,track-name,track-metadata-position" l10n-encrypted-href="F09OE/SDdsh4rSUv6kg1NJzBt276nqedo2zyLe4cxCi9OImFy9Pn6CEbIlOwglwwkXtNx3LSV4gEFf1hFSv84Q==" track-metadata-position="body" track-name="internalLink" track-type="solution" }="">roles/cloudkms.cryptoKeyEncrypterDecrypter</a{:>
  • roles/compute.instanceAdmin
  • roles/notebooks.viewer
trusted-analytics

El plano también te ayuda a configurar la cuenta de servicio administrada por Google que representa tus notebooks, ya que proporciona a la cuenta de servicio administrada por Google acceso a las claves de encriptación administradas por el cliente (CMEK). Este otorgamiento de recurso específico aplica menos privilegio a la clave que se usa en los notebooks.

Debido a que los proyectos no tienen un propietario del proyecto definido, los científicos de datos no pueden administrar las claves.

Funciones personalizadas

En el plano, creas una función personalizada roles/restrictedDataViewer mediante la eliminación del permiso de exportación. La función personalizada se basa en la función dataViewer de BigQuery predefinida que permite a los usuarios leer datos de la tabla de BigQuery. Debes asignar esta función al grupo trusted-data-scientists@example.com. En la siguiente tabla, se muestran los permisos que usa la función roles/restrictedDataViewer.

Nombre de función personalizada Descripción Permisos
roles/restrictedDataViewer Permite que las instancias de notebook dentro del límite superior de confianza vean los datos sensibles de BigQuery.

Based on the roles/bigquery.dataViewer <a{: l10n-attrs-original-order="href,track-type,track-name,track-metadata-position" l10n-encrypted-href="qZGUxiLwMwSqAayYOaEAYsqqqBP4p/061BE24HsZBYzqnuNSkSxnVKwqYjVml1pv" track-metadata-position="body" track-name="internalLink" track-type="solution" }="">role
without the export permission (for example, bigquery.models.export).</a{:>
bigquery.datasets.get
bigquery.datasets.getIamPolicy
bigquery.models.getData
bigquery.models.getMetadata
bigquery.models.list
bigquery.routines.get
bigquery.routines.list
bigquery.tables.get
bigquery.tables.getData
bigquery.tables.getIamPolicy
bigquery.tables.list
resourcemanager.projects.get
resourcemanager.projects.list

Privilegio mínimo

El plan te ayuda a otorgar funciones que tienen el nivel mínimo de privilegio. Por ejemplo, debes configurar una asignación uno a uno entre una sola identidad de científico de datos y una instancia de notebook, en lugar de una asignación compartida con una cuenta de servicio. La restricción de privilegios te ayuda a evitar que los científicos de datos accedan directamente a las instancias que alojan su instancia de notebook.

Acceso con privilegios

Los usuarios del grupo de científicos de datos de mayor confianza llamados trusted-data-scientists@example.com tienen acceso con privilegios. Este nivel de acceso significa que estos usuarios tienen identidades que pueden acceder a datos confidenciales. Trabaja con tu equipo de identidades a fin de proporcionar llaves de seguridad para hardware con 2SV habilitada para estas identidades de científicos de datos.

Redes

Especifica un entorno de VPC compartida para tus notebooks, como uno definido por las secuencias de comandos de red de bases de seguridad de Google Cloud.

La red para las instancias de notebook tiene las siguientes propiedades:

  • Una VPC compartida mediante una red restringida privada sin dirección IP externa
  • Reglas de firewall restringidas.
  • Un perímetro de los Controles del servicio de VPC que abarca todos los servicios y proyectos con los que interactúan tus notebooks.
  • Una política de Access Context Manager

VPC compartida restringida

Configura notebooks para usar la VPC compartida que especifiques. Debido a que el Acceso al SO es obligatorio, la VPC compartida minimiza el acceso a las instancias de notebook. Puedes configurar el acceso explícito para tus científicos de datos con Identity-Aware Proxy (IAP).

También configurarás la conectividad privada a los servicios y las API de Google en tu VPC compartida con el dominio restricted.googleapis.com. Esta configuración permite que los servicios de tu entorno admitan los Controles del servicio de VPC.

Para ver un ejemplo de cómo configurar tu VPC restringida compartida, consulta la configuración de red de las secuencias de comandos de Terraform del plano de seguridad.

Perímetro de los Controles del servicio de VPC

El modelo te ayuda a establecer el límite de confianza más alto para tu entorno de confianza mediante los Controles del servicio de VPC.

Perímetros de servicio son un control a nivel de la organización que puedes usar para ayudar a proteger los servicios de Google Cloud en tus proyectos mediante la mitigación del riesgo de robo de datos.

En la siguiente tabla, se describe cómo configurar el perímetro de Control del servicio de VPC.

Atributo Consideración Valor
projects Incluye todos los proyectos que contienen datos a los que acceden los científicos de datos que usan Notebooks, incluidas las claves. ["trusted-kms"
"trusted-data"
"trusted-analytics"]
services Agrega servicios adicionales según sea necesario. ["compute.googleapis.com",
"storage.googleapis.com",
"notebooks.googleapis.com",
"bigquery.googleapis.com",
"datacatalog.googleapis.com",
"dataflow.googleapis.com",
"dlp.googleapis.com",
"cloudkms.googleapis.com",
"secretmanager.googleapis.com",
"cloudasset.googleapis.com",
"cloudfunctions.googleapis.com",
"pubsub.googleapis.com",
"monitoring.googleapis.com",
"logging.googleapis.com"]
access_level Agregar <a{: l10n-attrs-original-order="href,track-type,track-name,track-metadata-position" l10n-encrypted-href="lusaVihyw0i6CzgawuRRYyk10Dou6dGBPtPXPAqkVYhqg3ciWN7dEYftf8SKI5K5" track-metadata-position="body" track-name="internalLink" track-type="solution" }="">Access Context Manager policies that align with your security requirements and add more detailed <a{: l10n-attrs-original-order="href,track-type,track-name,track-metadata-position" l10n-encrypted-href="ZRmADm/vo/JQ2+/D/vUUr0WE0NcjMCq0U/gbksCiqgf1jsdW/MbrYpK1/gdk16L117PUzYIUuMKSr0A78yDcsQ==" track-metadata-position="body" track-name="internalLink" track-type="solution" }="">endpoint verification policies.</a{:></a{:> ACCESS_POLICIES
Para obtener más información, véase <a{: l10n-attrs-original-order="href,track-type,track-name,track-metadata-position" l10n-encrypted-href="mErqasZwen/f/ZTGIbWznUThYNlQy3SNS5YUbbdBzpAQrGIipT4NxhctG8OW0R12jCba8kqsOCrIurToC2g1MsbVAmLvh8DVypS65bHqvTcC39OkJHvBtQlACEB+9F2mLuhxD4+/9c9X6y6lq3/Zcg==" track-metadata-position="body" track-name="internalLink" track-type="solution" }="">Access Context Manager
</a{:>

Access Context Manager

El plano te ayuda a configurar Access Context Manager con tu perímetro de los Controles del servicio de VPC. Access Context Manager te permite definir un control de acceso detallado basado en atributos para los proyectos y recursos. Usa la verificación de extremos y configura la política para que coincida con tus requisitos de administración corporativa a fin de acceder a los datos. Trabaja con tu administrador a fin de crear una política de acceso para los científicos de datos en tu empresa.

Te recomendamos que uses los valores que se muestran en la siguiente tabla para tu política de acceso.

Condición Consideración Values
ip_subnetworks Usa rangos de IP en los que tu empresa confíe. (Lista) Los rangos CIDR permiten enumerar el acceso a los recursos dentro del perímetro.
members Agrega usuarios con muchos privilegios que puedan acceder al perímetro. (lista) Identidades privilegiadas de científicos de datos y cuentas de servicio de Terraform para el aprovisionamiento.
device_policy.require_screen_lock Los dispositivos deben tener habilitado el bloqueo de pantalla. true
device_policy.require_corp_owned Permitir que solo los dispositivos corporativos accedan a Notebooks. true
device_policy.allowed_encryption_statuses Permitir que los científicos de datos solo usen dispositivos que encriptan datos en reposo (lista) ENCRYPTED
regions Mantiene la regionalización donde los científicos de datos pueden acceder a sus instancias de notebook.

Limita al conjunto más pequeño de regiones en las que esperas que trabajen los científicos de datos.
<a{: l10n-attrs-original-order="href,track-type,track-name,track-metadata-position" l10n-encrypted-href="8N5kFK1nMdX9Lm9PBXn1Gik10Dou6dGBPtPXPAqkVYhCA27lJ8v3AtKljasH4ygRJI82FsX3O5bO4YFtCsDjBg==" track-metadata-position="body" track-name="internalLink" track-type="solution" }="">Códigos de región válidos
(list) </a{:>

Privilegio de mínimo de BigQuery

El plano te muestra cómo configurar el acceso a los conjuntos de datos en BigQuery que usan los científicos de datos. En la configuración que establezcas, los científicos de datos deben tener una instancia de notebook para acceder a los conjuntos de datos de BigQuery.

La configuración que establezcas también te ayuda a agregar capas de seguridad a los conjuntos de datos en BigQuery de las siguientes maneras:

  • Otorga acceso a la cuenta de servicio de la instancia de notebook. Los científicos de datos deben tener una instancia de notebook para acceder de forma directa a los conjuntos de datos de BigQuery.
  • Mitigación del riesgo de que los científicos de datos creen copias de datos que no cumplan con los requisitos de administración de datos de tu empresa Los científicos de datos que necesitan interactuar directamente con BigQuery deben agregarse al grupo trusted-data-scientists@example.com.

Como alternativa, si quieres otorgar acceso limitado a BigQuery a los científicos de datos, puedes usar controles de acceso detallados, como la seguridad a nivel de la columna. El propietario de los datos debe trabajar con los equipos de administración para crear una taxonomía adecuada. Los propietarios de datos pueden usar Cloud Data Loss Prevention (Cloud DLP) para analizar conjuntos de datos, a fin de ayudar a clasificar y etiquetar el conjunto de datos a fin de que coincida con la taxonomía.

Administración de claves

Para proteger tus datos, notebooks usa claves de encriptación. Las claves cuentan con el respaldo de Cloud HSM de Nivel 3 de la norma FIPS 140-2. Las claves que creas en el entorno ayudan a proteger tus datos de las siguientes maneras:

  • Las CMEK se habilitan para todos los servicios que se encuentran dentro del límite de confianza más alto.
  • La disponibilidad de las claves se puede configurar por región.
  • La rotación de clave se puede configurar.
  • El acceso a las claves es limitado.

CMEK

El plano te ayuda a usar CMEK, lo que crea un límite criptográfico para todos los datos mediante una clave que administras. Tu entorno usa la misma clave CMEK para todos los servicios que se encuentran dentro del límite de confianza más alto. Otro beneficio de usar CMEK es que puedes destruir la clave que usaste para proteger las instancias de notebook cuando ya no es necesaria.

Disponibilidad y rotación de la clave

Puedes lograr una mayor disponibilidad si creas un llavero de claves multirregional, lo que aumenta la disponibilidad de tus claves.

En este plano, debes crear claves con un valor de rotación automático. Para configurar el valor de rotación, sigue la política de seguridad que estableció tu empresa. Puedes cambiar el valor predeterminado para que coincida con tu política de seguridad o rotar tus claves con mayor frecuencia si es necesario.

En la siguiente tabla, se describen los atributos que configuras para tus claves.

Atributo Consideración Values
rotation Haz coincidir el valor que establece la política de rotación de cumplimiento de tu empresa. 45 días
location Use un llavero de claves que use <a{: l10n-attrs-original-order="href,track-type,track-name,track-metadata-position" l10n-encrypted-href="Z98fpOVAlHdfgDS3sMyCXJRrt04oQqGzq1Aef2125xKSjPY+/eF9aEsSeoGJf8A6" track-metadata-position="body" track-name="internalLink" track-type="solution" }="">multi-regional ubicaciones multirregionales para promover una mayor disponibilidad.</a{:> Seleccionada automáticamente según la configuración de tu zona de notebooks.
protection level Usa el nivel de protección especificado por la empresa. HSM

Acceso a la clave

El modelo te ayuda a proteger tus claves mediante su colocación en un módulo de Cloud HSM en una carpeta separada de tus recursos de datos. Debes usar este enfoque por los siguientes motivos:

  • Se requieren claves de encriptación para que los recursos puedan usarlas.
  • Los equipos de administración de claves se mantienen separados de los propietarios de los datos.
  • Se necesitan controles y supervisión adicionales para claves. Usar una carpeta separada te permite administrar políticas para las claves independientes de tus datos.

Controles de seguridad para notebooks

Los controles que se describen en esta sección protegen los datos que se usan en los notebooks. El plano te ayuda a configurar los controles de seguridad de AI Platform Notebook de la siguiente manera:

  • Mitiga el riesgo de robo de datos.
  • Limitar la elevación de privilegios

Administración de descarga de datos

De forma predeterminada, las instancias de notebook permiten que los científicos de datos descarguen o exporten datos a sus máquinas. La secuencia de comandos de inicio que instala el plano te ayuda a evitar las siguientes acciones:

  • La exportación y la descarga de datos en dispositivos locales.
  • La capacidad de imprimir valores de salida calculados por instancias de notebook

La secuencia de comandos se crea en el proyecto trusted_kms. El modelo te ayuda a proteger el depósito que almacena la secuencia de comandos mediante la limitación del acceso y la configuración de CMEK. Separar las secuencias de comandos del proyecto para Notebooks también ayuda a reducir el riesgo de que se agregue código no aprobado a las secuencias de comandos de inicio.

Debido a que configuras notebooks para usar tu subred de VPC privada, tus instancias de notebook no pueden acceder a redes públicas. Esta configuración ayuda a evitar que los científicos de datos instalen módulos externos, accedan a fuentes de datos externas y acceda a repositorios de códigos públicos. En lugar de recursos externos, te recomendamos configurar un repositorio de artefactos privados, como Artifact Registry, para los científicos de datos en tu empresa.

Administración de privilegios

El plano te ayuda a limitar los permisos asignados al grupo trusted-data-scientists@example.com. Por ejemplo, el grupo no tiene una función asignada para crear instantáneas de disco persistente porque el sistema de archivos local de la instantánea podría contener instancias de notebook que contienen datos de tu empresa.

Además, para evitar que los científicos de datos obtengan acceso con privilegios, se evita el uso de comandos sudo desde la línea de comandos de la instancia del notebook. Esta acción ayuda a evitar que los científicos de datos alteren los controles instalados en la instancia de notebook, como los paquetes aprobados o los registros.

Seguridad operativa

Además de los controles de seguridad que estableces con el plano, debes configurar las siguientes políticas de seguridad operativa para garantizar que los datos estén protegidos de forma continua en los notebooks que usa tu empresa:

  • Configuración de registro y supervisión
  • Políticas de administración de vulnerabilidades
  • Visibilidad de los elementos

Registro y supervisión

Una vez que se crea una jerarquía, debes configurar los controles de registro y detección que usas para los proyectos nuevos. Para obtener más información sobre cómo configurar estos controles, consulta las secuencias de comandos de registro del plano de la base de seguridad.

Administración de vulnerabilidades

Las imágenes de VM de aprendizaje profundo se actualizan con regularidad. Te recomendamos actualizar las imágenes en las instancias existentes de notebook con la misma frecuencia que el programa de análisis de vulnerabilidades. Puedes verificar el resultado de la API de isUpgradeable y, luego, iniciar una actualización a través de la API de upgrade.

Visibilidad de los riesgos

Te recomendamos usar Security Command Center para ver los recursos, las vulnerabilidades, los riesgos y la política. Security Command Center analiza tu implementación para evaluar tu entorno con los marcos de trabajo de cumplimiento relevantes.

Revisión general

Para implementar la arquitectura que se describe en este documento, haz lo siguiente:

  1. Crea tus carpetas y proyectos de confianza según la sección sobre la estructura de la organización.
  2. Configura los controles de registro y supervisión para esos proyectos según tu política de seguridad. Para ver un ejemplo, consulta la configuración de registro del plano de seguridad base.
  3. Crea tus grupos IAM y agrega tus identidades de científicos de datos de confianza al grupo adecuado, como se describe en Usuarios y grupos.
  4. Configura la red con una VPC y una subred restringidas compartidas, como se describe en Herramientas de redes.
  5. Crea la política de Access Context Manager, como se describe en Access Context Manager.
  6. Clona el repositorio de Git para este plano:
  7. Crea el archivo de variable de entorno de Terraform con las entradas necesarias.
  8. Aplica las secuencias de comandos de Terraform a tu entorno para crear los controles que se analizan en este plano.
  9. Revisa el entorno de confianza según tus requisitos de administración de datos y seguridad. Puedes analizar los proyectos recién creados con los marcos de trabajo de cumplimiento de Security Command Center.
  10. Crea un conjunto de datos en BigQuery dentro del proyecto trusted-data o usa la muestra proporcionada en el módulo de repositorio de data de GitHub.
  11. Trabaja con un científico de datos en tu empresa para probar su acceso a la instancia de notebook que se acaba de crear.
  12. Dentro del entorno de Notebooks, prueba si se verifica que un científico de datos pueda interactuar con los datos de BigQuery de la forma que esperarías. Puedes usar el comando de BigQuery de ejemplo en el repositorio de GitHub asociado.

Recursos