Ressourcenzugriff steuern

Sie können die Assets oder das Rechenkontingent Ihres Earth Engine-fähigen Projekts auf Projektebene mit anderen Earth Engine-Nutzern teilen. Earth Engine-Assets oder ‑Rechenressourcen können für andere Nutzer oder Nutzergruppen freigegeben werden. Wenn Sie die Freigabe für eine Gruppe von Nutzern einrichten möchten, erstellen Sie eine neue Google-Gruppe und notieren Sie sich die E-Mail-Adresse der Gruppe. Diese finden Sie auf der Gruppenseite unter dem Link „Info“. Auf dieser Seite wird beschrieben, wie Sie einer Person oder Gruppe 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. Außerdem muss der Nutzer mindestens die Berechtigungen der Rolle Earth Engine Resource Viewer haben. Weitere Informationen zu vordefinierten Earth Engine-IAM-Rollen finden Sie hier. Außerdem muss der Nutzer mindestens die Berechtigung serviceusage.services.use für das Projekt haben. Diese Berechtigung kann über die Projektrollen Inhaber oder Bearbeiter oder über die spezifische Rolle Service Usage-Nutzer erteilt werden. Wenn der Nutzer nicht die erforderlichen Earth Engine- und Service Usage-Berechtigungen für das ausgewählte Projekt hat, wird ein Fehler ausgegeben.

Asset-Berechtigungen festlegen

Berechtigungen auf Asset-Ebene festlegen

Es gibt mehrere 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().
  • Oder rufen Sie die REST API direkt auf.

Asset-Berechtigungen auf Projektebene festlegen

Wenn Sie ein Projekt freigeben, werden die Berechtigungen für alle Assets in Ihrem Earth Engine-fähigen Cloud-Projekt gleichzeitig festgelegt.

Sie können Assets auf Projektebene freigeben, indem Sie auf der IAM-Seite „Verwaltung“ 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 auf Asset-Ebene keine Berechtigungen 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 Nutzergruppe eine IAM-Projektrolle zu:

  1. Öffnen Sie in der Google Cloud Console die Seite „IAM“
    Seite „IAM“ öffnen
    Oder bewegen Sie den Mauszeiger im Code-Editor auf dem Tab Assets auf den Projektnamen und klicken Sie auf das Symbol .
  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 zuweisen möchten. Weitere Informationen finden Sie unter Vordefinierte Earth Engine-IAM-Rollen.
  5. Klicken Sie auf 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, haben Sie mehr Kontrolle über Lese- und Schreibvorgänge für Daten.

Weitere Informationen zu VPC-SC-Funktionen und zur Konfiguration

Beschränkungen

Das Aktivieren von VPC Service Controls für Ihre Ressourcen ist mit einigen Einschränkungen verbunden, für die wir Beispiel-Workarounds bereitgestellt haben:

Beschränkung Beispielalternative
Der Code-Editor wird nicht unterstützt und VPC Service Controls erlaubt nicht die Verwendung des Code-Editors mit Ressourcen und Clients innerhalb eines Dienstperimeters. Verwenden Sie die Earth Engine Python API zusammen mit der geemap-Bibliothek.
Legacy-Assets sind nicht durch VPC Service Controls geschützt. Verwenden Sie Assets, die in Cloud-Projekten gespeichert sind.
Exportieren nach Google Drive wird von VPC Service Controls nicht unterstützt.
Earth Engine-Anwendungen werden für Ressourcen und Clients innerhalb eines Dienstperimeters nicht unterstützt. Keine Behelfslösung verfügbar.

Die Verwendung von Earth Engine mit Ressourcen innerhalb eines gesicherten VPC-Dienstperimeters ist nur für die Preismodelle „Professional“ und „Premium“ verfügbar. Wenn Sie versuchen, die Earth Engine API mit einem VPC-SC-gesicherten Projekt zu verwenden, das mit einem Basic-Preismodell verknüpft ist, wird ein Fehler ausgegeben. Weitere Informationen zu den Preisen für die Earth Engine finden Sie in der offiziellen Dokumentation.

Weitere Informationen zu VPC Service Controls und den 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 Cloud-Projekte finden Sie in der Google Cloud-Dokumentation.

