Controllo dell'accesso

Puoi condividere gli asset o la quota di calcolo del tuo progetto abilitato per Earth Engine con altri utenti di Earth Engine a livello di progetto. Le risorse o i calcoli di Earth Engine possono essere condivisi con un altro utente o un gruppo di utenti. Se vuoi condividerlo con un gruppo di utenti, crea un nuovo gruppo Google e prendine nota dell'indirizzo email (disponibile dal link Informazioni nella pagina del gruppo). Questa pagina descrive come fornire accesso alle risorse per un singolo utente o un gruppo e i ruoli e le autorizzazioni richiesti per attività diverse.

Impostare l'utilizzo del servizio Earth Engine

Per utilizzare l'API Earth Engine in un progetto Cloud, l'API deve essere abilitata nel progetto e l'utente deve disporre almeno delle autorizzazioni nel ruolo Visualizzatore risorse Earth Engine (scopri di più sui ruoli IAM di Earth Engine predefiniti). Inoltre, l'utente deve disporre almeno dell'autorizzazione serviceusage.services.use per il progetto. Questa autorizzazione può essere fornita tramite i ruoli Proprietario o Editor del progetto oppure tramite il ruolo specifico Consumatore di utilizzo dei servizi. Verrà generato un errore se l'utente non dispone delle autorizzazioni Earth Engine e di Utilizzo del servizio richieste per il progetto selezionato.

Impostare le autorizzazioni per le risorse

Impostare le autorizzazioni a livello di risorsa

Esistono diverse opzioni per aggiornare le autorizzazioni a livello di risorsa.

  • Utilizza Gestione risorse nell'editor di codice.
  • Utilizza la riga di comando di Earth Engine.
  • Utilizza una libreria client, ad esempio ee.data.setAssetAcl().
  • In alternativa, chiama direttamente l'API REST.

Impostare le autorizzazioni delle risorse a livello di progetto

La condivisione a livello di progetto imposta contemporaneamente le autorizzazioni per tutti gli asset del progetto Cloud abilitato per Earth Engine.

Puoi condividere gli asset a livello di progetto assegnando il ruolo Identity and Access Management (IAM) appropriato nella pagina di amministrazione IAM del progetto. Esistono ruoli IAM Earth Engine predefiniti per la condivisione di asset e risorse Earth Engine. Per una panoramica più generale dei ruoli IAM, consulta Informazioni sui ruoli.

Quando un altro utente tenta di accedere a una delle tue risorse, le autorizzazioni vengono prima controllate a livello di risorsa. Se le autorizzazioni non sono state impostate a livello di asset o se il controllo non va a buon fine (ad es. nessun accesso), le autorizzazioni verranno controllate a livello di progetto.

Impostare le autorizzazioni a livello di progetto

