Bei reCAPTCHA Enterprise authentifizieren

In diesem Dokument wird beschrieben, wie Sie sich programmgesteuert bei reCAPTCHA Enterprise authentifizieren können. Wie Sie sich bei reCAPTCHA Enterprise authentifizieren, hängt von der Schnittstelle ab, die Sie für den Zugriff auf die API verwenden, und von der Umgebung, in der Ihr Code ausgeführt wird.

Weitere Informationen zur Google Cloud-Authentifizierung finden Sie unter Authentifizierung.

API-Zugriff

reCAPTCHA Enterprise unterstützt den programmatischen Zugriff. Sie haben folgende Möglichkeiten, um auf die API zuzugreifen:

Clientbibliotheken

Die reCAPTCHA Enterprise-Clientbibliotheken bieten allgemeine Sprachunterstützung für die programmatische Authentifizierung bei reCAPTCHA Enterprise. Zur Authentifizierung von Aufrufen an Google Cloud APIs unterstützen Clientbibliotheken Standardanmeldedaten für Anwendungen (Application Default Credentials, ADC). Die Bibliotheken suchen nach Anmeldedaten an einer Reihe von definierten Standorten und verwenden diese Anmeldedaten, um Anfragen an die API zu authentifizieren. Mit ADC können Sie Anmeldedaten für Ihre Anwendung in verschiedenen Umgebungen bereitstellen, z. B. in der lokalen Entwicklung oder Produktion, ohne den Anwendungscode ändern zu müssen.

Google Cloud CLI

Wenn Sie über die gcloud CLI auf reCAPTCHA Enterprise zugreifen, melden Sie sich in der gcloud CLI mit einem Google-Konto an, das die von den gcloud CLI-Befehlen verwendeten Anmeldedaten zur Verfügung stellt.

Wenn die Sicherheitsrichtlinien Ihrer Organisation verhindern, dass Nutzerkonten die erforderlichen Berechtigungen haben, können Sie die Identitätsübernahme des Dienstkontos verwenden.

Weitere Informationen finden Sie unter Für die Verwendung der gcloud CLI authentifizieren. Weitere Informationen zur Verwendung der gcloud CLI mit reCAPTCHA Enterprise finden Sie auf den Referenzseiten zur gcloud CLI.

REST

Sie können sich mit Ihren gcloud CLI-Anmeldedaten oder mit den Standardanmeldedaten für Anwendungen bei der reCAPTCHA Enterprise API authentifizieren. Weitere Informationen zur Authentifizierung für REST-Anfragen finden Sie unter Für die Verwendung von REST authentifizieren. Informationen zu den Arten von Anmeldedaten finden Sie unter gcloud CLI-Anmeldedaten und ADC-Anmeldedaten.

API-Schlüssel

API-Schlüssel bieten eine Möglichkeit, einen API-Aufruf mit einem Projekt zu verknüpfen, das für Abrechnungs- und Kontingentzwecke verwendet wird, ohne die Identität des Aufrufers zu ermitteln. API-Schlüssel können nur mit API-Methoden verwendet werden, die API-Schlüssel unterstützen.

reCAPTCHA Enterprise unterstützt API-Schlüssel für die folgenden API-Methoden:

  • projects.assessments.create
  • projects.assessments.annotate
  • ListRelatedAccountGroupMemberships
  • ListRelatedAccountGroups
  • SearchRelatedAccountGroupMemberships
  • ListFirewallPolicies

Allgemeine Informationen zur Verwendung von API-Schlüsseln finden Sie unter Mit API-Schlüsseln authentifizieren.

Authentifizierung für reCAPTCHA Enterprise einrichten

Wie Sie die Authentifizierung einrichten, hängt von der Umgebung ab, in der Ihr Code ausgeführt wird.

Am häufigsten werden folgende Optionen zum Einrichten der Authentifizierung verwendet. Weitere Optionen und Informationen zu Authentifizierung bei Google.

Für eine lokale Entwicklungsumgebung

Sie können Anmeldedaten für eine lokale Entwicklungsumgebung auf folgende Weise einrichten:

Clientbibliotheken oder Tools von Drittanbietern

Richten Sie Standardanmeldedaten für Anwendungen (ADC) für Ihre lokale Umgebung ein.

  1. Installieren Sie die Google Cloud CLI und initialisieren Sie sie mit folgendem Befehl:

    gcloud init
  2. Erstellen Sie lokale Anmeldedaten zur Authentifizierung für Ihr Google-Konto:

    gcloud auth application-default login

    Ein Anmeldebildschirm wird angezeigt. Nach der Anmeldung werden Ihre Anmeldedaten in der lokalen Anmeldedatendatei für ADC gespeichert.

Weitere Informationen zum Arbeiten mit ADC in einer lokalen Umgebung finden Sie unter Lokale Entwicklungsumgebung.

REST-Anfragen über die Befehlszeile

Wenn Sie eine REST-Anfrage über die Befehlszeile stellen, können Sie die Anmeldedaten der gcloud CLI verwenden. Fügen Sie dazu gcloud auth print-access-token in den Befehl ein, der die Anfrage sendet.

Im folgenden Beispiel werden Dienstkonten für das angegebene Projekt aufgelistet. Sie können für jede REST-Anfrage das gleiche Muster verwenden.

