Sicurezza di Private Service Connect
Questa pagina fornisce una panoramica della sicurezza di Private Service Connect.
Private Service Connect fornisce diversi controlli per gestire l'accesso alle risorse Private Service Connect. Puoi controllare chi può eseguire il deployment delle risorse Private Service Connect, se è possibile stabilire connessioni tra consumer e producer e quale traffico di rete è autorizzato ad accedere a queste connessioni.
Questi controlli vengono implementati utilizzando i seguenti elementi:
- Le autorizzazioni Identity and Access Management (IAM) determinano quali principali IAM sono autorizzati a eseguire il deployment delle risorse Private Service Connect, ad esempio endpoint, backend e servizi. Un'entità IAM è un Account Google, un account di servizio, un gruppo Google, un account Google Workspace o un dominio Cloud Identity che può accedere a una risorsa.
- Gli elenchi di accettazione e rifiuto di Private Service Connect e i policy dell'organizzazione determinano se è possibile stabilire connessioni Private Service Connect tra singoli consumatori e produttori.
- Le regole firewall VPC determinano se è consentito a un determinato traffico TCP o UDP accedere alle connessioni Private Service Connect.
La Figura 1 descrive l'interazione di questi controlli lato consumer e lato producer di una connessione Private Service Connect.
IAM
Risorse: tutte
Ogni risorsa Private Service Connect è regolata da una o più autorizzazioni IAM. Queste autorizzazioni consentono agli amministratori di applicare le regole su quali entità IAM possono eseguire il deployment delle risorse Private Service Connect.
IAM non regola le entità IAM che possono collegarsi o utilizzare una connessione Private Service Connect. Per controllare quali endpoint o backend possono stabilire una connessione con un servizio, utilizza i criteri dell'organizzazione o gli elenchi di accettazione dei consumatori. Per controllare quali client possono inviare traffico alle risorse Private Service Connect, utilizza i firewall o i criteri firewall VPC.
Per ulteriori informazioni sulle autorizzazioni IAM, consulta Autorizzazioni IAM.
Per informazioni sulle autorizzazioni necessarie per creare un endpoint, consulta Creare un endpoint.
Per informazioni sulle autorizzazioni necessarie per creare un allegato del servizio, consulta Pubblicare un servizio con approvazione esplicita.
Stati di connessione
Risorse: endpoint, backend e collegamenti di servizio
Gli endpoint, i backend e i collegamenti ai servizi di Private Service Connect hanno uno stato di connessione che descrive lo stato della connessione. Le risorse consumer e producer che formano i due lati di una connessione hanno sempre lo stesso stato. Puoi visualizzare gli stati di connessione quando visualizzi i dettagli dell'endpoint, descrivi un backend o visualizzi i dettagli di un servizio pubblicato.
La seguente tabella descrive i possibili stati.
Stato della connessione | Descrizione |
---|---|
Accettata | La connessione Private Service Connect è stata stabilita. Le due reti VPC sono connesse e la connessione funziona normalmente. |
In attesa | La connessione Private Service Connect non è stabilita e il traffico di rete non può essere trasferito tra le due reti. Una connessione potrebbe avere questo stato per i seguenti motivi:
I collegamenti bloccati per questi motivi rimangono nello stato in attesa a tempo indeterminato fino a quando il problema di fondo non viene risolto. |
Rifiutata | La connessione Private Service Connect non è stabilita. Il traffico di rete non può essere trasferito tra le due reti. Una connessione potrebbe avere questo stato per i seguenti motivi:
|
Richiede attenzione o Senza specificare | Si è verificato un problema sul lato producer della connessione. Parte del traffico potrebbe essere in grado di transitare tra le due reti, ma alcune connessioni potrebbero non essere funzionali. Ad esempio, la subnet NAT del produttore potrebbe essere esaurita e non essere in grado di allocare indirizzi IP per nuove connessioni. |
Chiuso | Il collegamento al servizio è stato eliminato e la connessione Private Service Connect è chiusa. Il traffico di rete non può essere trasferito tra le due reti. Una connessione chiusa è uno stato terminale. Per ripristinare la connessione, devi ricreare sia il collegamento al servizio sia l'endpoint o il backend. |
Configurazione del collegamento del servizio
Puoi controllare quali consumatori possono connettersi a un allegato di servizio utilizzando le seguenti funzionalità.
Preferenza di connessione
Risorse: endpoint e backend
Ogni collegamento al servizio ha una preferenza di connessione che specifica se le richieste di connessione vengono accettate automaticamente. Le opzioni sono tre:
- Accetta automaticamente tutte le connessioni. Il collegamento del servizio accetta automaticamente tutte le richieste di connessione in entrata da qualsiasi consumer. L'accettazione automatica può essere sostituita da un criterio dell'organizzazione che blocca le connessioni in arrivo.
- Accetta le connessioni per le emittenti selezionate. Il collegamento al servizio accetta solo richieste di connessione in entrata se la rete VPC del consumer è presente nell'elenco di accettazione del consumer del collegamento al servizio.
- Accetta le connessioni per i progetti selezionati. Il collegamento al servizio accetta soltanto le richieste di connessione in entrata se il progetto consumer è presente nell'elenco di accettazione del consumer del collegamento al servizio.
Ti consigliamo di accettare le connessioni per i progetti o le emittenti selezionati. L'accettazione automatica di tutte le connessioni potrebbe essere appropriata se controlli l'accesso dei consumatori tramite altri mezzi e vuoi abilitare l'accesso permissivo al tuo servizio.
Accettare e rifiutare gli elenchi
Risorse: endpoint e backend
Gli elenchi di accettazione dei consumatori e gli elenchi di rifiuto dei consumatori sono una funzionalità di sicurezza degli allegati dei servizi. Gli elenchi di accettazione e rifiuto consentono ai produttori di servizi di specificare quali consumatori possono stabilire connessioni Private Service Connect ai loro servizi. Gli elenchi di accettazione dei consumatori specificano se una connessione viene accettata, mentre gli elenchi di rifiuto dei consumatori specificano se una connessione viene rifiutata. Entrambi gli elenchi ti consentono di specificare i consumatori in base alla rete VPC o al progetto della risorsa di collegamento. Se aggiungi un progetto o una rete sia all'elenco di accettazione sia all'elenco di rifiuto, le richieste di connessione da quel progetto o da quella rete vengono rifiutate. La specifica dei consumatori per cartella non è supportata.
Gli elenchi di accettazione e di rifiuto dei consumatori ti consentono di specificare progetti o reti VPC, ma non entrambi contemporaneamente. Puoi modificare un elenco da un tipo all'altro senza interrompere le connessioni, ma devi apportare la modifica in un unico aggiornamento. In caso contrario, alcune connessioni potrebbero passare temporaneamente allo stato in attesa.
Gli elenchi di consumer controllano se un endpoint può connettersi a un servizio pubblicato, ma non controllano chi può inviare richieste a quell'endpoint. Ad esempio, supponiamo che un consumer abbia una
rete VPC condivisa
con due progetti di servizio collegati. Se un servizio pubblicato ha service-project1
nell'elenco di accettazione dei consumatori e service-project2
nell'elenco di rifiuto dei consumatori, si applica quanto segue:
-
Un consumer in
service-project1
può creare un endpoint che si connette al servizio pubblicato. -
Un consumatore in
service-project2
non può creare un endpoint che si connetta al servizio pubblicato. -
Un client in
service-project2
può inviare richieste all'endpoint inservice-project1
, se non sono presenti regole o criteri del firewall che impediscono questo traffico.
Quando aggiorni un elenco di accettazione o rifiuto dei consumer, l'effetto sulle connessioni esistenti varia a seconda che la riconciliazione delle connessioni sia abilitata. Per ulteriori informazioni, consulta Riconciliazione delle connessioni.
Per informazioni su come creare un nuovo allegato del servizio con elenchi di accettazione o rifiuto dei consumatori, consulta Pubblicare un servizio con approvazione esplicita del progetto.
Per informazioni su come aggiornare gli elenchi di accettazione o rifiuto dei consumatori, consulta Gestire le richieste di accesso a un servizio pubblicato.
Limiti di connessione
Risorse: endpoint e backend
Gli elenchi di accettazione dei consumatori hanno limiti di connessione. Questi limiti impostano il numero totale di connessioni di endpoint e backend di Private Service Connect che un collegamento di servizio può accettare dal progetto consumer o dalla rete VPC specificata.
I producer possono utilizzare i limiti di connessione per impedire ai singoli consumer di esaurire gli indirizzi IP o le quote di risorse nella rete VPC del producer. Ogni connessione Private Service Connect accettata viene sottratta al limite configurato per un progetto consumer o una rete VPC. I limiti vengono impostati quando crei o aggiorni gli elenchi di accettazione dei consumatori. Puoi visualizzare le connessioni di un allegato del servizio quando lo descrivi.
Le connessioni propagate non vengono conteggiate ai fini di questi limiti.
Ad esempio, prendi in considerazione un caso in cui un allegato del servizio abbia un elenco di accettazione dei consumatori che include project-1
e project-2
, entrambi con un limite di un collegamento. Il progetto project-1
richiede due connessioni, project-2
richiede una connessione e project-3
richiede una connessione. Poiché project-1
ha un limite di una connessione, la prima viene accettata e la seconda rimane in attesa.
La connessione da project-2
è stata accettata, mentre quella da
project-3
rimane in attesa. La seconda connessione da project-1
può essere accettata aumentando il limite per project-1
. Se project-3
viene aggiunto all'elenco di accettazione dei consumatori, la connessione passa da pending ad accepted.
Criteri dell'organizzazione
Le norme dell'organizzazione ti consentono di controllare in modo generale quali progetti possono connettersi alle reti o alle organizzazioni VPC utilizzando Private Service Connect.
I criteri dell'organizzazione descritti in questa pagina possono bloccare o rifiutare nuove connessioni Private Service Connect, ma non influiscono sulle connessioni esistenti.
Un criterio dell'organizzazione si applica ai discendenti della risorsa a cui fa riferimento in base alla valutazione gerarchica. Ad esempio, un criterio dell'organizzazione che limita l'accesso a un'organizzazione Google Cloud si applica anche alle cartelle, ai progetti e alle risorse secondarie dell'organizzazione. Analogamente, l'elenco di un'organizzazione come valore consentito consente anche l'accesso alle organizzazioni secondarie di quell'organizzazione.
Per ulteriori informazioni sui criteri dell'organizzazione, consulta Criteri dell'organizzazione.
Norme dell'organizzazione per i consumatori
Puoi utilizzare i vincoli di elenco per controllare il deployment di endpoint e backend. Se un endpoint o un backend è bloccato da un criterio dell'organizzazione consumer, la creazione della risorsa non va a buon fine.
- Utilizza il vincolo dell'elenco
restrictPrivateServiceConnectProducer
per controllare a quali endpoint e backend dei collegamenti di servizio è possibile connettersi in base all'organizzazione del produttore. - Utilizza il vincolo dell'elenco
disablePrivateServiceConnectCreationForConsumers
per controllare il deployment degli endpoint in base al tipo di connessione dell'endpoint. Puoi bloccare il deployment degli endpoint che si connettono alle API di Google oppure puoi bloccare il deployment degli endpoint che si connettono ai servizi pubblicati.
Bloccare la connessione di endpoint o backend alle organizzazioni dei produttori
Risorse: endpoint e backend
I criteri dell'organizzazione che utilizzano il vincolo dell'elenco restrictPrivateServiceConnectProducer
con valori consentiti impediscono agli endpoint e ai backend di connettersi agli allegati del servizio, a meno che questi ultimi non siano associati a uno dei valori consentiti del criterio. Un criterio di questo tipo blocca le connessioni anche se sono consentite dall'elenco di accettazione dei consumer dell'allegato del servizio.
Ad esempio, il seguente criterio dell'organizzazione si applica a un'organizzazione denominata
Org-A
:
name: organizations/Org-A/policies/compute.restrictPrivateServiceConnectProducer
spec:
rules:
– values:
allowedValues:
- under:organizations/ORG_A_NUMBER
- under:organizations/433637338589
La Figura 2 mostra il risultato di questo criterio dell'organizzazione. Il criterio ha consentito valori per Org-A
(ORG_A_NUMBER
) e Google-org
(433637338589
). Gli endpoint e i backend creati in Org-A
possono comunicare con gli allegati di servizio in Org-A
, ma non con gli allegati di servizio in Org-B
.
Puoi consentire a istanze dei seguenti tipi di risorse di creare endpoint con il vincolo compute.restrictPrivateServiceConnectProducer
:
- Organizzazioni
- Cartelle
- Progetti
Per informazioni su come creare una policy dell'organizzazione che utilizzi il vincolo compute.restrictPrivateServiceConnectProducer
, consulta Impedire a endpoint e backend di connettersi ad allegati di servizi non autorizzati.
Bloccare la creazione di endpoint in base al tipo di connessione
Risorse interessate: endpoint
Puoi utilizzare il vincolo di elenco disablePrivateServiceConnectCreationForConsumers
per bloccare la creazione di endpoint in base al fatto che si connettano alle API di Google o ai servizi pubblicati (allegati di servizio).
Per informazioni su come creare un criterio dell'organizzazione che utilizzi il vincolo disablePrivateServiceConnectCreationForConsumers
, consulta Impedire ai consumatori di eseguire il deployment di endpoint in base al tipo di connessione.
Norme dell'organizzazione lato produttore
Risorse interessate: endpoint e backend
Puoi utilizzare i policy dell'organizzazione con il
compute.restrictPrivateServiceConnectConsumer
vincolo di elenco per controllare quali endpoint e backend possono collegarsi ai collegamenti di servizio Private Service Connect all'interno di un
organizzazione o progetto del produttore. Se un endpoint o un backend viene rifiutato da un criterio dell'organizzazione del produttore, la creazione della risorsa va a buon fine, ma la connessione entra nello stato rifiutato.
Il controllo dell'accesso in questo modo è simile all'utilizzo di liste di accettazione e rifiuto, diversamente dai criteri dell'organizzazione che si applicano a tutti i collegamenti di servizio in un progetto o in un'organizzazione anziché a un singolo collegamento di servizio.
Puoi utilizzare insieme i criteri dell'organizzazione e gli elenchi consentiti, con i criteri dell'organizzazione che applicano in modo generale l'accesso a un servizio gestito e gli elenchi consentiti che controllano l'accesso ai singoli allegati del servizio.
I criteri dell'organizzazione che utilizzano il vincolo compute.restrictPrivateServiceConnectConsumer
rifiutano le connessioni da endpoint e backend, a meno che l'endpoint o il backend non sia associato a uno dei valori consentiti del criterio. Un criterio di questo tipo rifiuta le connessioni anche se sono consentite da una lista consentita.
Ad esempio, il seguente criterio dell'organizzazione si applica a un'organizzazione denominata Org-A:
name: organizations/Org-A/policies/compute.restrictPrivateServiceConnectConsumer
spec:
rules:
- values:
allowedValues:
- under:organizations/ORG_A_NUMBER
La Figura 3 mostra il risultato di questo criterio dell'organizzazione. Il criterio ha un valore consentito per Org-A
(ORG_A_NUMBER
). Gli endpoint in altre reti VPC in Org-A
possono connettersi agli allegati dei servizi in Org-A
. Gli endpoint in Org-B
che tentano di connettersi vengono rifiutati.
Un criterio dell'organizzazione si applica ai discendenti della risorsa a cui fa riferimento in base alla valutazione gerarchica. Ad esempio, un criterio dell'organizzazione che limita l'accesso a un'organizzazione Google Cloud si applica anche alle cartelle, ai progetti e alle risorse secondarie dell'organizzazione. Analogamente, l'elenco di un'organizzazione come valore consentito consente anche l'accesso alle organizzazioni secondarie di quell'organizzazione.
Puoi consentire a istanze dei seguenti tipi di risorse di creare endpoint con il vincolo restrictPrivateServiceConnectConsumer
:
- Organizzazioni
- Cartelle
- Progetti
Per ulteriori informazioni sull'utilizzo dei criteri dell'organizzazione con i produttori di servizi, consulta Criteri dell'organizzazione per i produttori.
Interazione tra gli elenchi di accettazione dei consumatori e i criteri dell'organizzazione
Sia gli elenchi di accettazione dei consumatori sia i criteri dell'organizzazione controllano se è possibile stabilire una connessione tra due risorse Private Service Connect. Le connessioni vengono bloccate se una lista consentita o un criterio dell'organizzazione negano la connessione.
Ad esempio, un criterio con il vincolo restrictPrivateServiceConnectConsumer
può essere configurato per bloccare le connessioni dall'esterno dell'organizzazione del produttore. Anche se un collegamento al servizio è configurato per accettare automaticamente tutte le connessioni, i criteri dell'organizzazione bloccano comunque le connessioni dall'esterno dell'organizzazione del produttore. Ti consigliamo di utilizzare contemporaneamente le liste consentite e le norme dell'organizzazione per contribuire a fornire una sicurezza a più livelli.
Firewall
Risorse: tutte
Puoi utilizzare le regole firewall e i criteri firewall VPC per controllare l'accesso a livello di rete alle risorse Private Service Connect.
Per ulteriori informazioni sulle regole firewall VPC in generale, consulta Regole firewall VPC.
Per ulteriori informazioni sull'utilizzo delle regole firewall VPC per limitare l'accesso a endpoint o backend in una rete VPC consumer, consulta Utilizzare le regole firewall per limitare l'accesso a endpoint o backend.