Administra la seguridad para los consumidores de Private Service Connect

En esta página, se describe cómo los consumidores de servicios pueden configurar la seguridad para las organizaciones de consumidores y las redes de VPC que usan Private Service Connect.

Las políticas de la organización permiten a los administradores controlar de forma amplia las organizaciones o las redes de VPC a las que se pueden conectar los proyectos mediante extremos y backends de Private Service Connect. Las reglas de firewall de VPC y las políticas de firewall permiten que los administradores de red controlen el acceso a nivel de red a los recursos de Private Service Connect. Las políticas de la organización y las reglas de firewall son complementarias y se pueden usar en conjunto.

Roles

Para obtener los permisos que necesitas a fin de administrar las políticas de la organización, pídele a tu administrador que te otorgue el rol de IAM de administrador de políticas de la organización (roles/orgpolicy.policyAdmin) en la organización. Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso.

También puedes obtener los permisos necesarios mediante roles personalizados o cualquier otro rol predefinido.

Para obtener los permisos que necesitas para crear las reglas de firewall, pídele a tu administrador que te otorgue el rol de IAM de administrador de red de Compute (roles/compute.networkAdmin) en la red de VPC. Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso.

También puedes obtener los permisos necesarios mediante roles personalizados o cualquier otro rol predefinido.

Políticas de la organización del consumidor

Puedes usar las políticas de la organización con restricciones de lista para controlar la implementación de los extremos o los backends de Private Service Connect. Si un extremo o backend está bloqueado por una política de la organización de consumidores, la creación del recurso falla.

Para obtener más información, consulta Políticas de la organización del consumidor.

Bloquea la conexión de extremos y backends a adjuntos de servicio no autorizados

Recursos: extremos y backends

gcloud

  1. Crea un archivo temporal llamado /tmp/policy.yaml para almacenar la nueva política. Agrega el siguiente contenido al archivo:

    name: organizations/CONSUMER_ORG/policies/compute.restrictPrivateServiceConnectProducer
    spec:
      rules:
        - values:
            allowedValues:
            - under:organizations/PRODUCER_ORG_NUMBER
            - under:organizations/433637338589
    

    Reemplaza lo siguiente:

    • CONSUMER_ORG: el ID del recurso de la organización en la que deseas controlar el extremo y las conexiones de backend.
    • PRODUCER_ORG_NUMBER: el ID numérico del recurso de la organización del productor al que deseas que se conecten los extremos y backends.

    Para evitar que los extremos y los backends se conecten a los adjuntos de servicio que son propiedad de Google, quita el siguiente elemento de la sección allowedValues: - under:organizations/433637338589.

    Para especificar organizaciones adicionales que pueden conectarse a los adjuntos de servicio en tu proyecto, incluye entradas adicionales en la sección allowedValues.

    Además de las organizaciones, puedes especificar las carpetas y los proyectos autorizados de la siguiente manera:

    • under:folders/FOLDER_ID

      El FOLDER_ID debe ser el ID numérico.

    • under:projects/PROJECT_ID

      El PROJECT_ID debe ser el ID de la cadena.

    Por ejemplo, se puede usar lo siguiente para crear una política de la organización que bloquee los extremos y los backends en Consumer-org-1 para que no se conecten a los adjuntos de servicio, a menos que los adjuntos de servicio estén asociados con un valor permitido o un subordinado de un valor permitido. Los valores permitidos son la organización Producer-org-1, el proyecto Producer-project-1 y la carpeta Producer-folder-1.

    name: organizations/Consumer-org-1/policies/compute.restrictPrivateServiceConnectProducer
    spec:
        rules:
          - values:
              allowedValues:
              - under:organizations/Producer-org-1
              - under:projects/Producer-project-1
              - under:folders/Producer-folder-1
    
  2. Aplicar la política.

    gcloud org-policies set-policy /tmp/policy.yaml
    
  3. Consultar la política vigente.

    gcloud org-policies describe compute.restrictPrivateServiceConnectProducer \
        --effective \
        --organization=CONSUMER_ORG
    

