Autorisieren Sie Anfragen von Ihrem externen CRM an den B2COPY API mithilfe eines Dienstadministrators und signierten JWT-Tokens (ES256). Auf dieser Seite werden Voraussetzungen, Schlüsselgenerierung, Token-Ausgabe und das Erhalten/Aktualisieren von B2COPY-Tokens behandelt.
Voraussetzungen
- Erstellen Sie einen Dienstadministrator im Admin panel, in dessen Namen der CRM API-Anfragen stellt (es wird empfohlen, ihn auf bestimmte IP-Adressen zu beschränken).
- Konfigurieren Sie Ihr CRM, um signierte JWTs zu generieren, deren Ansprüche „admin_id“ (die Dienstadministrator-ID), „device_ip“ (die Anforderungs-IP) und „key_id“ (die private Schlüssel-ID) umfassen.
Schlüssel generieren
Generieren Sie ein EC-Schlüsselpaar (P-256) zum Signieren und Überprüfen von Token:
# Private key
openssl genpkey -algorithm EC -pkeyopt ec_paramgen_curve:P-256 \
-out ec_private_pkcs8.pem
# Public key
openssl pkey -in ec_private_pkcs8.pem -pubout -out ec_public.pemSicherheit
Halten Sie den privaten Schlüssel geheim und geben Sie ihn niemals weiter. Geben Sie dem B2COPY-Supportteam nur den öffentlichen Schlüssel – er wird zur Überprüfung Ihrer signierten JWTs verwendet.
Kontaktieren Sie den B2COPY-Support
Um die Integration abzuschließen, senden Sie dem Support-Team Ihren öffentlichen Schlüssel („ec_public.pem“), die eindeutige Schlüsselkennung und die IP-Adressen, die API aufrufen. Der Support registriert Ihre Integration und konfiguriert den öffentlichen Schlüssel.
Erhalten Sie Zugriffs- und Aktualisierungstoken
POST [host]/api/admin/auth/v2/admin/adminservice/authexternalcrm| Name | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
| external_token | Zeichenfolge | Ja | Der signierte JWT, der von Ihrem CRM generiert wurde. |
curl -X POST "[host]/api/admin/auth/v2/admin/adminservice/authexternalcrm" \
-d '{ "external_token": "<your-generated-jwt-token>" }'Die Antwort gibt Zugriffs- und Aktualisierungstoken für den Dienstadministrator zurück; Fügen Sie das Zugriffstoken in den „Authorization“-Header aller anderen Anfragen ein.
{
"accessToken": "<access-token>",
"refreshToken": "<refresh-token>"
}Aktualisieren Sie das Zugriffstoken
POST [host]/api/admin/auth/v2/admin/adminservice/refreshtokencurl -X POST "[host]/api/admin/auth/v2/admin/adminservice/refreshtoken" \
-H "Authorization: Bearer <refreshToken>"Gibt ein neues Zugriffs-/Aktualisierungstokenpaar zurück.
