Configurare un progetto per un team

Questa pagina fornisce esempi di come potresti configurare un progetto di un team che lavora con Vertex AI. Questa pagina presuppone che tu abbia già familiarità con i concetti di Identity and Access Management (IAM), come criteri, ruoli, autorizzazioni ed entità, come descritto in Controllo dell'accesso di Vertex AI con IAM e Concetti relativi alla gestione dell'accesso.

Questi esempi sono destinati a un utilizzo generico. Considera le esigenze specifiche e regola di conseguenza il modo in cui configuri il progetto.

Panoramica

Vertex AI utilizza IAM per gestire l'accesso Google Cloud. Quando pianifichi il controllo dell'accesso alle tue risorse, considera seguenti:

  • Puoi gestire l'accesso a livello di progetto o di risorsa. L'accesso a livello di progetto si applica a tutte le risorse in quel progetto. L'accesso a una risorsa specifica si applica solo a quella risorsa.

  • Puoi concedere l'accesso assegnando i ruoli IAM alle entità. Sono disponibili ruoli predefiniti per semplificare la configurazione dell'accesso, ma si consigliano ruoli personalizzati perché li crei, quindi puoi limitandone l'accesso solo alle autorizzazioni necessarie.

Per scoprire di più sul controllo dell'accesso, consulta Controllo dell'accesso di Vertex AI con IAM.

Un singolo progetto con accesso condiviso ai dati e alle risorse Vertex AI

In questo esempio, un team condivide un singolo progetto che contiene i propri dati di Vertex AI e Vertex AI.

Potresti configurare un progetto in questo modo se i dati, i container e altri elementi Le risorse di Vertex AI possono essere condivise tra tutti gli utenti del progetto.

Il criterio di autorizzazione IAM del progetto potrebbe essere simile al seguente:

{
  "version": 1,
  "etag": "BwWKmjvelug=",
  "bindings": [
    {
      "role": "roles/aiplatform.user",
      "members": [
        "user:USER1_EMAIL_ADDRESS",
        "user:USER2_EMAIL_ADDRESS"
      ]
    },
    {
      "role": "roles/storage.admin",
      "members": [
        "user:USER1_EMAIL_ADDRESS",
        "user:USER2_EMAIL_ADDRESS"
      ]
    },
    {
      "role": "roles/aiplatform.serviceAgent",
      "members": [
        "user:service-PROJECT_NUMBER@gcp-sa-aiplatform-cc.iam.gserviceaccount.com"
      ]
    }
  ]
}

Impostare un progetto in questo modo semplifica la collaborazione di un team per addestrare modelli, eseguire il debug del codice, eseguire il deployment dei modelli e osservare gli endpoint. Tutti gli utenti vedono le stesse risorse e possono eseguire l'addestramento con gli stessi dati. Le risorse Vertex AI operano all'interno di un singolo progetto, quindi non è necessario concedere l'accesso alle risorse esterne al progetto. La quota viene condivisa con tutto il team.

Per configurare il controllo dell'accesso al progetto del tuo team, consulta Gestire l'accesso a progetti, cartelle per le organizzazioni.

Separare i dati e le risorse Vertex AI

In questo esempio, i dati del team si trovano in un progetto separato dalle risorse Vertex AI.

Puoi configurare un progetto in questo modo se:

  • È troppo difficile spostare i dati del team sullo stesso progetto del tuo alle risorse di Vertex AI.

  • I dati del team richiedono un controllo specifico su chi può accedervi.

In queste situazioni, ti consigliamo di creare un progetto per i dati e un altro per le risorse Vertex AI. Gli sviluppatori del team condividono il progetto che contiene le risorse Vertex AI. Utilizzano le risorse di Vertex AI per accedere ai archiviati nell'altro progetto. Gli amministratori dei dati concedono Accesso alle risorse Vertex AI tramite agenti di servizio account di servizio personalizzati.

Ad esempio, potresti concedere gli agenti di servizio Vertex AI predefiniti accesso a un bucket Cloud Storage con un criterio di autorizzazione simile a le seguenti:

{
  "version": 1,
  "etag": "BwWKmjvelug=",
  "bindings": [
    {
      "role": "roles/storage.objectViewer",
      "members": [
        "user:service-PROJECT_NUMBER@gcp-sa-aiplatform-cc.iam.gserviceaccount.com",
        "user:service-PROJECT_NUMBER@gcp-sa-aiplatform.iam.gserviceaccount.com"
      ]
    }
  ]
}

Se possibile, specifica un account di servizio da utilizzare come identità della risorsa quando crei risorse Vertex AI e utilizzalo per gestire il controllo dell'accesso. In questo modo, è più facile concedere a risorse specifiche l'accesso ai dati e gestire le autorizzazioni nel tempo.

Ad esempio, puoi concedere a un account di servizio l'accesso a BigQuery con un criterio simile al seguente:

{
  "version": 1,
  "etag": "BwWKmjvelug=",
  "bindings": [
    {
      "role": "roles/bigquery.user",
      "members": [
        "user:SERVICE_ACCOUNT_NAME@PROJECT_NUMBER.iam.gserviceaccount.com"
      ]
    }
  ]
}

Per configurare il controllo dell'accesso per gli account di servizio, vedi Gestire l'accesso agli account di servizio.

Nel progetto con le risorse Vertex AI, gli amministratori possono concedere agli utenti l'accesso ai dati concedendo il ruolo Utente account di servizio (roles/iam.serviceAccountUser) agli account di servizio specificati.

Isola il codice meno attendibile in altri progetti separati

I modelli, i container di previsione e i container di addestramento sono codice. È importante isolare da modelli e dati sensibili. Esegui il deployment degli endpoint e delle fasi di addestramento nei propri progetti usano un account di servizio dedicato con autorizzazioni molto limitate, e utilizzare i Controlli di servizio VPC per isolarli e ridurre l'impatto dell'accesso concesso di container e modelli.

Passaggi successivi