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.

Eine Kontoaktivierungsseite für neue Nutzer erstellen

Wenn Nutzer Ihre Lösung auf dem Google Cloud Marketplace auswählen, müssen sie ihre Konten in Ihrer Anwendung aktivieren. Sie müssen eine Aktivierungsseite erstellen, um Benutzerkonten 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.

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 dem Prüfen des JWT muss Ihre Aktivierungsseite eine Kontogenehmigungsanforderung an die Beschaffungs-API senden, die in den Backend-Integrationsschritten beschrieben wird.

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

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"
  }
}

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 sich Ihre Lösung befindet, z. B. example-pro.com.

Wenn Sie das JWT erhalten, müssen Sie prü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 aud Claim die richtige Domain für Ihre Lösung ist.

  4. Bestätigen Sie, dass der Anspruch 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.

Einmalanmeldung (SSO) für Ihre Kunden einbinden

Kunden müssen sich für Ihre Lösung in Ihrer Anwendung anmelden können, ohne einen anderen Nutzernamen und ein anderes Kennwort einzugeben.

Die SSO-Integration verwendet zur Authentifizierung von Nutzern JSON-Web-Tokens (JWT). Wenn Sie mit JWT noch nicht vertraut sind, lesen Sie die JWT-Einführung.

SSO-Integration einrichten:

  • Fügen Sie im Partner-Portal im Abschnitt Pläne und Funktionen der Lösung die URL für Ihr Dashboard oder Ihrer Weboberfläche hinzu.

  • Fügen Sie in der Weboberfläche Ihrer Anwendung Code hinzu, um die an Ihre Anwendung gesendete JWT-Nutzlast zu prüfen, die entsteht, 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.