Usa los Controles del servicio de VPC

En esta página, se describe cómo usar los Controles del servicio de VPC para configurar un notebook de Colab Enterprise dentro de un perímetro de servicio.

Descripción general

Controles del servicio de VPC es una Google Cloud función que te permite configurar un perímetro que ayuda a protegerte contra el robo de datos.

Los Controles del servicio de VPC proporcionan una capa adicional de defensa para los servicios deGoogle Cloud que es independiente de la protección que brinda la administración de identidades y accesos (IAM).

Cuando usas Colab Enterprise dentro de un perímetro de servicio, los entornos de ejecución están sujetos al perímetro de servicio. Por lo tanto, para ejecutar código de notebook que interactúe con otras APIs y servicios de Google, debes agregar esos servicios al perímetro de servicio.

Para obtener más información sobre los Controles del servicio de VPC, consulta descripción general de los controles del servicio de VPC.

Limitaciones conocidas

Roles obligatorios

Para garantizar que tu cuenta de usuario tenga los permisos necesarios para usar Controles de servicio de VPC con Colab Enterprise, pídele a tu administrador que le otorgue a tu cuenta de usuario los siguientes roles de IAM en el proyecto:

Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.

Es posible que tu administrador también pueda otorgar a tu cuenta de usuario los permisos necesarios a través de roles personalizados o de otros roles predefinidos.

Para obtener más información sobre los permisos de los Controles del servicio de VPC, consulta Control de acceso con IAM.

Crea un perímetro de servicio

  1. Crea un perímetro de servicio con los Controles del servicio de VPC. Este perímetro de servicio protege los recursos administrados por Google de los servicios que especifiques. Mientras creas tu perímetro de servicio, haz lo siguiente:

    1. Cuando sea el momento de agregar proyectos al perímetro de servicio, agrega el proyecto que contiene tus notebooks de Colab Enterprise o crea notebooks en este proyecto.

    2. Cuando sea el momento de agregar servicios al perímetro de servicio, agrega lo siguiente:

      • API de Vertex AI (aiplatform.googleapis.com)
      • API de Dataform (dataform.googleapis.com)

    Si creaste el perímetro de servicio sin agregar los proyectos y los servicios que necesitas, consulta Administra los perímetros de servicio para obtener información sobre cómo actualizar el perímetro de servicio.

Proporciona acceso a la IU de Colab Enterprise

Dado que solo se puede acceder a la IU de Colab Enterprise (colab-embedded.cloud.google.com) a través de Internet, se la trata como si estuviera fuera de los perímetros de servicio. Cuando aplicas un perímetro de servicio, la interfaz de la consola de Google Cloud para los servicios que protegiste puede volverse inaccesible de manera parcial o total. Por ejemplo, si proteges Colab Enterprise con el perímetro, la interfaz de Colab Enterprise en la consola de Google Cloud se vuelve inaccesible.

Para permitir el acceso desde la consola de Google Cloud a los recursos protegidos por un perímetro, debes crear un nivel de acceso para un rango de IP pública que incluya las máquinas de los usuarios que desean usar la consola de Google Cloud con API protegidas. Por ejemplo, puedes agregar el rango de IP pública de la puerta de enlace NAT de tu red privada a un nivel de acceso y, luego, asignar ese nivel de acceso al perímetro de servicio.

Si deseas limitar el acceso de la consola de Google Cloud al perímetro solo a un conjunto específico de usuarios, también puedes agregar esos usuarios a un nivel de acceso. En ese caso, solo los usuarios especificados podrían acceder a la consola de Google Cloud.

Configura los servicios accesibles de VPC (opcional)

Cuando habilitas los servicios de VPC accesibles para un perímetro, el acceso desde los extremos de red dentro del perímetro se limita a un conjunto de servicios que especifiques.

Para obtener más información sobre cómo limitar el acceso dentro del perímetro a solo un conjunto específico de servicios, lee acerca de los servicios de VPC accesibles.

Usa el Acceso privado a Google con tu red de VPC (opcional)

El Acceso privado a Google ofrece conectividad privada a los hosts en una red de VPC o en una red local que usa direcciones IP privadas para acceder a las Google Cloud APIs y los servicios. Puedes extender un perímetro de servicio de Controles del servicio de VPC a hosts en esas redes para controlar el acceso a los recursos protegidos. Los hosts en una red de VPC deben tener solo una dirección IP privada (no una dirección IP pública) y estar en una subred con el Acceso privado a Google habilitado. Para obtener más información, consulta Conectividad privada desde redes locales.

Para garantizar que puedas usar el Acceso privado a Google con tu red de VPC, debes configurar algunos registros DNS.

