Accedere alle risorse in un altro progetto

Managed Airflow (terza generazione) | Managed Airflow (seconda generazione) | Managed Airflow (prima generazione legacy)

Questa pagina descrive come accedere alle risorse che si trovano in un progettoGoogle Cloud diverso da quello dell'ambiente Airflow gestito.

Se vuoi utilizzare un account di servizio di un progetto per eseguire ambienti in un altro progetto, consulta Utilizzare un account di servizio di un altro progetto.

Se vuoi utilizzare gli operatori Airflow per interagire con gli ambienti Managed Airflow, inclusi gli ambienti in altri progetti, consulta Attivare i DAG in altri ambienti e progetti.

Ti consigliamo di accedere alle risorse in altri Google Cloud progetti nel seguente modo:

  1. Nei DAG, utilizza le connessioni predefinite preconfigurate nell'ambiente.

    Ad esempio, la connessione google_cloud_default viene utilizzata da molti Google Cloud operatori e viene configurata automaticamente quando crei un ambiente.

  2. Concedi ruoli e autorizzazioni IAM aggiuntivi al service account del tuo ambiente, in modo che possa accedere alle risorse in un altro progetto.

Determinare il account di servizio del tuo ambiente

Per determinare il account di servizio del tuo ambiente:

Console

  1. Nella Google Cloud console, vai alla pagina Ambienti.

    Vai ad Ambienti

  2. Nell'elenco degli ambienti, fai clic sul nome dell'ambiente. Viene visualizzata la pagina Dettagli ambiente.

  3. Vai alla scheda Configurazione ambiente.

  4. Il account di servizio del tuo ambiente è elencato nel campo Service account.

    Il valore è un indirizzo email, ad esempio service-account-name@example-project.iam.gserviceaccount.com.

gcloud

gcloud composer environments describe ENVIRONMENT_NAME \
    --location LOCATION \
    --format="get(config.nodeConfig.serviceAccount)"

Il valore è un indirizzo email, ad esempio service-account-name@example-project.iam.gserviceaccount.com.

Concedere ruoli e autorizzazioni IAM per accedere alle risorse in un altro progetto

Il account di servizio del tuo ambiente richiede le autorizzazioni per accedere alle risorse in un altro progetto. Questi ruoli e autorizzazioni possono essere diversi a seconda della risorsa a cui vuoi accedere.

Accedere a una risorsa specifica

Ti consigliamo di concedere ruoli e autorizzazioni per risorse specifiche, ad esempio un singolo bucket Cloud Storage che si trova in un altro progetto. In questo approccio, utilizzi l'accesso basato sulle risorse con associazioni di ruoli condizionali.

Per accedere a una risorsa specifica:

  1. Segui la guida Configurare l'accesso basato sulle risorse.
  2. Quando concedi ruoli e autorizzazioni, specifica il service account del tuo ambiente come entità.

Accedere a un tipo di risorsa

In alternativa, puoi concedere ruoli e autorizzazioni in base al tipo di risorsa, ad esempio tutti i bucket Cloud Storage che si trovano in un altro progetto.

Per accedere a un tipo di risorsa:

  1. Segui la guida Gestire l'accesso ad altre risorse.
  2. Quando concedi ruoli e autorizzazioni, specifica il service account del tuo ambiente come entità.

Dopo aver concesso i ruoli e le autorizzazioni richiesti, puoi accedere alle risorse in un altro progetto con le stesse connessioni Airflow predefinite che utilizzi per accedere alle risorse nel progetto in cui si trova il tuo ambiente.

Passaggi successivi