Impide que los consumidores implementen extremos por tipo de conexión

Recursos: extremos

gcloud

  1. Crea un archivo temporal llamado /tmp/policy.yaml para almacenar la nueva política.

    • Para evitar que los usuarios de una organización de consumidor creen extremos que se conecten a las APIs de Google, agrega el siguiente contenido al archivo:

      name: organizations/CONSUMER_ORG/policies/compute.disablePrivateServiceConnectCreationForConsumers
      spec:
        rules:
          - values:
              allowedValues:
              - SERVICE_PRODUCERS
      
    • Para evitar que los usuarios de una organización de consumidor creen extremos que se conecten a los servicios publicados, agrega el siguiente contenido al archivo:

      name: organizations/CONSUMER_ORG/policies/compute.disablePrivateServiceConnectCreationForConsumers
      spec:
        rules:
          - values:
              allowedValues:
              - GOOGLE_APIS
      

    Reemplaza CONSUMER_ORG por el nombre de la organización de consumidores para la que quieres controlar la implementación del extremo.

  2. Aplicar la política.

    gcloud org-policies set-policy /tmp/policy.yaml
    
  3. Consultar la política vigente.

    gcloud org-policies describe compute.restrictPrivateServiceConnectProducer \
        --effective \
        --organization=CONSUMER_ORG
    

Reglas de firewall

Recursos: todos

Puedes usar las reglas de firewall de VPC o las políticas de firewall para controlar el acceso a los recursos de Private Service Connect. Las reglas de firewall de salida pueden bloquear o permitir el acceso desde las instancias de VM a la dirección IP o a la subred de extremos y backends.

Por ejemplo, en la figura 1, se describe una configuración en la que las reglas de firewall controlan el acceso a la subred a la que está conectado el extremo de Private Service Connect.

Figura 1. Las reglas de firewall controlan el tráfico a la subred de extremo. El tráfico de vm-1 puede llegar a la subred de extremo, mientras que el tráfico de vm-2 está bloqueado.

  1. Con la siguiente regla de firewall, se rechaza todo el tráfico de salida a la subred del extremo:

    gcloud compute firewall-rules create deny-all \
        --network=vpc-1 \
        --direction=egress \
        --action=deny \
        --destination-ranges=10.33.0.0/24
        --priority=1000
    
  2. La siguiente regla de firewall de mayor prioridad permite el tráfico de salida a la subred del extremo para las VM con la etiqueta de red allow-psc:

    gcloud compute firewall-rules create allow-psc \
        --network=vpc-1 \
        --direction=egress \
        --action=allow \
        --target-tags=allow-psc \
        --destination-ranges=10.33.0.0/24
        --priority=100
    

Usa las reglas de firewall para limitar el acceso a los extremos o backends

Para limitar el acceso de las VM a la subred de un extremo o un backend, haz lo siguiente.

  1. Crea una regla de firewall para denegar el tráfico de salida al extremo o la subred del backend.

    gcloud compute firewall-rules create deny-all \
        --network=NETWORK \
        --direction=egress \
        --action=deny \
        --destination-ranges=ENDPOINT_SUBNET_RANGE \
        --priority=1000
    

    Reemplaza lo siguiente:

    • NETWORK: El nombre de la red de tu extremo o backend.
    • ENDPOINT_SUBNET_RANGE: El rango de CIDR de IP de la subred de backend o extremo en la que deseas controlar el acceso.
  2. Crea una segunda regla de firewall para permitir el tráfico de salida de las VM etiquetadas a la subred del extremo o backend.

    gcloud compute firewall-rules create allow-psc \
        --network=NETWORK \
        --direction=egress \
        --action=allow \
        --target-tags=allow-psc \
        --destination-ranges=ENDPOINT_SUBNET_RANGE \
        --priority=100