Gestisci la sicurezza per i consumer Private Service Connect

Questa pagina descrive in che modo i consumer di servizi possono configurare la sicurezza per le organizzazioni consumer e le reti VPC che utilizzano Private Service Connect.

I criteri dell'organizzazione consentono agli amministratori di controllare ampiamente le reti VPC o le organizzazioni a cui i loro progetti possono connettersi utilizzando gli endpoint e i backend Private Service Connect. Le regole firewall VPC e i criteri firewall consentono agli amministratori di rete di controllare l'accesso a livello di rete alle risorse Private Service Connect. I criteri dell'organizzazione e le regole firewall sono complementari e possono essere utilizzati insieme.

Ruoli

Per ottenere le autorizzazioni necessarie per gestire i criteri dell'organizzazione, chiedi all'amministratore di concederti il ruolo IAM Amministratore dei criteri dell'organizzazione (roles/orgpolicy.policyAdmin) per l'organizzazione. Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso.

Potresti anche essere in grado di ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.

Per ottenere le autorizzazioni necessarie per creare le regole firewall, chiedi all'amministratore di concederti il ruolo IAM Amministratore di rete Compute (roles/compute.networkAdmin) per la rete VPC. Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso.

Potresti anche essere in grado di ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.

Criteri dell'organizzazione dei consumatori

Puoi utilizzare i criteri dell'organizzazione con limiti dell'elenco per controllare il deployment degli endpoint o dei backend di Private Service Connect. Se un endpoint o un backend è bloccato da un criterio dell'organizzazione consumer, la creazione della risorsa non riesce.

Per ulteriori informazioni, consulta le norme dell'organizzazione lato consumer.

Impedisci a endpoint e backend di connettersi a collegamenti ai servizi non autorizzati

gcloud

  1. Crea un file temporaneo denominato /tmp/policy.yaml per archiviare il nuovo criterio. Aggiungi i seguenti contenuti al file:

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

    Sostituisci quanto segue:

    • CONSUMER_ORG: l'ID risorsa dell'organizzazione dell'organizzazione in cui vuoi controllare le connessioni degli endpoint e del backend.
    • PRODUCER_ORG_NUMBER: l'ID numerico risorsa dell'organizzazione dell'organizzazione producer a cui vuoi consentire la connessione di endpoint e backend.

    Per impedire agli endpoint e ai backend di connettersi ai collegamenti dei servizi di proprietà di Google, rimuovi il seguente elemento dalla sezione allowedValues: - under:organizations/433637338589.

    Per specificare altre organizzazioni che possono connettersi ai collegamenti ai servizi nel tuo progetto, includi voci aggiuntive nella sezione allowedValues.

    Oltre alle organizzazioni, puoi specificare le cartelle e i progetti autorizzati nel seguente formato:

    • under:folders/FOLDER_ID

      FOLDER_ID deve essere l'ID numerico.

    • under:projects/PROJECT_ID

      PROJECT_ID deve essere l'ID stringa.

    Ad esempio, quanto segue può essere utilizzato per creare un criterio dell'organizzazione che impedisca agli endpoint e ai backend in Consumer-org-1 di connettersi ai collegamenti ai servizi, a meno che i collegamenti ai servizi non siano associati a un valore consentito o a un discendente di un valore consentito. I valori consentiti sono l'organizzazione Producer-org-1, il progetto Producer-project-1 e la cartella 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. Applica il criterio.

    gcloud org-policies set-policy /tmp/policy.yaml
    
  3. Visualizza il criterio in vigore.

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

Impedisci ai consumatori di eseguire il deployment degli endpoint per tipo di connessione

gcloud

  1. Crea un file temporaneo denominato /tmp/policy.yaml per archiviare il nuovo criterio.

    • Per impedire agli utenti di un'organizzazione consumer di creare endpoint che si connettono alle API di Google, aggiungi i seguenti contenuti al file:

      name: organizations/CONSUMER_ORG/policies/compute.disablePrivateServiceConnectCreationForConsumers
      spec:
        rules:
          - values:
              allowedValues:
              - SERVICE_PRODUCERS
      
    • Per impedire agli utenti di un'organizzazione consumer di creare endpoint che si connettono ai servizi pubblicati, aggiungi i seguenti contenuti al file:

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

    Sostituisci CONSUMER_ORG con il nome dell'organizzazione consumer per la quale vuoi controllare il deployment degli endpoint.

  2. Applica il criterio.

    gcloud org-policies set-policy /tmp/policy.yaml
    
  3. Visualizza il criterio in vigore.

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

Regole del firewall

Puoi utilizzare le regole firewall VPC o i criteri firewall per controllare l'accesso alle risorse Private Service Connect. Le regole firewall in uscita possono bloccare o consentire l'accesso dalle istanze VM all'indirizzo IP o alla subnet di endpoint e backend.

Ad esempio, la figura 1 descrive una configurazione in cui le regole firewall controllano l'accesso alla subnet a cui è connesso l'endpoint Private Service Connect.

Figura 1. Le regole firewall controllano il traffico verso la subnet degli endpoint. Il traffico proveniente da vm-1 può raggiungere la subnet dell'endpoint, mentre quello proveniente da vm-2 è bloccato.

  1. La seguente regola firewall nega tutto il traffico in uscita verso la subnet dell'endpoint:

    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 seguente regola firewall con priorità più alta consente il traffico in uscita verso la subnet dell'endpoint per le VM con il tag di rete 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
    

Utilizza le regole firewall per limitare l'accesso a endpoint o backend

Per limitare l'accesso dalle VM alla subnet di un endpoint o di un backend, segui questi passaggi.

  1. Crea una regola firewall per negare il traffico in uscita verso l'endpoint o la subnet di backend.

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

    Sostituisci quanto segue:

    • NETWORK: il nome della rete dell'endpoint o del backend.
    • ENDPOINT_SUBNET_RANGE: l'intervallo IP CIDR dell'endpoint o della subnet di backend di cui vuoi controllare l'accesso.
  2. Crea una seconda regola firewall per consentire il traffico in uscita dalle VM con tag all'endpoint o alla subnet di 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