Vordefinierte Earth Engine-IAM-Rollen

Earth Engine bietet vordefinierte Rollen, die unterschiedliche Grade der Kontrolle über Earth Engine-Ressourcen innerhalb eines Projekts ermöglichen. Diese Rollen sind:

Rolle Titel Beschreibung
roles/earthengine.viewer Betrachter von Earth Engine-Ressourcen Berechtigung zum Ansehen und Auflisten von Assets und Aufgaben.
roles/earthengine.writer Earth Engine Resource Writer Berechtigung 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 von Exportaufgaben mit langer Laufzeit.
roles/earthengine.admin Earth Engine Admin Gewährt Berechtigungen für alle Earth Engine-Ressourcen, einschließlich der Änderung von Zugriffssteuerungen für Earth Engine-Assets.
roles/earthengine.appsPublisher Publisher von Earth Engine-Anwendungen Gewährt die Berechtigung, ein Dienstkonto für die Verwendung mit einer Earth Engine-App zu erstellen. Außerdem wird die Berechtigung zum Bearbeiten und Löschen von Apps gewährt, die dem Cloud-Projekt gehören.

Wenn die vordefinierten Earth Engine-Rollen Ihren Anforderungen nicht entsprechen, können Sie eine einfache oder benutzerdefinierte Rolle festlegen. Sie können die Berechtigungen für die einzelnen Rollen auf der Seite „IAM-Rollen“ aufrufen, indem Sie nach einer bestimmten Rolle filtern und darauf klicken.

Earth Engine API aktivieren

Um die Earth Engine API für ein Cloud-Projekt zu aktivieren, benötigt der Nutzer die Rolle Service Usage-Administrator (roles/serviceusage.serviceUsageAdmin) oder eine andere Rolle, die die Berechtigung serviceusage.services.enable enthält (z. B. Project Owner oder Editor).

Berechtigungen erforderlich
  • serviceusage.services.enable
  • serviceusage.services.get
Vorgeschlagene Rollen
  • Service Usage Admin (roles/serviceusage.serviceUsageAdmin) ODER
  • Inhaber (roles/owner) ODER
  • Bearbeiter (roles/editor)

Vollständiger Zugriff auf die Earth Engine API

Damit Nutzer vollen Zugriff auf den Earth Engine-Dienst haben, entweder direkt über die REST API, über den Code-Editor oder über eine Clientbibliothek, benötigen sie die Berechtigung, Vorgänge wie die folgenden auszuführen:

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 Consumer (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)
  • OAuth-Konfigurationsbearbeiter (roles/oauthconfig.editor) ist zusätzlich für Nutzer erforderlich, die über eine Notebook-Umgebung auf Earth Engine zugreifen und den Notebook-Authentifikator verwenden. Weitere Informationen finden Sie unter Authentifizierung für Colab- oder JupyterLab-Notebooks.
Hinweise Google Cloud erfordert die Rolle Service Usage Consumer, um das Projekt als aktives Projekt beim Aufrufen von APIs 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 Ihre Ressourcennutzung anzuzeigen.

Nur Asset-Freigabe

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

Projektmanagement

Verfügbare Projekte auflisten und anzeigen