Configura tus entradas de DNS con Cloud DNS

Los entornos de ejecución de Colab Enterprise usan varios dominios que una red de VPC no controla de forma predeterminada. Para garantizar que la red de VPC maneje de forma correcta las solicitudes enviadas a esos dominios, usa Cloud DNS a fin de agregar registros DNS. Para obtener más información sobre las rutas de VPC, consulta Rutas.

En esta sección, se muestra cómo crear una zona administrada para un dominio, agregar una entrada de DNS que enrute la solicitud y ejecutar la transacción. Repite estos pasos para cada uno de los diferentes dominios para los que necesitas controlar las solicitudes, a partir de *.aiplatform.googleapis.com.

En Cloud Shell o cualquier entorno en el que esté instalada la CLI de Google Cloud, ingresa los siguientes comandos de gcloud CLI.

  1. Crea una zona privada administrada para uno de los dominios que la red de VPC necesita controlar:

        gcloud dns managed-zones create ZONE_NAME \
            --visibility=private \
            --networks=https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/NETWORK_NAME \
            --dns-name=DNS_NAME. \
            --description="Description of your managed zone"
        

    Reemplaza lo siguiente:

    • ZONE_NAME: Es un nombre para la zona que se creará. Debes usar una zona separada para cada dominio. Este nombre de zona se usa en cada uno de los siguientes pasos.
    • PROJECT_ID: Es el ID del proyecto que aloja tu red de VPC.
    • NETWORK_NAME: Es el nombre de la red de VPC que creaste antes.
    • DNS_NAME: Es la parte del nombre de dominio que aparece después de *.. Por ejemplo, *.aiplatform.googleapis.com tiene un nombre de DNS de aiplatform.googleapis.com.
  2. Inicia una transacción.

        gcloud dns record-sets transaction start --zone=ZONE_NAME
        
  3. Agrega el siguiente registro A de DNS. De este modo, se redirige el tráfico a las direcciones IP restringidas de Google.

        gcloud dns record-sets transaction add \
            --name=DNS_NAME. \
            --type=A 199.36.153.4 199.36.153.5 199.36.153.6 199.36.153.7 \
            --zone=ZONE_NAME \
            --ttl=300
        
  4. Agrega el siguiente registro CNAME de DNS para que apunte al registro A que acabas de agregar. De este modo, se redirecciona todo el tráfico que coincide con el dominio a las direcciones IP enumeradas en el paso anterior.

        gcloud dns record-sets transaction add \
            --name=\*.DNS_NAME. \
            --type=CNAME DNS_NAME. \
            --zone=ZONE_NAME \
            --ttl=300
        
  5. Ejecuta la transacción.

        gcloud dns record-sets transaction execute --zone=ZONE_NAME
        
  6. Repite estos pasos para cada uno de los siguientes dominios. Para cada repetición, cambia ZONE_NAME y DNS_NAME a los valores adecuados para ese dominio. Mantén PROJECT_ID y NETWORK_NAME igual cada vez. Ya completaste estos pasos para *.aiplatform.googleapis.com.

    • *.aiplatform.googleapis.com
    • *.aiplatform-notebook.googleusercontent.com
    • *.aiplatform-notebook.cloud.google.com

Para obtener más información sobre la configuración de la conectividad privada, consulta Configura la conectividad privada a los servicios y las APIs de Google.

Permite el acceso adaptado al contexto desde fuera del perímetro de servicio mediante reglas de entrada

Puedes permitir el acceso adaptado al contexto a los recursos restringidos por un perímetro según los atributos del cliente. Puedes especificar atributos del cliente, como el tipo de identidad (cuenta de servicio o usuario), la identidad, los datos del dispositivo y el origen de la red (dirección IP o red de VPC).

Por ejemplo, puedes configurar reglas de entrada para permitir el acceso a Internet a recursos dentro de un perímetro según el rango de direcciones IPv4 e IPv6. Para obtener más información sobre el uso de reglas de entrada para configurar el acceso adaptado al contexto, consulta Acceso adaptado al contexto.

Configura el intercambio de datos seguro mediante reglas de entrada y salida

Puedes incluir tu proyecto en un solo perímetro de servicio. Si deseas permitir la comunicación en el límite del perímetro, configura las reglas de entrada y salida. Por ejemplo, puedes especificar reglas de entrada y salida para permitir que los proyectos de varios perímetros compartan registros en un perímetro independiente. Para obtener más información sobre los casos de uso de intercambio de datos seguros, consulta Intercambio seguro de datos.

¿Qué sigue?