Bevor Sie die Anfragedaten verwenden, ersetzen Sie die folgenden Werte:

  • PROJECT_ID: Ihre Google Cloud-Projekt-ID.

Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

 

Weitere Informationen zur Authentifizierung mit REST und gRPC finden Sie unter Für die Verwendung von REST authentifizieren. Informationen zum Unterschied zwischen Ihren lokalen ADC-Anmeldedaten und Ihren gcloud CLI-Anmeldedaten finden Sie unter gcloud CLI-Anmeldedaten und ADC-Anmeldedaten.

Innerhalb von Google Cloud

Zur Authentifizierung einer in Google Cloud ausgeführten Arbeitslast verwenden Sie die Anmeldedaten des an die Compute-Ressource, in der Ihr Code ausgeführt wird, angehängten Dienstkontos. Beispiel: Sie können ein Dienstkonto an eine Compute Engine-VM-Instanz, einen Cloud Run-Dienst oder einen Dataflow-Job anhängen. Dieser Ansatz ist die bevorzugte Authentifizierungsmethode für Code, der in einer Google Cloud-Computing-Ressource ausgeführt wird.

Bei den meisten Diensten müssen Sie das Dienstkonto beim Erstellen der Ressource, in der der Code ausgeführt wird, anhängen. Sie können das Dienstkonto nicht später hinzufügen oder ersetzen. Compute Engine ist eine Ausnahme. Mit Compute Engine können Sie jederzeit ein Dienstkonto an eine VM-Instanz anhängen.

Verwenden Sie die gcloud CLI, um ein Dienstkonto zu erstellen und an Ihre Ressource anzuhängen:

  1. Installieren Sie die Google Cloud CLI und initialisieren Sie sie mit folgendem Befehl:

    gcloud init
  2. Richten Sie die Authentifizierung ein:

    1. Erstellen Sie das Dienstkonto:

      gcloud iam service-accounts create SERVICE_ACCOUNT_NAME

      Ersetzen Sie SERVICE_ACCOUNT_NAME mit einem Namen für das Dienstkonto.

    2. Um Zugriff auf Ihr Projekt und Ihre Ressourcen zu gewähren, weisen Sie dem Dienstkonto eine Rolle zu:

      gcloud projects add-iam-policy-binding PROJECT_ID --member="serviceAccount:SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com" --role=ROLE

      Dabei gilt:

      • SERVICE_ACCOUNT_NAME: der Name des Dienstkontos
      • PROJECT_ID: die Projekt-ID, unter der Sie das Dienstkonto erstellt haben
      • ROLE: die zu gewährende Rolle
    3. Führen Sie den Befehl wie schon im vorherigen Schritt aus, um dem Dienstkonto eine weitere Rolle zuzuweisen.
    4. Gewähren Sie Ihrem Google-Konto eine Rolle, mit der Sie die Rollen des Dienstkontos verwenden und das Dienstkonto an andere Ressourcen anhängen können:

      gcloud iam service-accounts add-iam-policy-binding SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com --member="user:USER_EMAIL" --role=roles/iam.serviceAccountUser

      Dabei gilt:

      • SERVICE_ACCOUNT_NAME: der Name des Dienstkontos
      • PROJECT_ID: die Projekt-ID, unter der Sie das Dienstkonto erstellt haben
      • USER_EMAIL: E-Mail-Adresse Ihres Google-Kontos
  3. Erstellen Sie die Ressource, in der der Code ausgeführt wird, und hängen Sie das Dienstkonto an diese Ressource an. Wenn Sie beispielsweise Compute Engine verwenden:

    Erstellen Sie eine Compute Engine-Instanz: Konfigurieren Sie die Instanz wie folgt:
    • Ersetzen Sie INSTANCE_NAME durch Ihren bevorzugten Instanznamen.
    • Legen Sie für das Flag --zone die Zone fest, in der Sie Ihre Instanz erstellen möchten.
    • Legen Sie das Flag --service-account auf die E-Mail-Adresse des von Ihnen erstellten Dienstkontos fest.
    gcloud compute instances create INSTANCE_NAME --zone=ZONE --service-account=SERVICE_ACCOUNT_EMAIL

Weitere Informationen zur Authentifizierung bei Google APIs finden Sie unter Authentifizierung bei Google.

Lokal oder bei einem anderen Cloud-Anbieter

Die bevorzugte Methode zum Einrichten der Authentifizierung außerhalb von Google Cloud ist die Verwendung der Identitätsföderation von Arbeitslasten. Weitere Informationen finden Sie in der Authentifizierungsdokumentation unter Lokal oder bei einem anderen Cloud-Anbieter.

Zugriffssteuerung für reCAPTCHA Enterprise

Nach der Authentifizierung bei reCAPTCHA Enterprise müssen Sie für den Zugriff auf Google Cloud-Ressourcen autorisiert sein. reCAPTCHA Enterprise verwendet Identity and Access Management (IAM) für die Autorisierung.

Weitere Informationen zu den Rollen für reCAPTCHA Enterprise finden Sie unter Zugriffssteuerung mit IAM. Weitere Informationen zu IAM und Autorisierung finden Sie in der IAM-Übersicht.

Nächste Schritte