Zugriffssteuerung

Sie können die Assets oder das Rechenkontingent Ihres Earth Engine-kompatiblen Projekts auf Projektebene für andere Earth Engine-Nutzer freigeben. Earth Engine-Assets oder ‑Rechenressourcen können für andere Nutzer oder Nutzergruppen freigegeben werden. Wenn Sie die Datei für eine Gruppe von Nutzern freigeben möchten, erstellen Sie eine neue Google-Gruppe und notieren Sie sich die E-Mail-Adresse (verfügbar über den Link „Info“ auf der Gruppenseite). Auf dieser Seite wird beschrieben, wie Sie Einzelpersonen oder Gruppen Zugriff auf Ressourcen gewähren und welche Rollen und Berechtigungen für verschiedene Aktivitäten erforderlich sind.

Earth Engine-Dienstnutzung festlegen

Wenn Sie die Earth Engine API in einem Cloud-Projekt verwenden möchten, muss die API für das Projekt aktiviert sein und der Nutzer muss mindestens die Berechtigungen der Rolle Earth Engine Resource Viewer haben. Weitere Informationen zu vordefinierten Earth Engine IAM-Rollen Außerdem muss der Nutzer mindestens die Berechtigung serviceusage.services.use für das Projekt haben. Diese Berechtigung kann über die Rollen Inhaber oder Bearbeiter des Projekts oder über die spezifische Rolle Service Usage-Nutzer gewährt werden. Wenn der Nutzer nicht die erforderlichen Earth Engine-Berechtigungen und Berechtigungen für die Dienstnutzung für das ausgewählte Projekt hat, wird ein Fehler ausgegeben.

Asset-Berechtigungen festlegen

Berechtigungen auf Asset-Ebene festlegen

Es gibt verschiedene Möglichkeiten, Berechtigungen auf Asset-Ebene zu aktualisieren.

  • Verwenden Sie den Asset-Manager im Code-Editor.
  • Verwenden Sie die Earth Engine-Befehlszeile.
  • Verwenden Sie eine Clientbibliothek, z. B. ee.data.setAssetAcl().
  • Alternativ können Sie die REST API direkt aufrufen.

Asset-Berechtigungen auf Projektebene festlegen

Wenn Sie die Freigabe auf Projektebene vornehmen, werden Berechtigungen für alle Assets in Ihrem Earth Engine-kompatiblen Cloud-Projekt gleichzeitig festgelegt.

Sie können Assets auf Projektebene freigeben, indem Sie auf der IAM-Verwaltungsseite Ihres Projekts die entsprechende IAM-Rolle (Identity and Access Management) zuweisen. Es gibt vordefinierte Earth Engine-IAM-Rollen für die Freigabe von Earth Engine-Assets und ‑Ressourcen. Eine allgemeinere Übersicht über IAM-Rollen finden Sie unter Informationen zu Rollen.

Wenn ein anderer Nutzer versucht, auf eines Ihrer Assets zuzugreifen, werden die Berechtigungen zuerst auf Asset-Ebene geprüft. Wenn keine Berechtigungen auf Asset-Ebene festgelegt wurden oder die Prüfung fehlschlägt (d.h., kein Zugriff), werden die Berechtigungen auf Projektebene geprüft.

Berechtigungen auf Projektebene festlegen

Wenn Sie Berechtigungen auf Projektebene festlegen möchten, weisen Sie einem Nutzer oder einer Gruppe von Nutzern eine IAM-Rolle für das Projekt zu:

  1. Öffnen Sie die IAM-Seite in der Google Cloud Console.
    IAM-Seite öffnen
    Alternativ können Sie im Code-Editor auf dem Tab Assets den Mauszeiger auf den Projektnamen bewegen und auf das Symbol  klicken.
  2. Klicken Sie auf Projekt auswählen und wählen Sie Ihr Projekt aus. Wenn Sie die IAM-Seite über den Code-Editor geöffnet haben, sollten Sie sich bereits dort befinden.
  3. Klicken Sie oben auf HINZUFÜGEN und fügen Sie die E-Mail-Adresse der Person oder Gruppe als neues Mitglied hinzu oder klicken Sie auf das Symbol  neben dem vorhandenen Mitglied im Projekt.
  4. Suchen Sie im Drop-down-Menü Rolle nach der Earth Engine-Ressourcenrolle, die Sie gewähren möchten. Weitere Informationen finden Sie unter Vordefinierte Earth Engine-IAM-Rollen.
  5. Klicken Sie auf die Schaltfläche SPEICHERN.

VPC Service Controls

