Diese Seite wurde von der Cloud Translation API übersetzt.
Switch to English

Front-End Ihrer Anwendung einbinden

Auf dieser Seite werden die Schritte zum Einbinden des Frontends Ihrer Anwendung Google Cloud Marketplace beschrieben. Die Front-End-Einbindung sorgt dafür, dass Ihre Kunden reibungslos vom Google Cloud Marketplace zu Ihrer Anwendung wechseln können.

Kontoaktivierungsseite für neue Nutzer erstellen

Wenn Nutzer Ihr Produkt aus Google Cloud Marketplace auswählen, müssen sie ihre Konten in Ihrer Anwendung aktivieren. Sie müssen eine Aktivierungsseite erstellen, um Nutzerkonten in Ihrem System einzurichten und zu genehmigen. Sie können die Seite als Registrierungsseite einrichten, auf der Nutzer sich für ein Konto in Ihrem System anmelden müssen, oder als Seite, auf der Konten automatisch genehmigt werden. Achten Sie beim Einrichten Ihrer Aktivierungsseite darauf, dass die Nutzer auf die Seite zugreifen können, ohne einen Nutzernamen und ein Passwort einzugeben.

Wenn Nutzer im Google Cloud Marketplace auf den Link klicken, um sich für Ihre Anwendung anzumelden, sendet Google eine HTTP POST-Anforderung an Ihre Aktivierungsseite und ein JSON-Web-Token (JWT) in den x-gcp-marketplace-token-Parameter. Das JWT enthält die Beschaffungskonto-ID des Nutzers, die ihn als Google Cloud-Nutzer identifiziert. Sie müssen diese ID verwenden, um das Google-Konto des Nutzers mit seinem Konto in Ihrem System zu verknüpfen.

Nach der JWT-Validierung muss auf der Aktivierungsseite eine Kontogenehmigungsanfrage an die Partner Procurement API gesendet werden, wie unter Back-End-Integrationsschritte beschrieben.

Wenn Sie mit JWT noch nicht vertraut sind, lesen Sie die JWT-Einführung.

Seite zum Aktivieren Ihres Kontos im Portal hinzufügen

Du kannst dein Producer Portal oder das Partner-Portal verwenden, um die URL deiner Kontoaktivierungsseite hinzuzufügen.

Producer Portal

Der Link zum Producer Portal lautet:

https://console.cloud.google.com/producer-portal?project=YOUR_PROJECT_ID

So fügen Sie Ihre Kontoaktivierungsseite zum Producer Portal hinzu:

  1. Klicken Sie in der Produktliste auf den Namen Ihres Produkts.

  2. Gehen Sie auf der Seite Übersicht des Produkts zum Abschnitt Technische Integration und klicken Sie auf FRONTEND-INTEGRATION.

  3. Geben Sie die URL für die Seite zur Kontoaktivierung in das Feld Registrierungs-URL ein.

Partner-Portal

Der Link zum Partner-Portal lautet:

https://console.cloud.google.com/partner/solutions?project=YOUR_PROJECT_ID

So fügen Sie Ihre Kontoaktivierungsseite dem Partner-Portal hinzu:

  1. Klicken Sie in der Liste der Lösungen auf die Lösungs-ID, die Sie erstellt haben.

  2. Klicken Sie auf der Seite Pläne und Funktionen auf die Seite, um sie zu bearbeiten.

  3. Geben Sie die URL für die Seite zur Kontoaktivierung in das Feld Registrierungs-URL ein.

JWT überprüfen

Die JWT-Nutzlast hat folgendes Format:

Header

{
  "alg": "RS256",
  "kid": "KEY_ID"
}

Wobei:

  • alg ist immer RS256.
  • kid gibt die Schlüssel-ID an, die zum Sichern des JWT verwendet wurde. Verwenden Sie die Schlüssel-ID, um den Schlüssel vom JSON-Objekt im Attribut iss in der Nutzlast nachzuschlagen.

Nutzlast

{
  "iss": "https://www.googleapis.com/robot/v1/metadata/x509/cloud-commerce-partner@system.gserviceaccount.com",
  "iat": CURRENT_TIME,
  "exp": CURRENT_TIME + 5 minutes,
  "aud": "PARTNER_DOMAIN_NAME",
  "sub": "PROCUREMENT_ACCOUNT_ID",
  "google": {
    "roles": [GCP_ROLE],
    "user_identity": USER_ID
  }
}

Wobei:

  • sub ist die Google-Konto-ID des Nutzers. Sie müssen diese ID verwenden, um das Google-Konto des Nutzers mit seinem Konto in Ihrem System zu verknüpfen.
  • iss gibt den Absender des JWT an. Die URL in der Anfrage iss ist mit einem öffentlichen Schlüssel von Google verknüpft.
  • exp gibt an, wann das Token abläuft, und wird 5 Minuten nach dem Senden des Token festgelegt.
  • aud ist die Domain, in der Ihr Produkt gehostet wird, z. B. example-pro.com.
  • roles ist ein Array von Strings, die die Rollen des Nutzers darstellen. Momentan kann es entweder: ** account_admin, der anzeigt, dass der Nutzer ein Rechnungskonto-Administrator des Rechnungskontos ist, das das Produkt erworben hat, oder ** project_editor zeigt an, dass der Nutzer Projektbearbeiter, aber kein Abrechnungsadministrator des Projekts unter diesem Rechnungskonto ist.
  • user_identity ist die verschleierte GAIA-ID des Nutzers, mit der Open ID Connect initiiert werden kann.

