Controlli di servizio VPC possono aiutarti a mitigare il rischio di esfiltrazione di dati da Vertex AI. Utilizza i Controlli di servizio VPC per creare un perimetro di servizio che protegga le risorse e i dati specificati. Ad esempio, quando utilizzi i Controlli di servizio VPC per proteggere Vertex AI, i seguenti elementi non possono uscire dal perimetro di servizio:
- Dati di addestramento per un modello AutoML o personalizzato
- Modelli creati da te
- Modelli cercati utilizzando Neural Architecture Search
- Richieste di previsioni online
- Risultati di una richiesta di previsione batch
- Modelli Gemini
Controllo dell'accesso alle API di Google
Le API Vertex AI, come descritto in Accedere a Vertex AI da ambienti on-premise e multicloud, coprono una serie di opzioni di accessibilità, tra cui internet pubblico, Private Service Connect per le API di Google e accesso privato Google.
Accesso pubblico
Per impostazione predefinita, queste API pubbliche sono raggiungibili da internet, ma per utilizzarle sono necessarie le autorizzazioni IAM. Sebbene funzionalità come Private Service Connect e accesso privato Google semplifichino la comunicazione privata su architetture di rete ibride, non eliminano l'accessibilità all'internet pubblico per le API Vertex AI.
Per stabilire un controllo granulare sull'accesso alle API e limitare esplicitamente l'esposizione a internet pubblico, l'implementazione di Controlli di servizio VPC diventa essenziale. Questo livello di sicurezza consente agli amministratori di definire e applicare i criteri di accesso, attivando in modo selettivo la connettività pubblica o privata alle API di Google per soddisfare i requisiti dell'organizzazione.
Accesso privato
Le organizzazioni che devono limitare le API pubbliche di Google all'accesso privato possono utilizzare i Controlli di servizio VPC in combinazione con le API di Google Private Service Connect (bundle di Controlli di servizio VPC) o Accesso privato Google. Se vengono implementate su reti ibride e in Google Cloud, entrambe le opzioni consentono l'accesso privato alle API di Google da on-premise. Tuttavia, Private Service Connect offre anche flessibilità nella definizione di un indirizzo IP personalizzato e del nome dell'endpoint DNS.
Come best practice, utilizza l'IP virtuale (VIP) limitato con le API di Google Private Service Connect o l'accesso privato Google per fornire un percorso di rete privata per le richieste ai servizi Google Cloud senza esporre le richieste a internet. L'IP virtuale limitato supporta tutte le API che i Controlli di servizio VPC possono proteggere e che richiedono considerazioni per le reti on-premise e VPC. Di seguito sono riportati alcuni esempi:
Controllo dell'accesso alle API tramite l'accesso ai servizi privati
Le seguenti API Vertex AI di cui è stato eseguito il deployment con accesso privato ai servizi richiedono una configurazione di rete aggiuntiva se implementate in un ambiente protetto con i Controlli di servizio VPC:
- Ricerca vettoriale (query sull'indice)
- Addestramento personalizzato (piano di dati)
- Vertex AI Pipelines
- Endpoint di previsione online privati
Ad esempio, Vertex AI Pipelines è un servizio gestito da Google (producer), implementato in un progetto monoutente e in una rete VPC con la possibilità di scalare i servizi supportati in base ai requisiti dei consumatori. La comunicazione tra le reti del produttore e del consumatore viene stabilita con il peering di rete VPC, ad eccezione del traffico in uscita su internet, che viene instradato tramite la rete del produttore.
Nella rete del produttore esiste una route predefinita che consente l'uscita su internet, oltre all'accesso senza restrizioni alle API di Google. Per aggiornare la rete del produttore in modo da supportare l'IP virtuale limitato, devi attivare i Controlli di servizio VPC per i peering, che eseguono le seguenti azioni su tutti i servizi supportati di cui è stato eseguito il deployment nella rete del produttore di reti di servizi:
- Rimuove la route predefinita IPv4 (destinazione
0.0.0.0/0
, gateway internet predefinito per l'hop successivo). - Crea zone private gestite da Cloud DNS e le autorizza per la rete VPC del producer di servizi. Le zone includono
googleapis.com
,pkg.dev
,gcr.io
e altri nomi di host o domini necessari per le API e i servizi Google compatibili con i Controlli di servizio VPC. - I dati registrati nelle zone risolvono tutti i nomi host in
199.36.153.4
,199.36.153.5
,199.36.153.6
e199.36.153.7
.
Un metodo alternativo per rimuovere la route predefinita dalla rete del produttore senza influire sui servizi gestiti da Google esistenti è utilizzare VPN ad alta disponibilità su Cloud Interconnect che prevede i seguenti passaggi:
- Esegui il deployment di una rete VPC dei servizi insieme alla VPN ad alta disponibilità nella rete VPC consumer.
- Esegui il deployment dei servizi gestiti da Google nella rete VPC dei servizi.
- Attiva Controlli di servizio VPC per i peering.
- Annunci la subnet di accesso ai servizi privati come annuncio di route personalizzato dal router Cloud se i servizi gestiti richiedono la raggiungibilità on-premise.
- Aggiorna il peering di rete VPC di Service Networking con l'opzione Esporta route personalizzate.
Creazione del perimetro di servizio
Per una panoramica della creazione di un perimetro di servizio, consulta Creare un perimetro di servizio nella documentazione dei Controlli di servizio VPC.
Aggiunta di servizi con limitazioni al perimetro
Quando crei un perimetro di servizio, ti consigliamo di includere tutti i servizi soggetti a limitazioni come best practice per la sicurezza. Questo approccio completo contribuisce a ridurre al minimo le potenziali vulnerabilità e gli accessi non autorizzati. Tuttavia, potrebbero verificarsi scenari in cui la tua organizzazione abbia requisiti specifici incentrati sulla salvaguardia di Vertex AI e delle sue API interconnesse. In questi casi, hai la flessibilità di selezionare e includere solo le API Vertex AI specifiche essenziali per le tue operazioni.
Le API Vertex AI che puoi incorporare nel perimetro del servizio includere quanto segue:
- L'API Vertex AI supporta i seguenti servizi e funzionalità:
- Previsione batch
- Set di dati
- Vertex AI Feature Store (pubblicazione online di Bigtable)
- Vertex AI Feature Store (pubblicazione online ottimizzata)
- IA generativa su Vertex AI (Gemini)
- Vertex AI Model Registry
- Previsione online
- Ricerca vettoriale (creazione dell'indice)
- Ricerca vettoriale (query sull'indice)
- Addestramento personalizzato (piano di controllo)
- Addestramento personalizzato (piano di dati)
- Vertex AI Pipelines
- Endpoint di previsione online privati
- Colab Enterprise
- L'API Notebooks supporta il seguente servizio:
- Vertex AI Workbench
Supporto di Controlli di servizio VPC per le pipeline di ottimizzazione dell'IA generativa
Il supporto di Controlli di servizio VPC è fornito nella pipeline di ottimizzazione dei seguenti modelli:
text-bison for PaLM 2
BERT
T5
- La famiglia di modelli
textembedding-gecko
.
Utilizzo di Controlli di servizio VPC con Vertex AI Pipelines
Il perimetro di servizio blocca l'accesso da Vertex AI ad API e servizi di terze parti su internet. Se utilizzi i componenti della pipeline di Google Cloud o crei i tuoi componenti della pipeline personalizzati per l'utilizzo con Vertex AI Pipelines, non puoi installare le dipendenze PyPI dal registro pubblico Python Package Index (PyPI). Devi invece eseguire una delle seguenti operazioni:
Utilizzo di container personalizzati
Come best practice per il software di produzione, gli autori dei componenti devono utilizzare componenti Python containerizzati e compilare le dipendenze nell'immagine del container, in modo che non sia necessaria alcuna installazione in tempo reale durante l'esecuzione di una pipeline. L'SDK Kubeflow Pipelines offre un modo per eseguire il containerizzazione del codice Python. Per ulteriori informazioni, consulta Componenti Python in container.
Installare i pacchetti da un repository Artifact Registry
In alternativa, puoi creare un repository Artifact Registry nel tuo progetto, archiviarvi i pacchetti Python e configurare l'ambiente Vertex AI in modo da eseguire l'installazione da lì, come descritto in questa sezione. Per saperne di più, consulta Gestire i pacchetti Python.
Configurare i ruoli e le autorizzazioni
L'account di servizio per il tuo ambiente Vertex AI deve avere il ruolo
iam.serviceAccountUser
.Se installi pacchetti PyPI personalizzati da un repository nella rete del tuo progetto e questo repository non ha un indirizzo IP pubblico:
Assegna le autorizzazioni per accedere a questo repository all'account di servizio dell'ambiente.
Assicurati che la connettività a questo repository sia configurata nel progetto.
Crea il repository
- Crea un repository Artifact Registry in modalità VPC nel tuo progetto.
- Memorizza i pacchetti Python richiesti nel repository.
Configura l'ambiente Vertex AI da installare dal repository
Per installare pacchetti PyPI personalizzati da uno o più repository Artifact Registry,
effettua una chiamata simile alla seguente a @dsl.component
:
@dsl.component(packages_to_install=["tensorflow"],
pip_index_urls=['http://myprivaterepo.com/simple', 'http://pypi.org/simple'],)
def hello_world(text: str) -> str:
import my_package
import tensorflow
return my_package.hello_world(text)
Limitazioni
Quando utilizzi Controlli di servizio VPC, si applicano le seguenti limitazioni:
- Per l'etichettatura dei dati, devi aggiungere gli indirizzi IP degli etichettatori a un livello di accesso.
- Per i componenti della pipeline Google Cloud, i componenti lanciano i container che controllano la loro immagine di base per verificare la presenza di tutti i requisiti.
Il pacchetto KFP, nonché eventuali pacchetti elencati nell'argomento
packages_to_install
, sono i requisiti per un contenitore. Se i requisiti specificati non sono già presenti nell'immagine di base (fornita o personalizzata), il componente tenta di scaricarli dal Python Package Index (PyPI). Poiché il perimetro di servizio blocca l'accesso da Vertex AI a API e servizi di terze parti su internet, il download non va a buon fine conConnection to pypi.org timed out
. Per scoprire come evitare questo errore, consulta Utilizzare i Controlli di servizio VPC con le pipeline Vertex AI. - Quando utilizzi i Controlli di servizio VPC con kernel personalizzati in Vertex AI Workbench, devi invece configurare il peering DNS per inviare richieste per
*.notebooks.googleusercontent.com
alla sottorete 199.36.153.8/30 (private.googleapis.com
) anziché a 199.36.153.4/30 (restricted.googleapis.com
).
Passaggi successivi
- Guarda il video Controlli di servizio VPC: come segmentare i progetti cloud in un VPC condiviso.
- Guarda il video Come utilizzare la modalità di prova in Controlli di servizio VPC.
- Guarda il video VPC Service Controls: Private IP support to create granular access controls (Controlli di servizio VPC: supporto dell'IP privato per creare controlli di accesso granulari).
- Scopri di più sui Controlli di servizio VPC.
- Scopri di più sui ruoli richiesti dai Controlli di servizio VPC.
- Scopri come risolvere i problemi relativi ai Controlli di servizio VPC.