Earth Engine unterstützt VPC Service Controls, eine Google Cloud-Sicherheitsfunktion, mit der Nutzer ihre Ressourcen schützen und das Risiko einer Daten-Exfiltration minimieren können. Wenn Sie einem VPC-Dienstperimeter Ressourcen hinzufügen, können Sie Lese- und Schreibvorgänge für Daten besser steuern.

Weitere Informationen zu VPC-SC-Funktionen und ‑Konfiguration

Beschränkungen

Die Aktivierung von VPC Service Controls für Ihre Ressourcen ist mit einigen Einschränkungen verbunden. Wir haben Beispiele für Problemumgehungen zusammengestellt:

Beschränkung Beispiel für eine Alternative
Der Code-Editor wird nicht unterstützt und kann mit VPC Service Controls nicht mit Ressourcen und Clients innerhalb eines Dienstperimeters verwendet werden. Verwenden Sie die Earth Engine Python API zusammen mit der geemap-Bibliothek.
Alte Assets werden nicht durch VPC Service Controls geschützt. Verwenden Sie in Cloud-Projekten gespeicherte Assets.
Exportieren in Google Drive wird von VPC Service Controls nicht unterstützt.
Earth Engine Apps werden für Ressourcen und Clients innerhalb eines Dienstperimeters nicht unterstützt. Es gibt keine Behelfslösung.

Die Verwendung von Earth Engine mit Ressourcen in einem gesicherten VPC-Dienstperimeter ist nur mit den Preisplänen „Professional“ und „Premium“ verfügbar. Wenn Sie versuchen, die Earth Engine API mit einem VPC-SC-gesicherten Projekt zu verwenden, das mit einem Preisplan vom Typ „Basic“ verknüpft ist, führt dies zu einem Fehler. Weitere Informationen zu den Preisen für die Earth Engine finden Sie in der offiziellen Dokumentation.

Weitere Informationen zu VPC Service Controls und seinen Einschränkungen finden Sie unter Unterstützte Produkte und Einschränkungen.

Rollen und Berechtigungen

In den folgenden Abschnitten werden die Berechtigungen und Rollen beschrieben, die zum Ausführen von Aktivitäten und zum Zugriff auf Earth Engine-Ressourcen erforderlich sind. Weitere Informationen zu Berechtigungen und Rollen für Google Cloud-Projekte finden Sie in der Google Cloud-Dokumentation.

Vordefinierte Earth Engine-IAM-Rollen

Earth Engine bietet vordefinierte Rollen, die unterschiedliche Zugriffsrechte auf Earth Engine-Ressourcen innerhalb eines Projekts ermöglichen. Das sind:

Rolle Titel Beschreibung
roles/earthengine.viewer Betrachter von Earth Engine-Ressourcen Gewährt Berechtigungen zum Ansehen und Auflisten von Assets und Aufgaben.
roles/earthengine.writer Earth Engine Resource Writer Bietet Berechtigungen zum Lesen, Erstellen, Ändern und Löschen von Assets, zum Importieren von Bildern und Tabellen, zum Lesen und Aktualisieren von Aufgaben, zum Ausführen interaktiver Berechnungen und zum Erstellen lang laufender Exportaufgaben.
roles/earthengine.admin Earth Engine-Administrator Gewährt Berechtigungen für alle Earth Engine-Ressourcen, einschließlich der Änderung der Zugriffssteuerung für Earth Engine-Assets.
roles/earthengine.appsPublisher Publisher von Earth Engine-Anwendungen Ermöglicht das Erstellen eines Dienstkontos für die Verwendung mit einer Earth Engine-Anwendung. Außerdem wird die Berechtigung zum Bearbeiten und Löschen von Apps des Projekts im Cloud-Projekt gewährt.

Wenn die vordefinierten Earth Engine-Rollen nicht Ihren Anforderungen entsprechen, können Sie eine einfache oder benutzerdefinierte Rolle festlegen. Auf der Seite IAM-Rollen können Sie sich die Berechtigungen für die einzelnen Rollen ansehen. Filtern Sie dazu nach einer bestimmten Rolle und klicken Sie darauf.

Vollständiger Zugriff auf die Earth Engine API

Wenn Sie Nutzern vollen Zugriff auf den Earth Engine-Dienst gewähren möchten, entweder direkt über die REST API, über den Code-Editor oder über eine Clientbibliothek, benötigen sie die Berechtigung, folgende Vorgänge auszuführen:

  • Earth Engine-Ausdrücke ausführen
  • Batch-Berechnungen (Exporte) ausführen
  • Interaktive Ergebnisse abrufen (Onlinekarten, Miniaturansichten, Diagramme usw.)
  • Earth Engine-Assets erstellen/löschen
  • OAuth-Authentifizierung über eine Clientbibliothek verwenden, um eine Verbindung zur Earth Engine herzustellen
