Agent Retrieval (precedentemente Vector Search 2.0) ti consente di proteggere i dati at-rest utilizzando chiavi di crittografia gestite tramite Cloud Key Management Service. Questa integrazione offre il controllo sulle chiavi utilizzate per criptare i contenuti principali dei clienti, inclusa la possibilità di ruotare e revocare queste chiavi.
Per impostazione predefinita, i dati vengono criptati utilizzando le impostazioni predefinite della piattaforma gestite da Google. CMEK ti offre il controllo diretto sulle chiavi di crittografia.
Per saperne di più, consulta la documentazione relativa alle chiavi di crittografia gestite dal cliente (CMEK).
Prerequisiti e vincoli
Per utilizzare CMEK con una raccolta, è necessario soddisfare i seguenti prerequisiti e vincoli:
La chiave Cloud KMS deve trovarsi nella stessa regione Google Cloud della raccolta che protegge. Ad esempio, una raccolta nella regione
us-central1deve utilizzare una chiave Cloud KMS che si trova inus-central1.Devi concedere al tuo service account Per-Product-Per-Project (P4) il ruolo
cryptoKeyEncrypterDecryptersulla chiave Cloud KMS. Il service account P4 segue questo formato:service-${CONSUMER_PROJECT_NUMBER}@gcp-sa-vectorsearch.iam.gserviceaccount.com
Creazione di una raccolta protetta da CMEK
Dopo aver soddisfatto tutti i prerequisiti, puoi utilizzare gcloud CLI, l'API REST o l'SDK Python per creare una nuova raccolta con CMEK abilitata.
Utilizzo di gcloud CLI
Specifica l'ID risorsa completo della chiave Cloud KMS utilizzando l'argomento --kms-key:
gcloud vector-search collections create [COLLECTION_ID] \
--kms-key projects/[KMS_PROJECT_ID]/locations/[REGION]/keyRings/[KEY_RING]/cryptoKeys/[KEY]
Utilizzo dell'API REST
Includi encryption_spec nel corpo della richiesta POST:
{
"encryption_spec": {
"crypto_key_name": "projects/[PROJECT_ID]/locations/[REGION]/keyRings/[KEY_RING]/cryptoKeys/[KEY]"
}
}
Utilizzo dell'SDK Python
Utilizzo dell'SDK Python:
request = vectorsearch_v1beta.CreateCollectionRequest(
parent=f"projects/{PROJECT_ID}/locations/{LOCATION}",
collection_id=collection_id,
collection={
"data_schema": {...},
"vector_schema": {...},
# Specifies the customer-managed encryption key spec for a Collection
"encryption_spec": {
"crypto_key_name": f"projects/{PROJECT_ID}/locations/{LOCATION}/keyRings/{KEY_RING}/cryptoKeys/{KEY}"
}
},
)
operation = vector_search_service_client.create_collection(request=request)
operation.result()
Migrazione di oggetti di dati da una raccolta non CMEK a una raccolta abilitata per CMEK
Impossibile abilitare CMEK per le raccolte esistenti. Devi invece eseguire la migrazione degli oggetti dati in una nuova raccolta con CMEK abilitata.
Ecco come fare:
Esporta gli oggetti dati da una raccolta esistente in un bucket Cloud Storage.
Crea una nuova raccolta con CMEK abilitata.
Importa gli oggetti di dati nella raccolta.
Rotazione delle chiavi
Quando una chiave viene ruotata in Cloud KMS, i nuovi dati vengono criptati utilizzando la versione della chiave primaria, mentre i dati esistenti rimangono criptati con la versione precedente. Per saperne di più, consulta Rotazione delle chiavi.
Revoca della chiave
La revoca o la disattivazione di una chiave disattiva immediatamente la raccolta. Gli indici ANN associati vengono annullati automaticamente e i dati in memoria vengono eliminati. Le operazioni di lettura, scrittura e ricerca sulla raccolta non andranno a buon fine.
Le raccolte non vengono riattivate automaticamente se la chiave viene ripristinata.
Risorse supportate da CMEK
Le risorse di Gemini Enterprise Agent Platform coperte da CMEK sono le seguenti. Anche il supporto CMEK per le funzionalità in anteprima è in stato di anteprima.
| Risorsa | Materiale criptato | Link alla documentazione |
|---|---|---|
| Set di dati | Tutti i dati importati dagli utenti (ad esempio i contenuti di testo) per DataItems e Annotations.
Contenuti creati dagli utenti, ad esempio AnnotationSpecs, ColumnSpecs. |
Crea un set di dati per l'addestramento di modelli di classificazione e regressione
Crea un set di dati per l'addestramento di modelli di previsione |
| Index | Tutti i file di dati utilizzati per gli indici di Vector Search su Gemini Enterprise Agent Platform archiviati in Cloud Storage, Pub/Sub e nello spazio di archiviazione interno. Index e IndexEndpoint devono essere creati con la stessa chiave.
Tutti gli indici di una raccolta devono essere creati con la stessa chiave. |
Gestisci gli indici in Vector Search:
Gestisci gli indici in Vector Search 2 |
| Raccolte | Le raccolte vengono utilizzate per archiviare oggetti di dati correlati. | Gestisci le raccolte in Vector Search 2 |
| DataObjects | Le raccolte archiviano i dati come singoli oggetti JSON chiamati oggetti dati. | Gestisci gli oggetti dati in Vector Search 2 |