Dies geschieht, 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
  • Betrachter (roles/viewer) ODER
    Earth Engine-Ressourcen-Betrachter (roles/earthengine.viewer) für relevante Projekte ODER
    Browser (roles/browser, empfohlen für erweiterte Organisationsfälle)
  • Folder Viewer (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 das Projekt noch nicht eingerichtet wurde

Wenn Sie zum ersten Mal ein Projekt über den Code-Editor auswählen, wird das Projekt für die Verwendung mit der Earth Engine initialisiert. Wenn dies noch nicht geschehen ist, benötigen Sie diese Rollen für die Einrichtung.

  • resourcemanager.projects.update UND
  • serviceusage.services.enable
Vorgeschlagene Rollen
  • Betrachter (roles/viewer) ODER
  • Earth Engine Resource Viewer (roles/earthengine.viewer) UND
    Service Usage Consumer (roles/serviceusage.serviceUsageConsumer)
Zusätzliche Rollen (wenn das Projekt noch nicht eingerichtet wurde)
  • 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 gewährt Ihnen Ihre Organisation nicht die Rolle Bearbeiter, sodass Sie die detaillierteren Rollen benötigen. Project Mover ist erforderlich, um die Berechtigung projects.update abzudecken.

Auswahl der Stufe für die nicht kommerzielle Nutzung

Die folgenden Berechtigungen und vorgeschlagenen Rollen beziehen sich auf die Konfiguration der nicht kommerziellen Stufe.

Stufenauswahl
Berechtigungen erforderlich
  • earthengine.config.update
Vorgeschlagene Rollen
  • Earth Engine-Ressourcenautor (roles/earthengine.writer)
Rechnungskonto mit einem Projekt verknüpfen

Für die Contributor-Stufe ist ein gültiges Rechnungskonto erforderlich, das mit dem Projekt verknüpft ist. Weitere Informationen zu Abrechnungsberechtigungen und -rollen finden Sie auf der Seite Cloud Billing-Zugriff.

Berechtigungen erforderlich
Rechnungskonto
  • billing.resourceAssociations.create
Cloud-Projekt
  • resourcemanager.projects.createBillingAssignment
Vorgeschlagene Rollen
Rechnungskonto
  • Billing Account User (roles/billing.user)
Cloud-Projekt
  • Project Billing Manager (roles/billing.projectManager)

Registrierung von kommerziellen Projekten

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

Berechtigungen erforderlich
Rechnungskonto
  • billing.accounts.get
  • billing.subscriptions.list
Außerdem gilt:
  • billing.subscriptions.create (zum Erstellen eines neuen Basic- oder Professional-Abos)
Cloud-Projekt
  • earthengine.config.update
  • serviceusage.services.get
  • serviceusage.services.enable
Vorgeschlagene Rollen
Rechnungskonto
  • Billing Account Viewer (roles/billing.viewer) zum Erstellen eines neuen Limited-Tarifs
  • Billing Account Administrator (roles/billing.admin) zum Erstellen eines neuen Basic- oder Professional-Tarifs
Cloud-Projekt
  • Earth Engine-Ressourcenautor (roles/earthengine.writer)
  • Service Usage Admin (roles/serviceusage.serviceUsageAdmin)

Verwaltung des kommerziellen Earth Engine-Tarifs

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

Erforderliche Berechtigungen
für das Rechnungskonto
  • billing.accounts.get
  • billing.subscriptions.list
Außerdem gilt:
  • billing.subscriptions.create (für ein Upgrade von einem Limited-Tarif auf einen Basic- oder Professional-Tarif)
  • billing.subscriptions.update (für den Wechsel zwischen Basic- und Professional-Abos oder für ein Downgrade eines Basic- oder Professional-Abos auf Limited)
Vorgeschlagene Rollen
für das Rechnungskonto
  • Billing Account Viewer (roles/billing.viewer), um das aktuelle Earth Engine-Abo anzusehen
  • Billing Account Administrator (roles/billing.admin), um ein Earth Engine-Abo zu ändern

Batch-Aufgabenverwaltung

Die folgenden Berechtigungen beziehen sich auf die Konfiguration von projektbezogenen Limits für die Gleichzeitigkeit 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 das Aufrufen der Limits auf Planebene, die für das 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 (selten)
Vorgeschlagene Rollen Earth Engine Apps Publisher (roles/earthengine.appsPublisher) ODER
Service Account Admin (roles/iam.serviceAccountAdmin)
Hinweise
  • Darüber hinaus weisen sich Dienstkonten von Earth Engine-Apps gegenüber den Earth Engine-Servern durch ein OAuth-Zugriffstoken aus. Daher werden bestimmte Identitäten während der App-Erstellung als Ersteller von Dienstkonto-Tokens (roles/iam.serviceAccountTokenCreator) für die Dienstkonten hinzugefügt.
  • Bei einer öffentlichen Earth Engine-App ist die Identität, der diese Rolle zugewiesen wird, earth-engine-public-apps@appspot.gserviceaccount.com. Bei eingeschränkten Apps ist die Identität die Google-Gruppe für Zugriffsbeschränkungen, die vom App-Ersteller konfiguriert wurde.

App löschen

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