Berechtigungen erforderlich
  • 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
Vorgeschlagene Rollen
  • Service Usage-Nutzer (roles/serviceusage.serviceUsageConsumer) UND eine der folgenden Rollen:
    • Earth Engine-Ressourcen-Betrachter (roles/earthengine.viewer) ODER
    • Earth Engine-Ressourcenautor (roles/earthengine.writer) ODER
    • Earth Engine-Ressourcenadministrator (roles/earthengine.admin)
  • Der OAuth-Konfigurationsbearbeiter (roles/oauthconfig.editor) ist zusätzlich für Nutzer erforderlich, die über eine Notebook-Umgebung auf Earth Engine zugreifen und den Notebook-Authenticator verwenden. Weitere Informationen finden Sie unter Notebook-Authentifizierung in Colab oder JupyterLab.
Hinweise In Google Cloud ist die Rolle Service Usage Consumer erforderlich, um das Projekt beim Aufrufen von APIs als aktives Projekt zu verwenden. Ohne diese Berechtigung für Projekt X schlägt ee.Initialize(project=X) fehl. Außerdem können Sie dieses Projekt in der Cloud Console auswählen, um die Nutzung von Ressourcen aufzurufen.

Nur Asset-Freigabe

Gewähren Sie dem Nutzer eine der vordefinierten Earth Engine IAM-Rollen mit den Mindestberechtigungen, die für die erforderliche Aktivität erforderlich sind. Ohne die erforderlichen serviceusage-Berechtigungen können Nutzer keine Projektressourcen nutzen.

Projektmanagement

Verfügbare Projekte auflisten und anzeigen

Das passiert, wenn Sie im Code-Editor nach verfügbaren Projekten suchen.

Berechtigungen erforderlich
  • resourcemanager.projects.get
  • resourcemanager.folders.list
  • resourcemanager.folders.get
  • resourcemanager.organizations.get (selten)
Vorgeschlagene Rollen
  • Viewer (roles/viewer) ODER
    Earth Engine-Ressourcen-Betrachter (roles/earthengine.viewer) für relevante Projekte ODER
    Browser (roles/browser, empfohlen für fortgeschrittene Organisationen)
  • Ordnerbetrachter (roles/resourcemanager.folderViewer) für relevante Ordner

Projekt für die Verwendung im Code-Editor auswählen

Berechtigungen erforderlich
  • resourcemanager.projects.get
  • serviceusage.services.get

Wenn Sie ein Projekt zum ersten Mal über den Code-Editor auswählen, wird es für die Verwendung mit Earth Engine initialisiert. Wenn Sie das noch nicht getan haben, sind diese Rollen erforderlich, damit die Einrichtung erfolgreich abgeschlossen werden kann.

  • resourcemanager.projects.update UND
  • serviceusage.services.enable
Vorgeschlagene Rollen
  • Betrachter (roles/viewer) ODER
  • Earth Engine-Ressourcen-Betrachter (roles/earthengine.viewer) UND
    Service Usage Consumer (roles/serviceusage.serviceUsageConsumer)
  • Bearbeiter (roles/editor) ODER
  • Project Mover (roles/resourcemanager.projectMover) UND
    Project IAM Admin (roles/resourcemanager.projectIamAdmin) UND
    Service Usage Admin (roles/serviceusage.serviceUsageAdmin)

Projekt über den Code-Editor erstellen

Berechtigungen erforderlich
  • resourcemanager.projects.get
  • resourcemanager.projects.create
  • resourcemanager.projects.update
  • serviceusage.services.get
  • serviceusage.services.enable
Vorgeschlagene Rollen
  • Bearbeiter (roles/editor) ODER
  • Project Mover (roles/resourcemanager.projectMover) UND
    Project Creator (roles/resourcemanager.projectCreator) UND
    Service Usage Admin (roles/serviceusage.serviceUsageAdmin)
Hinweise Möglicherweise wird Ihnen von Ihrer Organisation nicht die Rolle Bearbeiter zugewiesen. In diesem Fall sind möglicherweise die detaillierteren Rollen erforderlich. Project Mover ist erforderlich, um die Berechtigung projects.update abzudecken.

Registrierung kommerzieller Projekte

Die folgenden Berechtigungen beziehen sich auf die Registrierung von Projekten für die kostenpflichtige Nutzung.