Wenn Sie das JWT erhalten, müssen Sie überprüfen, ob

  1. die JWT-Signatur den öffentlichen Schlüssel von Google verwendet.

  2. Bestätigen Sie, dass die JWT nicht abgelaufen ist, indem Sie den Anspruch exp prüfen.

  3. Bestätigen Sie, dass der Anspruch aud die richtige Domain für Ihr Produkt ist.

  4. Bestätigen Sie, dass die Anforderung iss https://www.googleapis.com/robot/v1/metadata/x509/cloud-commerce-partner@system.gserviceaccount.com ist.

  5. Bestätigen Sie, dass sub nicht leer ist.

Google Log-in mit login_hint initiieren

Wenn Sie möchten, dass Ihre Nutzer einen OAuth 2.0-Zustimmungsablauf mit Ihrer Website durchlaufen, können Sie die Identitätsinformationen aus der Nutzlast verwenden, um den Ablauf vor der Weiterleitung auf dem Google-Konto zu initialisieren, das sie für Google Cloud verwendet haben. Dazu stellen Sie den user_identity im JWT als login_hint bereit. Weitere Informationen finden Sie in der Google-OAuth 2.0-Dokumentation.

Nachdem der Nutzer den OAuth 2.0-Ablauf auf Ihrer Website abgeschlossen hat, sollten Sie überprüfen, ob es sich um den gewünschten Nutzer handelt. Verwenden Sie dazu das OAuth 2.0-Zugriffstoken, um die Google UserInfo API aufzurufen, um die grundlegenden Nutzerinformationen abzurufen. Dadurch wird eine ID zurückgegeben, die mit dem Feld user_identity aus dem JWT übereinstimmen muss.

Einmalanmeldung (SSO) für Ihre Kunden einbinden

Wenn Kunden sich für Ihr Produkt registrieren, müssen sie sich auf der Aktivierungsseite für ein Konto anmelden können, ohne einen Nutzernamen und ein Passwort eingeben zu müssen.

Für die SSO-Integration werden Nutzer mit JWTs authentifiziert. Wenn Sie mit JWT noch nicht vertraut sind, lesen Sie die JWT-Einführung.

Sie können die SSO-Integration im Producer Portal oder im Partner-Portal einrichten:

Producer Portal

SSO-Integration einrichten:

  1. Gehen Sie auf der Seite Übersicht des Produkts zum Abschnitt Technische Integration und klicken Sie auf FRONTEND-INTEGRATION.

  2. Geben Sie zum Verknüpfen mit Ihrem Dashboard die URL für Ihr Dashboard in das Feld Dashboard-URL ein.

  3. Klicken Sie zur Verwendung von Google SSO auf SSO-Anmeldung aktivieren (optional) und geben Sie dann im Feld SSO-URL die SSO-Log-in-URL ein.

  4. Fügen Sie in der Weboberfläche Ihrer Anwendung Code hinzu, um die JWT-Nutzlast zu prüfen, die an Ihre Anwendung gesendet werden, wenn sich Nutzer über Google Cloud Marketplace anmelden.

    Das JWT für die Authentifizierung hat das gleiche Format wie das JWT, das gesendet wird, wenn Nutzer sich zum ersten Mal für Ihre Anwendung registrieren. Erläuterungen dazu finden Sie unter JWT prüfen.

Partner-Portal

SSO-Integration einrichten:

  1. Rufen Sie die Seite Pläne und Funktionen des Produkts auf und wählen Sie die Pläne und Funktionen Ihres Produkts aus.

  2. Geben Sie zum Verknüpfen Ihres Dashboards die URL für Ihr Dashboard in das Feld Dashboard-URL ein.

  3. So verwenden Sie Google SLO: unter SSO-Anmeldung (optional) klicken Sie, um SSO zu aktivieren, dann geben Sie Ihre SSO-Anmelde-URL in dieSSO-Anmelde-URL ein. Geben Sie die URL für Ihre SSO API-Schlüssel in das Feld URL der SSO API-Schlüssel ein.

  4. Fügen Sie in der Weboberfläche Ihrer Anwendung Code hinzu, um die JWT-Nutzlast zu prüfen, die an Ihre Anwendung gesendet werden, wenn sich Nutzer über Google Cloud Marketplace anmelden.

    Das JWT für die Authentifizierung hat das gleiche Format wie das JWT, das gesendet wird, wenn Nutzer sich zum ersten Mal für Ihre Anwendung registrieren. Erläuterungen dazu finden Sie unter JWT prüfen.