Nutzer authentifizieren

Wenn Ihre Anwendung Anfragen von Nutzern verarbeitet, sollten Sie als Best Practice den Zugriff auf zugelassene Nutzer beschränken. Nutzer haben in der Regel keine IAM-Berechtigung für Ihr Google Cloud-Projekt oder Ihren Cloud Run-Dienst.

Wir unterscheiden zwei Arten von Nutzern:

  • Endnutzer: Nutzer Ihrer Anwendung, die nicht unbedingt zu Ihrer Organisation gehören. Normalerweise müssen Nutzer ein Konto für sich selbst registrieren.
  • Interne Nutzer: Nutzer, die explizit von einem Administrator in Ihrer Organisation Zugriff auf Ihre Anwendung erhalten. Sie gehören normalerweise zu Ihrer Organisation.

Endnutzer authentifizieren

Wenn Sie Nutzer über E-Mail/Passwort, Telefonnummer, soziale Netzwerke wie Google, Facebook oder GitHub oder über einen benutzerdefinierten Authentifizierungsmechanismus authentifizieren möchten, können Sie Identity Platform verwenden. Die Verwendung von Firebase Authentication ähnelt der Verwendung von Identity Platform.

Sie benötigen eine öffentliche Webanwendung oder eine mobile App, die den Anmeldevorgang übernimmt und dann authentifizierte API-Aufrufe an einen Cloud Run-Dienst durchführt. Diese öffentliche Webanwendung kann selbst in einem öffentlichen Cloud Run-Dienst gehostet werden.

Eine vollständige Anleitung zur Verwendung von Identity Platform für die Endnutzerauthentifizierung finden Sie in der Anleitung Endnutzerauthentifizierung für Cloud Run.

  1. Fügen Sie Ihrem Cloud Run-Dienst Code hinzu, um ID-Tokens zu prüfen.

  2. Stellen Sie Ihren Cloud Run-Dienst öffentlich bereit.

  3. Richten Sie Identity Platform in Ihrem Projekt ein.

  4. Gehen Sie in Ihrer Web- oder mobilen Anwendung so vor:

    1. Verwenden Sie die erforderliche Firebase Authentication-Clientbibliothek, um ein ID-Token abzurufen:
    2. Fügen Sie das ID-Token in der Anfrage an den Dienst im Header Authorization: Bearer ID_TOKEN ein.

Wenn Sie auf Nutzerprofildaten zugreifen möchten, können Sie das Firebase Admin SDK verwenden, um Nutzerdaten abzurufen.

Das Tutorial Endnutzerauthentifizierung für Cloud Run enthält eine schrittweise Anleitung für eine Anwendung mit dieser Authentifizierungsmethode.

Interne Nutzer authentifizieren

Für die interne Nutzerauthentifizierung können Sie Identity-Aware Proxy verwenden.

Informationen zum Einrichten von Identity-Aware Proxy für einen vorhandenen Cloud Run-Dienst finden Sie in der Dokumentation zum Aktivieren von Identity-Aware Proxy für Cloud Run.

Eine Anleitung zur Authentifizierung von Nutzern oder Dienstkonten für einen mit Identity-Aware Proxy gesicherten Cloud Run-Dienst unter Verwendung von OAuth 2.0 finden Sie in der Dokumentation zur programmatischen Authentifizierung.