Per impostare le autorizzazioni a livello di progetto, assegna un ruolo IAM del progetto a un utente o a un gruppo di utenti:

  1. Apri la pagina IAM nella console Google Cloud
    Apri la pagina IAM
    In alternativa, passa il mouse sopra il nome del progetto nella scheda Asset dell'editor di codice e fai clic sull'icona .
  2. Fai clic su Seleziona un progetto e scegli il progetto (dovresti già trovarti lì se hai aperto la pagina IAM dall'editor di codice).
  3. Fai clic su AGGIUNGI in alto e aggiungi l'indirizzo email della persona o del gruppo come nuovo membro oppure fai clic sull'icona accanto al membro esistente nel progetto.
  4. Nel menu a discesa Ruolo, cerca il ruolo Risorsa Earth Engine che vuoi concedere. Per maggiori dettagli, consulta la sezione Ruoli IAM di Earth Engine predefiniti.
  5. Fai clic sul pulsante SALVA.

Controlli di servizio VPC

Earth Engine supporta i Controlli di servizio VPC, una funzionalità di sicurezza di Google Cloud che aiuta gli utenti a proteggere le proprie risorse e a mitigare il rischio di esfiltrazione di dati. L'aggiunta di risorse a un perimetro di servizio VPC consente un maggiore controllo sulle operazioni di lettura e scrittura dei dati.

Scopri di più sulle funzionalità e sulla configurazione di VPC-SC.

Limitazioni

L'attivazione di Controlli di servizio VPC per le tue risorse comporta alcune limitazioni, per le quali abbiamo fornito esempi di soluzioni alternative:

Limitazione Esempio di alternativa
Code Editor non è supportato e Controlli di servizio VPC non ne consente l'utilizzo con le risorse e i client all'interno di un perimetro di servizio. Utilizza l' API Python di Earth Engine insieme alla libreria geemap.
Le risorse legacy non sono protette dai Controlli di servizio VPC. Utilizza gli asset archiviati nei progetti Cloud.
L' esportazione su Google Drive non è supportata da Controlli di servizio VPC.
Le app Earth Engine non sono supportate per le risorse e i client all'interno di un perimetro di servizio. Nessuna soluzione alternativa disponibile.

L'utilizzo di Earth Engine con risorse all'interno di un perimetro di servizio VPC protetto è disponibile solo per i piani tariffari Professional e Premium. Se provi a utilizzare l'API Earth Engine con un progetto protetto da VPC-SC associato a un piano tariffario di base, verrà visualizzato un errore. Per scoprire di più sui prezzi di Earth Engine, consulta la documentazione ufficiale.

Puoi trovare ulteriori informazioni sui Controlli di servizio VPC e sulle relative limitazioni in Prodotti supportati e limitazioni.

Ruoli e autorizzazioni

Le sezioni seguenti descrivono le autorizzazioni e i ruoli necessari per eseguire attività e accedere alle risorse di Earth Engine. Consulta la documentazione di Google Cloud per saperne di più sulle autorizzazioni e sui ruoli dei progetti Cloud.

Ruoli IAM predefiniti di Earth Engine

Earth Engine fornisce ruoli predefiniti che consentono diversi gradi di controllo sulle risorse di Earth Engine all'interno di un progetto. Questi ruoli sono:

Ruolo Titolo Descrizione
roles/earthengine.viewer Earth Engine Resource Viewer Fornisce l'autorizzazione per visualizzare ed elencare asset e attività.
roles/earthengine.writer Earth Engine Resource Writer Fornisce l'autorizzazione per leggere, creare, modificare ed eliminare asset, importare immagini e tabelle, leggere e aggiornare attività, eseguire calcoli interattivi e creare attività di esportazione di lunga durata.
roles/earthengine.admin Amministratore Earth Engine Fornisce l'autorizzazione per tutte le risorse Earth Engine, inclusa la modifica dei controlli di accesso per gli asset Earth Engine.
roles/earthengine.appsPublisher Earth Engine Apps Publisher Fornisce l'autorizzazione per creare un account di servizio da utilizzare con un'app Earth Engine. Inoltre, concede l'autorizzazione per modificare ed eliminare le app di proprietà del progetto nel progetto Cloud.

Tieni presente che puoi impostare un ruolo primitivo o personalizzato se i ruoli di Earth Engine predefiniti non soddisfano le tue esigenze. Puoi visualizzare il insieme di autorizzazioni associate a ciascun ruolo dalla pagina Ruoli IAM filtrando per un ruolo specifico e facendo clic sul ruolo.

Accesso completo all'API Earth Engine

Per concedere agli utenti l'accesso completo al servizio Earth Engine, direttamente tramite l'API REST, tramite l'editor di codice o tramite una libreria client, gli utenti dovranno avere l'autorizzazione per eseguire operazioni come:

  • Esecuzione di espressioni Earth Engine
  • Eseguire calcoli collettivi (esportazioni)
  • Visualizzazione di risultati interattivi (mappe online, miniature, grafici e così via)
  • Creazione/eliminazione di asset Earth Engine
  • Utilizzare l'autenticazione OAuth tramite una libreria client per connettersi a Earth Engine
Autorizzazioni richieste
  • clientauthconfig.clients.listWithSecrets
  • earthengine.assets.get
  • earthengine.assets.getIamPolicy
  • earthengine.assets.list
  • earthengine.computations.create
  • earthengine.operations.get
  • earthengine.operations.list
  • monitoring.timeSeries.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.operations.get
  • serviceusage.operations.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
  • serviceusage.services.use
Ruoli suggeriti
  • Consumer utilizzo dei servizi (roles/serviceusage.serviceUsageConsumer) E uno dei seguenti:
    • Visualizzatore risorse Earth Engine (roles/earthengine.viewer) OPPURE
    • Earth Engine Resource Writer (roles/earthengine.writer) OPPURE
    • Amministratore risorse Earth Engine (roles/earthengine.admin)
  • OAuth Config Editor (roles/oauthconfig.editor) è inoltre obbligatorio per gli utenti che accedono a Earth Engine tramite un ambiente notebook e utilizzano l'autenticatore del notebook. Per ulteriori dettagli, consulta la sezione Autentificazione dei notebook di Colab o JupyterLab.
Note Google Cloud richiede il ruolo Consumer di utilizzo dei servizi per utilizzare il progetto come progetto attivo quando vengono chiamate le API e ee.Initialize(project=X) non andrà a buon fine senza questa autorizzazione nel progetto X. Inoltre, puoi selezionare questo progetto nella console Cloud per visualizzare il tuo utilizzo delle risorse.

Solo condivisione di asset

Concedi all'utente uno dei ruoli IAM di Earth Engine predefiniti con le autorizzazioni minime per eseguire l'attività necessaria. Tieni presente che gli utenti non potranno utilizzare le risorse del progetto senza le autorizzazioni serviceusage necessarie.

Gestione di progetti

Elenca e mostra i progetti disponibili

Questo accade quando utilizzi l'editor di codice per sfogliare i progetti disponibili.

Autorizzazioni richieste
  • resourcemanager.projects.get
  • resourcemanager.folders.list
  • resourcemanager.folders.get
  • resourcemanager.organizations.get (non comune)
Ruoli suggeriti
  • Visualizzatore (roles/viewer) OPPURE
    Visualizzatore risorse Earth Engine (roles/earthengine.viewer) in progetti pertinenti OPPURE
    Browser (roles/browser, consigliato per casi di organizzazioni avanzate)
  • Visualizzatore cartelle (roles/resourcemanager.folderViewer) nelle cartelle pertinenti

Seleziona un progetto da utilizzare nell'editor di codice

Autorizzazioni richieste
  • resourcemanager.projects.get
  • serviceusage.services.get
Se il progetto non è stato configurato in precedenza

Quando viene selezionato per la prima volta un progetto tramite l'editor di codice, il progetto viene inizializzato per l'utilizzo con Earth Engine. Se non l'hai ancora fatto, avrai bisogno di questi ruoli per la corretta configurazione.

  • resourcemanager.projects.update E
  • serviceusage.services.enable
Ruoli suggeriti
  • Visualizzatore (roles/viewer) OPPURE
  • Visualizzatore risorse Earth Engine (roles/earthengine.viewer) E
    Consumatore di utilizzo del servizio (roles/serviceusage.serviceUsageConsumer)
Ruoli aggiuntivi (se il progetto non è stato configurato in precedenza)
  • Editor (roles/editor) OPPURE
  • Project Mover (roles/resourcemanager.projectMover) E
    Project IAM Admin (roles/resourcemanager.projectIamAdmin) E
    Service Usage Admin (roles/serviceusage.serviceUsageAdmin)

Creare un progetto tramite l'editor di codice

Autorizzazioni richieste
  • resourcemanager.projects.get
  • resourcemanager.projects.create
  • resourcemanager.projects.update
  • serviceusage.services.get
  • serviceusage.services.enable
Ruoli suggeriti
  • Editor (roles/editor) OPPURE
  • Project Mover (roles/resourcemanager.projectMover) E
    Project Creator (roles/resourcemanager.projectCreator) E
    Service Usage Admin (roles/serviceusage.serviceUsageAdmin)
Note La tua organizzazione potrebbe non concederti il ruolo Editor, pertanto potrebbero essere necessari ruoli più granulari. Project Mover è necessario per coprire l'autorizzazione projects.update.

Registrazione del progetto commerciale

Le seguenti autorizzazioni riguardano la registrazione dei progetti per l'utilizzo a pagamento.

Autorizzazioni richieste
Account di fatturazione
  • billing.subscriptions.list
Inoltre:
  • billing.accounts.get (per creare un nuovo piano con limitazioni)
  • billing.subscriptions.create (per creare un nuovo piano Basic o Professional)
Progetto cloud
  • earthengine.computations.create
  • earthengine.config.update
  • serviceusage.services.get
  • serviceusage.services.enable
Ruoli suggeriti
Account di fatturazione
  • Visualizzatore account di fatturazione (roles/billing.viewer), per creare un nuovo piano con limitazioni
  • Amministratore account di fatturazione (roles/billing.admin), per creare un nuovo piano di base o professionale
Progetto cloud
  • Earth Engine Resource Writer (roles/earthengine.writer)
  • Amministratore utilizzo servizio (roles/serviceusage.serviceUsageAdmin)

Gestione dei piani Earth Engine commerciali

Le seguenti autorizzazioni riguardano la gestione dei piani tariffari di Earth Engine.

Autorizzazioni necessarie
nell'account di fatturazione
  • billing.subscriptions.create (per modificare un piano Earth Engine)
  • billing.subscriptions.list (per visualizzare il piano Earth Engine attuale)
Ruoli suggeriti
nell'account di fatturazione
  • Billing Account Viewer (roles/billing.viewer) per visualizzare il piano Earth Engine attuale
  • Amministratore account di fatturazione (roles/billing.admin), per modificare un piano Earth Engine

Gestione batch delle attività

Le seguenti autorizzazioni riguardano la configurazione di limiti per progetto per la concorrenza delle attività batch. Questa funzionalità è disponibile solo per gli utenti commerciali di Earth Engine.

Visualizzazione dei limiti delle attività batch a livello di progetto

Autorizzazioni necessarie
nell'account Cloud
earthengine.config.get

Impostazione dei limiti delle attività batch a livello di progetto

Autorizzazioni necessarie
nell'account Cloud
earthengine.config.update
Nota: questa autorizzazione include anche la visualizzazione dei limiti a livello di piano configurati nell'account di fatturazione.
Autorizzazioni necessarie
nell'account di fatturazione
billing.subscriptions.list

Gestione delle app

Visualizzare le informazioni sulle app

Autorizzazioni richieste
  • iam.serviceAccounts.get
  • iam.serviceAccounts.getIamPolicy, se l'app è limitata (meno comune)
Ruoli suggeriti Visualizzatore (roles/viewer) OPPURE
Publisher di app Earth Engine (roles/earthengine.appsPublisher)

Pubblica/Aggiorna app

Autorizzazioni richieste
  • iam.serviceAccounts.get
  • iam.serviceAccounts.create
  • iam.serviceAccounts.enable
  • iam.serviceAccounts.getIamPolicy
  • iam.serviceAccounts.setIamPolicy
  • iam.serviceAccounts.disable, se l'app viene spostata da un progetto all'altro (non comune)
Ruoli suggeriti Editore di app Earth Engine (roles/earthengine.appsPublisher) OPPURE
Amministratore dell'account di servizio (roles/iam.serviceAccountAdmin)
Note
  • Inoltre, gli account di servizio delle app Earth Engine si identificano ai server di Earth Engine presentando un token di accesso OAuth. Pertanto, durante la creazione dell'app vengono aggiunte determinate identità come Creatore token account di servizio (roles/iam.serviceAccountTokenCreator) negli account di servizio.
  • Nel caso di un'app Earth Engine pubblica, l'identità concessa a questo ruolo è earth-engine-public-apps@appspot.gserviceaccount.com e, nel caso di app con limitazioni, l'identità è il gruppo Google di limitazione dell'accesso configurato dal creatore dell'app.

Eliminare un'app

Autorizzazioni richieste iam.serviceAccounts.disable
Ruoli suggeriti Editore di app Earth Engine (roles/earthengine.appsPublisher) OPPURE
Amministratore dell'account di servizio (roles/iam.serviceAccountAdmin)