Berechtigungen erforderlich
Rechnungskonto Wenn für das Rechnungskonto bereits ein Earth Engine-Abo vorhanden ist, sind keine Berechtigungen für das Rechnungskonto erforderlich. Andernfalls:
  • billing.accounts.get (zum Erstellen eines neuen eingeschränkten Tarifs)
  • billing.subscriptions.create (zum Erstellen eines neuen Basic- oder Professional-Abos)
Cloud-Projekt
  • earthengine.computations.create
  • earthengine.config.update
  • serviceusage.services.get
  • serviceusage.services.enable
Vorgeschlagene Rollen
Rechnungskonto Wenn für das Rechnungskonto bereits ein Earth Engine-Abo vorhanden ist, sind keine Berechtigungen für das Rechnungskonto erforderlich. Andernfalls:
  • Rechnungskontonutzer (roles/billing.user), um einen neuen eingeschränkten Tarif zu erstellen
  • Rechnungskontoadministrator (roles/billing.admin), um einen neuen Basic- oder Pro-Tarif zu erstellen
Cloud-Projekt
  • Earth Engine-Ressourcenautor (roles/earthengine.writer)
  • Service Usage Admin (roles/serviceusage.serviceUsageAdmin)

Verwaltung kommerzieller Earth Engine-Tarife

Die folgenden Berechtigungen beziehen sich auf die Verwaltung von Earth Engine-Preismodellen.

Erforderliche Berechtigungen
für das Rechnungskonto
  • billing.subscriptions.create (um einen Earth Engine-Plan zu ändern)
  • billing.subscriptions.list (um den aktuellen Earth Engine-Tarif aufzurufen)
Vorgeschlagene Rollen
für das Abrechnungskonto
  • Billing Account Viewer (roles/billing.viewer), um den aktuellen Earth Engine-Tarif aufzurufen
  • Rechnungskontoadministrator (roles/billing.admin), um ein Earth Engine-Abo zu ändern

Batch-Aufgabenverwaltung

Die folgenden Berechtigungen beziehen sich auf die Konfiguration von projektspezifischen Limits für die Parallelausführung von Batchaufgaben. Diese Funktion ist nur für kommerzielle Nutzer von Earth Engine verfügbar.

Limits für Batchaufgaben auf Projektebene ansehen

Erforderliche Berechtigungen
für das Cloud-Konto
earthengine.config.get

Limits für Batchaufgaben auf Projektebene festlegen

Erforderliche Berechtigungen
für das Cloud-Konto
earthengine.config.update
Hinweis: Diese Berechtigung umfasst auch die Anzeige der Limits auf Aboebene, die im Rechnungskonto konfiguriert sind.
Erforderliche Berechtigungen
für das Rechnungskonto
billing.subscriptions.list

App-Verwaltung

App-Informationen anzeigen

Berechtigungen erforderlich
  • iam.serviceAccounts.get
  • iam.serviceAccounts.getIamPolicy, wenn die App eingeschränkt ist (seltener)
Vorgeschlagene Rollen Betrachter (roles/viewer) ODER
Earth Engine Apps-Publisher (roles/earthengine.appsPublisher)

App veröffentlichen/aktualisieren

Berechtigungen erforderlich
  • iam.serviceAccounts.get
  • iam.serviceAccounts.create
  • iam.serviceAccounts.enable
  • iam.serviceAccounts.getIamPolicy
  • iam.serviceAccounts.setIamPolicy
  • iam.serviceAccounts.disable, wenn die App von einem Projekt in ein anderes verschoben wird (unüblich)
Vorgeschlagene Rollen Earth Engine Apps Publisher (roles/earthengine.appsPublisher) ODER
Service Account Admin (roles/iam.serviceAccountAdmin)
Hinweise
  • Außerdem identifizieren sich Dienstkonten der Earth Engine App bei den Earth Engine-Servern durch Vorlegen eines OAuth-Zugriffstokens. Daher werden bestimmte Identitäten beim Erstellen der App als Ersteller von Dienstkonto-Tokens (roles/iam.serviceAccountTokenCreator) den Dienstkonten hinzugefügt.
  • Bei einer öffentlichen Earth Engine App ist die Identität, der diese Rolle gewährt wurde, earth-engine-public-apps@appspot.gserviceaccount.com. Bei eingeschränkten Apps ist die Identität die vom App-Ersteller konfigurierte Google-Gruppe für Zugriffsbeschränkungen.

App löschen

Berechtigungen erforderlich iam.serviceAccounts.disable
Vorgeschlagene Rollen Earth Engine Apps Publisher (roles/earthengine.appsPublisher) ODER
Service Account Admin (roles/iam.serviceAccountAdmin)