Zum Hauptinhalt springen

Fin Messenger: JWT-Authentifizierung für Salesforce Enhanced Chat einrichten

So generieren Sie ein Fin JWT, um den Fin Messenger für Salesforce abzusichern

Dieser Artikel erklärt, wie man das JSON Web Token (JWT) generiert und konfiguriert, das Fin Messenger benötigt, um users bei der Weiterleitung von Gesprächen an Salesforce Enhanced Chat zu authentifizieren. Durch diese Schritte kann Fin die Benutzeridentität sicher sowohl an Fin als auch an Salesforce übermitteln, sodass Ihre Teammitglieder der Identität der Kunden, mit denen sie sprechen, vertrauen können.

Hinweis: Voraussetzungen: Fin Messenger muss bereits in Ihrer App installiert sein, und ein Salesforce Enhanced Chat Messaging Channel muss konfiguriert sein. Das Ruby jwt Gem wird benötigt, wenn Sie die untenstehenden Rails-Codebeispiele verwenden. Diese Funktion ist in Fin Messenger-Plänen verfügbar, die die Salesforce-Integration beinhalten – wenden Sie sich an Ihr Account-Team, um den Zugriff zu bestätigen.

Sie müssen das JWT zu Ihren intercomSettings-Attributen hinzufügen, um die Fin Messenger-Authentifizierung mit Salesforce Enhanced Chat zu aktivieren:

  • intercom_user_jwt

    • Dies wird verwendet, um Fin sicher die Contact ID und alle Attribute für den Contact oder Account bereitzustellen, die Sie Fin (oder Salesforce) übermitteln möchten.

Wenn intercom_user_jwt weggelassen wird, kann Fin keine Kontaktdaten sicher an Salesforce übermitteln.

Das JWT muss serverseitig bei jedem Seitenaufruf für den aktuellen user mit einem privaten Schlüssel generiert werden. Folgen Sie diesen Schritten, um jeden Schlüssel zu erhalten und die Benutzerverifizierung in Fin Messenger und Salesforce zu aktivieren:

  1. Rufen Sie Ihren Intercom-Privatschlüssel ab – gehen Sie zu Einstellungen > Messenger > Sicherheit und kopieren Sie Ihr Messenger API Secret. Dies ist der Signaturschlüssel für intercom_user_jwt.

  2. Siehe Fin Messenger: Aktivierung der Benutzerverifizierung in Salesforce für eine Schritt-für-Schritt-Anleitung zur Aktivierung der Benutzerverifizierung in Salesforce. Fin übernimmt die Generierung des Salesforce JWT, sobald es konfiguriert ist.

Das folgende Rails-Beispiel zeigt, wie man das JWT für Fin Messenger und die Salesforce Enhanced Chat-Authentifizierung generiert und in Ihr intercomSettings-Objekt übergibt:

Rails-Ansicht – Übergabe von JWTs an intercomSettings für Fin Messenger:

  window.intercomSettings = {
api_base: "https://api-iam.intercom.io",
app_id: "your-app-id-here",
user_id: "<%= current_user&.id %>",
intercom_user_jwt: "<%= intercom_jwt(current_user&.id %>",
};

Rails-Helfer – Generierung des Fin JWT für Fin Messenger:

intercom_jwt verwendet HS256 (HMAC-SHA256, einen symmetrischen Signaturalgorithmus) mit Ihrem Intercom Messenger API Secret.

  def intercom_jwt(user_id)
JWT.encode({ user_id: user_id, exp: Time.now.to_i+3600 }, INTERCOM_JWT_SECRET, "HS256")
end

Hinweis: Das JWT läuft nach 1 Stunde ab (exp: Time.now.to_i + 3600). Es muss bei jedem Seitenaufruf neu generiert werden – speichern Sie es nicht zwischen den Sitzungen. Wenn ein JWT mitten im Gespräch abläuft, muss der Kunde möglicherweise die Seite aktualisieren, um sich erneut zu authentifizieren.

Hat dies deine Frage beantwortet?