Zum Hauptinhalt springen

Partner-Schlüssel schützen

Partner-Schlüssel autorisieren projektweite Operationen. Speichere sie in einem serverseitigen Secret-Manager oder einer verschlüsselten Umgebungsvariable und stelle sie nur vertrauenswürdigen Backend-Prozessen bereit.
Sende einen Partner-Schlüssel niemals als Konfiguration, API-Antwort, Query-Parameter oder gerenderte Umgebungsvariable an dein Frontend. Dein Backend sollte schmale Endpunkte bereitstellen, die den angemeldeten Kunden autorisieren, bevor Social media studio aufgerufen wird.
Verwende pk_test_-Schlüssel während der Entwicklung und pk_live_-Schlüssel ausschließlich in der Produktion. Halte Test- und Live-Projekte getrennt, rotiere Schlüssel regelmäßig und widerrufe einen Schlüssel sofort, wenn er möglicherweise offengelegt wurde.

Jede Kundenoperation autorisieren

Das SDK authentifiziert deine Anwendung, nicht den Kunden, der dein Produkt nutzt. Vor jedem SDK-Aufruf:
  1. Authentifiziere den Kunden in deiner Anwendung.
  2. Ermittle die gespeicherte Social-media-studio-endUserId des Kunden auf deinem Server.
  3. Prüfe, dass die angeforderten Verbindungs- und Beitrags-IDs diesem Kunden gehören.
  4. Rufe das SDK mit diesen serverseitig ermittelten IDs auf.
Nimm niemals eine beliebige endUserId aus einem Browser entgegen und gib sie weiter, ohne die Zugehörigkeit in deiner Datenbank zu prüfen.

Schlüssel-Scopes

Partner-Schlüssel lassen sich auf die Fähigkeiten beschränken, die ein Dienst benötigt: Verwende nach Möglichkeit getrennte Schlüssel mit minimalen Rechten für unabhängige Dienste.

SDK-Fehler behandeln

Jede nicht erfolgreiche API-Anfrage löst einen SoMePlatformError aus:
Beim Erstellen von Beiträgen sind Wiederholungen nur sicher, wenn du denselben Idempotenzschlüssel wiederverwendest. Wiederhole andere Schreiboperationen nicht blind, es sei denn, deine Anwendung kann ihr Ergebnis bestätigen.

Logging

Protokolliere Anfragekontext wie deine Kunden-ID, die Endnutzer-ID, die Operation, den HTTP-Status und den Idempotenzschlüssel. Protokolliere keine vollständigen Partner-Schlüssel, Webhook-Secrets, OAuth-Tokens, vorsignierten Upload-URLs oder sensiblen Kundenmetadaten.