Zugriffssteuerung mit IAM

Die App Optimize API verwendet Identity and Access Management (IAM), um den Zugriff auf ihre Ressourcen wie Berichte und Vorgänge zu steuern. Mit IAM können Sie detaillierte Zugriffsberechtigungen auf bestimmte App Optimize API-Ressourcen gewähren und unerwünschten Zugriff auf andere Ressourcen verhindern.

In diesem Dokument werden die IAM-Berechtigungen und -Rollen beschrieben, die für die App Optimize API gelten.

Übersicht über Berechtigungen

Mit Berechtigungen werden Nutzer autorisiert, bestimmte Aktionen für App Optimize API-Ressourcen durchzuführen. In der folgenden Tabelle sind die Berechtigungen für die App Optimize API aufgeführt:

Berechtigung Beschreibung
appoptimize.operations.cancel Einen lange laufenden Vorgang abbrechen.
appoptimize.operations.delete Lange laufenden Vorgang löschen.
appoptimize.operations.get Den Status eines lang andauernden Vorgangs abrufen.
appoptimize.operations.list Vorgänge mit langer Ausführungszeit auflisten
appoptimize.reports.create Erstellen Sie eine App Optimize API-Berichtressource.
appoptimize.reports.delete Löscht eine App Optimize API-Berichtressource.
appoptimize.reports.get Konfigurationsmetadaten einer App Optimize API-Berichtressource lesen. Damit wird kein Zugriff auf Berichtsdaten gewährt.
appoptimize.reports.getData Daten in einem App Optimize API-Bericht lesen
appoptimize.reports.list App Optimize API-Berichtressourcen in einem Projekt auflisten.

Vordefinierte Rollen

IAM bietet vordefinierte Rollen, mit denen Sie bestimmte zusammengehörige Berechtigungen gewähren. Die folgenden Rollen sind für die App Optimize API verfügbar und werden in den folgenden Unterabschnitten beschrieben:

Rolle Titel Beschreibung
roles/appoptimize.admin App Optimize Admin Sie haben die vollständige Kontrolle über Berichte und Vorgänge der App Optimize API.
roles/appoptimize.viewer App Optimize Viewer Lesezugriff auf App Optimize API-Berichtsmetadaten, Berichtsdaten und ‑vorgänge.

Da sich die App Optimize API in der Vorabversion befindet, sind diese Rollen möglicherweise nicht in der Google Cloud -Konsole sichtbar. Zum Zuweisen dieser Rollen verwenden Sie die Google Cloud CLI. Installieren und initialisieren Sie die Google Cloud CLI, falls noch nicht geschehen.

Führen Sie den folgenden Befehl aus, um einem Nutzer die Rolle „App Optimize-Administrator“ (roles/appoptimize.admin) zuzuweisen:

gcloud projects add-iam-policy-binding PROJECT_ID \
    --member="user:USER_EMAIL" \
    --role="roles/appoptimize.admin"

Führen Sie den folgenden Befehl aus, um einem Nutzer die Rolle „App Optimize Viewer“ (roles/appoptimize.viewer) zuzuweisen:

gcloud projects add-iam-policy-binding PROJECT_ID \
    --member="user:USER_EMAIL" \
    --role="roles/appoptimize.viewer"

Ersetzen Sie Folgendes:

  • PROJECT_ID: die ID des Google Cloud Projekts, dem die Berichtsressource gehört.
  • USER_EMAIL: die E-Mail-Adresse des Nutzers, dem Sie die Rolle zuweisen möchten.

Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.

App Optimize Admin

Gewährt vollständige Kontrolle über App Optimize API-Ressourcen und umfasst Berechtigungen, die App Optimize Viewer gewährt werden.

  • Rollenname: roles/appoptimize.admin
  • Enthaltene Berechtigungen:
    • appoptimize.operations.*
    • appoptimize.reports.*

App Optimize Viewer

Gewährt Berechtigungen zum Lesen von App Optimize API-Berichten, deren Metadaten und Vorgängen.

  • Rollenname: roles/appoptimize.viewer
  • Enthaltene Berechtigungen:
    • appoptimize.operations.get
    • appoptimize.operations.list
    • appoptimize.reports.get
    • appoptimize.reports.getData
    • appoptimize.reports.list

Berechtigungen zum Erstellen von Berichten

Zum Erstellen eines Berichts muss ein Nutzer, ein Dienstkonto oder ein anderes Hauptkonto Folgendes haben:

  • Die Berechtigung appoptimize.reports.create, die in der Regel durch die Rolle „App Optimize Admin“ (roles/appoptimize.admin) für das Projekt gewährt wird, in dem die Berichtsressource erstellt wird.

  • Die Berechtigung billing.resourceCosts.get für alle Projekte, die im Bericht enthalten sind. Diese Berechtigung wird durch Rollen wie „Rechnungskontobetrachter“ (roles/billing.viewer) oder die einfache Rolle „Betrachter“ (roles/viewer) erteilt.

  • Die Berechtigungen für den Zugriff auf die Datenquellen, die im Umfang, den Dimensionen und den Messwerten des Berichts enthalten sind. Die App Optimize API prüft diese Berechtigungen, wenn der Bericht erstellt wird. Die Rollen, die Zugriff auf diese Datenquelle gewähren, sind:

    • Für Messwerte zur CPU- und Speicherauslastung ist die Rolle „Monitoring Viewer“ (roles/monitoring.viewer) für die Ressourcen mit Bereich erforderlich.

    • Für App Hub-Anwendungsumfang und -Dimensionen die Rolle „App Management Viewer“ (roles/apphub.appManagementViewer) für das App Hub-Hostprojekt der Anwendungen.

    Wenn Sie einen Bericht zu einer App Hub-Anwendung erstellen, die aus mehreren Projekten bestehen kann, benötigen Sie die erforderlichen Berechtigungen für Monitoring und Abrechnung für alle zugehörigen Projekte der Anwendung, um den Bericht zu erstellen.

Berechtigungen zum Lesen von Berichtsdaten

Nachdem ein Bericht erfolgreich erstellt wurde, benötigt ein Hauptkonto nur die folgende Berechtigung, um die generierten Daten zu lesen:

  • appoptimize.reports.getData für das Projekt, in dem der Bericht erstellt wurde, oder für den Bericht selbst. Diese Berechtigung ist in der Rolle roles/appoptimize.viewer enthalten.

Nächste Schritte