Validierung des Dienstkontos

Apigee Hybrid bietet eine Validierung, die sicherstellt, dass der Speicherort der Schlüssel Ihrer Dienstkonten korrekt ist und die Konten die entsprechenden Berechtigungen in Ihrem Google Cloud-Projekt haben. Diese Validierung ist standardmäßig aktiviert.

In diesem Abschnitt wird beschrieben, wie Sie die Dienstkontovalidierung aktivieren oder deaktivieren. Außerdem wird mit diesem Schritt sichergestellt, dass Sie die richtigen APIs für Ihr Google Cloud-Projekt aktiviert haben, damit die Validierung funktioniert.

Berechtigungsvalidierung von Dienstkonten aktivieren

So aktivieren Sie die Berechtigungsvalidierung:

  1. Die Cloud Resource Manager API muss für Ihr Google Cloud-Projekt aktiviert sein:
    1. Öffnen Sie die Google Cloud Console und melden Sie sich mit dem Konto an, das Sie in Schritt 1: Google Cloud-Konto erstellen erstellt haben.
    2. Wählen Sie das Projekt aus, das Sie in Schritt 2: Google Cloud-Projekt erstellen erstellt haben.
    3. Wählen Sie APIs & Dienste > Bibliothek aus.
    4. Suchen Sie nach "Cloud Resource Manager".
    5. Suchen Sie den Dienst Cloud Resource Manager API und klicken Sie darauf.
    6. Wenn sie nicht aktiviert ist, klicken Sie auf Aktivieren.

    Sie können die API auch mit gcloud aktivieren:

    gcloud services enable cloudresourcemanager.googleapis.com --project GCP_project_ID
  2. Fügen Sie in der Überschreibungendatei das Attribut validateServiceAccounts hinzu und setzen Sie es auf true. Beispiele:
    ...
    # Enables strict validation of service account permissions.
    validateServiceAccounts: true
    ...

Ist die Validierung aktiviert, werden jedes Mal, wenn apigeectl die Hybrid-Laufzeitkomponenten von Apigee auf Ihren Cluster anwendet, die in Ihren Überschreibungsdateien enthaltenen Dienstkontoschlüssel validiert.

Fehlerbehebung bei Validierungsfehlern

Wenn die Validierung fehlschlägt, wird die Laufzeitbereitstellung angehalten und apigeectl wird beendet. Wenn Sie Dienstkontofehler beheben möchten, sollten Sie wissen, dass die Berechtigungen bei der Validierung in dieser Reihenfolge geprüft werden:

  1. Berechtigung für die Projekt-ID.
  2. Nur für UDCA und Synchronizer: Wenn die Berechtigungsprüfung für das Projekt fehlschlägt, wird die Validierung anhand der IAM-Richtlinie der Apigee-Umgebung fortgesetzt. Diese Dienstkonten sind umgebungsbezogen und die Umgebungen unterstützen detailliertere Berechtigungen.

    Rufen Sie die Hybrid-Benutzeroberfläche auf, um die IAM-Richtlinie für eine bestimmte Umgebung zu aktualisieren. Gehen Sie zu Admin > Umgebungen > Zugriff.

Das folgende Beispiel zeigt eine Fehlermeldung bei einer fehlgeschlagenen Berechtigungsprüfung:

Invalid Metrics Service Account. Service Account
"apigee-metrics@hybrid-project.iam.gserviceaccount.com" is missing 1 or more required
permissions [monitoring.metricDescriptors.create monitoring.metricDescriptors.get monitoring.metricDescriptors.list
monitoring.monitoredResourceDescriptors.get monitoring.monitoredResourceDescriptors.list monitoring.timeSeries.create].
Visit Service accounts and roles used by
hybrid components for more details on setting up Apigee hybrid service account permissions.

Fügen Sie dem Dienstkonto die erforderlichen Rollen hinzu, um diesen Fehler zu beheben. Informationen zum Erstellen und Ändern von Dienstkonten finden Sie unter Dienstkonten erstellen. Informationen zu den erforderlichen Berechtigungen für jede Apigee-Hybridkomponente finden Sie unter Von Hybridkomponenten verwendete Dienstkonten und Rollen.

Berechtigungsvalidierung deaktivieren

Zum Deaktivieren der Validierung der Dienstkontoberechtigungen setzen Sie das Attribut validationServiceAccounts in der Überschreibungendatei auf false, wie im folgenden Beispiel gezeigt:

...
# Enables strict validation of service account permissions.
validateServiceAccounts: false
...