Die Authentifizierung von Endbenutzern ist für viele Geschäftszwecke wichtig. Wenn Sie konversationsorientierten Support leisten, kann es sein, dass Benutzer eine laufende Konversation auf einem anderen Gerät oder Kanal fortsetzen möchten. Die Benutzerauthentifizierung stellt sicher, dass alle Kontaktpunkte mit dem richtigen Endbenutzer verknüpft werden. Das kann den Support durch Ihre Agenten und die Sicherheit sensibler Informationen verbessern, die in ihren Konversationen mit Endbenutzern zur Sprache kommen.
Überblick über die Endbenutzer-Authentifizierung für Messaging
- Ihre Agenten können sicher sein, dass die Endbenutzer, mit denen sie sprechen, wirklich diejenigen sind, für die sie sich ausgeben.
- Sie können einen Benutzer kanalübergreifend identifizieren, wenn Sie das Widget in mehrere Domänen einbinden oder mit externen Diensten wie Shopify verknüpfen.
- Sie können einen Benutzer über verschiedene Geräte und Browser hinweg identifizieren.
Terminologie für die Messaging-Authentifizierung
- JWT: Zendesk verwendet signierte JSON Web Token (JWT), um Endbenutzer für Messaging zu authentifizieren. Diese Token enthalten Informationen zur Überprüfung der Identität des jeweiligen Endbenutzers. Weitere Informationen zu JWT finden Sie unter jwt.io.
- Signaturschlüssel: Ein Signaturschlüssel wird von einem Zendesk-Administrator im Admin Center erstellt und mit einem Entwickler in Ihrem Team geteilt, der mit ihm dann das JWT signiert.
- Externe ID: Ein Benutzername, eine ID oder eine andere alphanumerische Zeichenfolge aus einem externen System, die jeden Benutzer eindeutig identifiziert. Dies ist die primäre Identifikation zur Messaging-Authentifizierung, auch wenn eine E-Mail-Adresse im JWT enthalten ist.
- Benutzername: (Optional) Der Name des mit der externen ID oder E-Mail-Adresse verknüpften Endbenutzers. Wenn Sie den Namen des Benutzers in das JWT eingeben, wird er im Arbeitsbereich für Agenten angezeigt. Diese Information kann den Agenten die Kommunikation mit Endbenutzern erleichtern.
- E-Mail-Adresse: (Optional) Die mit einem Endbenutzer verknüpfte eindeutige E-Mail-Adresse.
Überblick über die Implementierung der Messaging-Authentifizierung für Endbenutzer
- Die Messaging-Authentifizierung beginnt damit, dass ein Administrator einen Signaturschlüssel generiert und ihn an einen Entwickler weitergibt. Dieser verwendet den Signaturschlüssel dann, um einen Backend-Dienst zu implementieren, der bei Bedarf signierte JWTs für Benutzer erstellen kann.
- Der Backend-Dienst erstellt auf Anfrage signierte JWTs und gibt sie an die Website oder Ihre mobile App zurück. Die von diesem Dienst erstellten JWTs müssen den Endbenutzer mit einer externen ID und einer optionalen E-Mail-Adresse eindeutig identifizieren.
- Bei jeder Anmeldung des Benutzers muss Ihre Website oder App eine entsprechende Login-API für Web Widgets und Mobile SDKs aufrufen. Dabei wird das JWT an Zendesk übergeben, um die vom Benutzer angegebene Identität zu überprüfen.
Anforderungen für die Authentifizierung von Endbenutzern für Messaging
- Zendesk-Arbeitsbereich für Agenten ist aktiviert.
- Sie verwenden das Web Widget oder das Mobile SDK für Messaging.
- Sie verknüpfen E-Mail-Identitäten mit Endbenutzern.
- Wenn authentifizierte Benutzer über verifizierte E-Mail-Identitäten verfügen sollen, müssen die für Endbenutzer ausgegebenen JWTs die Claims
email
undemail_verified: true
enthalten.
Agentenerlebnis beim Authentifizieren von Messaging-Endbenutzern
Agenten erkennen einen authentifizierten Endbenutzer an dem grünen Häkchen neben dem Namen des Besuchers und der externen ID neben seinem Benutzerprofil.
Außerdem ist jede Antwort, die ein Endbenutzer nach seiner Authentifizierung gepostet hat, mit dem Häkchen gekennzeichnet.
Authentifizierte Endbenutzer können mit mehreren Geräten gleichzeitig an einer Konversation teilnehmen. Bei nicht authentifizierten Endbenutzern wird für jedes verwendete Gerät ein eigener Benutzerdatensatz und eine separate Konversation erstellt. Wenn sich ein Endbenutzer während einer Konversation authentifiziert, werden die Konversationen vor und nach der Authentifizierung automatisch zusammengefasst, um die Kontinuität für den Agenten und den Endbenutzer zu gewährleisten.
Wenn Sie E-Mail-Identitäten verwenden, wird die Zuordnung von Endbenutzern zu Benutzerdatensätzen durch Ihre E-Mail-Identitätseinstellungen bestimmt. Bei den meisten Konfigurationen erscheinen Betrüger als separate Benutzerdatensätze ohne grünes Häkchen neben ihrem Namen, da sie nicht erfolgreich authentifiziert werden können. Wenn Sie nicht authentifizierten Benutzern erlauben, verifizierte E-Mail-Adressen zu beanspruchen, werden E-Mail-Identitäten mit dem ersten Benutzer verknüpft, der die Adresse beansprucht. Wenn zwei Endbenutzer dieselbe Adresse beanspruchen, wird die E-Mail-Identität mit dem Benutzerdatensatz des Endbenutzers verknüpft, der sich authentifizieren und die E-Mail-Adresse bestätigen kann.
Im Falle eines Konflikts haben verifizierte E-Mail-Identitäten Vorrang vor nicht verifizierten E-Mail-Identitäten. Wenn zum Beispiel ein nicht authentifizierter Benutzer eine mit einer verifizierten Identität verknüpfte E-Mail-Adresse angibt, um sich als verifizierter Benutzer auszugeben, erstellt Zendesk eine neue, nicht authentifizierte Sitzung und einen Benutzerdatensatz ohne E-Mail-Identität. Wenn ein nicht authentifizierter Benutzer eine E-Mail-Adresse angibt, aber nicht verifizieren kann, und später ein anderer Benutzer dieselbe E-Mail-Adresse angibt, sie verifizieren kann und sich mit seinem JWT anmeldet, wird die E-Mail-Identität dem nicht authentifizierten Benutzer entzogen und mit dem authentifizierten Benutzer verknüpft.
Agenten können duplizierte Benutzerdatensätze zusammenfassen und Benutzerdatensätzen manuell eine E-Mail-Identität hinzufügen. Wir empfehlen, Ihre Agenten anzuleiten, die Identität der Endbenutzer zu verifizieren, bevor sie eine dieser Aktionen ausführen.
Endbenutzererlebnis mit Authentifizierung für Messaging
Nach dem Implementieren der Endbenutzer-Authentifizierung für Messaging sollten die Endbenutzer keinen großen Unterschied bemerken. Authentifizierte Endbenutzer, deren Identität gegenüber Zendesk bestätigt wurde, werden in der Messaging-Standardantwort des Messaging-Bots nicht mehr nach ihrem Namen oder ihrer E-Mail-Adresse gefragt.
Bei der Authentifizierung eines Endbenutzers werden dessen Konversationen geräteübergreifend synchronisiert. Für authentifizierte und nicht authentifizierte Endbenutzer werden separate Benutzerdatensätze und Konversationen erstellt. Wenn sich ein Endbenutzer während einer Konversation authentifiziert, wird die vor der Anmeldung erstellte anonyme Konversation automatisch mit der authentifizierten Konversation zusammengefasst, um die Kontinuität zu gewährleisten.
Erstellen und Teilen eines Signaturschlüssels
Signaturschlüssel werden von Entwicklern verwendet, um JWTs für Endbenutzer zu erstellen. Signaturschlüssel können nur von einem Administrator erstellt werden. Sie können maximal 10 Schlüssel erstellen. Wenn Sie Ihr Limit von 10 Schlüsseln erreicht haben, werden Sie beim Versuch, einen weiteren Schlüssel zu erstellen, aufgefordert, einen ungenutzten Schlüssel zu löschen.
- Klicken Sie in der Seitenleiste des Admin Centers auf Konto und dann auf Sicherheit > Authentifizierung für Endbenutzer.
- Klicken Sie auf die Registerkarte Messaging und dann auf Schlüssel erstellen.
Wenn Sie Ihren ersten Schlüssel erstellen, wird die Schaltfläche Schlüssel erstellen unten auf der Seite angezeigt. Andernfalls erscheint sie in der oberen rechten Ecke.
- Geben Sie einen Namen für den Schlüssel ein und klicken Sie auf Weiter.
- Klicken Sie bei der Aufforderung auf Kopieren, um den geteilten Schlüssel zu kopieren, und dann auf Schlüssel für immer ausblenden.
Der Schlüssel wird gespeichert und automatisch mit einer ID versehen. Die ID eines Schlüssels ist in der Registerkarte „Messaging“ der Endbenutzer-Authentifizierungsseite aufgelistet.
- Senden Sie die Schlüssel-ID und die Kopie des geteilten Schlüssels vertraulich an Ihren Entwickler.
Authentifizieren von Endbenutzern nur mit einer externen ID
-
external_id: (Erforderlich) Alphanumerische Zeichenfolge, anhand der jeder Benutzer eindeutig identifiziert werden kann. Diese ID wird häufig aus einem externen System übernommen. Die ID darf nicht länger als 255 Zeichen sein.
Zendesk verwendet die
external_id
als primäre ID für die Authentifizierung von Benutzern per Messaging. Beim Authentifizieren eines Benutzers mit einem gültigen JWT löst Zendesk zunächst einen vorhandenen Benutzer anhand derexternal_id
auf. Wenn keine passendeexternal_id
gefunden wird, werden die Benutzer anhand der angegebenen E-Mail-Adresse aufgelöst. Weitere Informationen finden Sie unter Ausstellen von JWTs mit E-Mail-Adressen. -
scope: (Erforderlich) Zugriffsbereich des Anrufers. Der einzige zulässige Wert ist
user
. - name: (Optional) Name des Benutzers. Wenn die JWT-Payload den Benutzernamen enthält, kann Zendesk diesen im Arbeitsbereich für Agenten anzeigen, sodass Ihre Agenten persönlicheren Support leisten können.
{
"external_id": "12345678",
"scope": "user",
"name": "Jane Soap"
}
Einbinden von E-Mail-Identitäten in die Endbenutzer-Authentifizierung
- Authentifizierte Benutzer werden anhand signierter JWTs authentifiziert.
Die Verwendung von JWTs bietet Sicherheit, da der Inhalt eines signierten JWTs vom Endbenutzer nicht manipuliert werden kann. Wenn Sie Angriffe mit falscher Identität zuverlässig unterbinden möchten, sollten Sie E-Mail-Identitäten auf authentifizierte Endbenutzer beschränken. Dieser Ansatz bietet die höchste Sicherheit und wird bei neuen Zendesk-Konten standardmäßig verwendet.
- Nicht authentifizierte Benutzer sind Endbenutzer, die bei der Aufforderung eines Zendesk-Bots eine E-Mail-Adresse angeben.
Beachten Sie, dass bei der Verwendung von E-Mail-Identitäten für nicht authentifizierte Benutzer die Gefahr besteht, dass sich Personen als jemand anderes ausgeben, indem sie eine E-Mail-Adresse eingeben, die ihnen nicht gehört.
Konfigurieren von E-Mail-Identitäten
Bei neuen Zendesk-Konten sind E-Mail-Identitäten aktiviert und so konfiguriert, dass nur verifizierte E-Mail-Adressen verwendet werden. Dies ist die sicherste Option. Ältere Konten sind so konfiguriert, dass sowohl verifizierte als auch nicht verifizierte E-Mail-Adressen verwendet werden. Bevor Sie Ihren JWTs E-Mail-Adressen hinzufügen, sollten Sie die Optionen überprüfen und Ihre Einstellungen gegebenenfalls aktualisieren.
- Klicken Sie in der Seitenleiste des Admin Centers auf Kanäle und dann auf Messaging und Social Media > Messaging.
- Klicken Sie auf Einstellungen verwalten.
- Klicken Sie auf E-Mail-Identitäten und dann auf eine der folgenden Optionen:
-
Nur verifizierte E-Mail-Adressen verwenden: E-Mail-Identitäten werden nur für Benutzer erstellt, die authentifiziert sind und eine verifizierte E-Mail-Adresse haben, die in dem für sie ausgestellten JWT enthalten ist. Die E-Mail-Identität kann einem Benutzerdatensatz aber auch manuell von einem Agenten hinzugefügt werden.
Diese Option bewirkt, dass die Agenten im Chatverlauf die von einem nicht authentifizierten Endbenutzer angegebene E-Mail-Adresse, in der Visitenkarte aber keine mit ihm verknüpfte E-Mail-Identität sehen. Wenn ein Agent eine Folge-E-Mail an einen nicht authentifizierten Benutzer senden möchte, muss er die E-Mail-Identität dem betreffenden Benutzerdatensatz manuell hinzufügen. Wenn die E-Mail-Adresse des nicht authentifizierten Benutzers bereits in einem anderen Benutzerdatensatz enthalten ist, kann der Agent die beiden Benutzerdatensätze zusammenfassen.
Bevor Ihre Agenten eine E-Mail-Identität manuell hinzufügen oder zwei Benutzerdatensätze zusammenfassen, sollten sie eine Identitätsprüfung durchführen, um Social-Engineering-Angriffe zu verhindern.
-
Sowohl verifizierte als auch nicht verifizierte E-Mails verwenden: E-Mail-Identitäten werden sowohl für authentifizierte Benutzer erstellt, deren verifizierte E-Mail-Adresse in ihrem JWT enthalten ist, als auch für nicht authentifizierte Benutzer, die ihre E-Mail-Adresse im Bot-Konversationsfluss angeben. Wenn Sie diese Option verwenden, steigt die Wahrscheinlichkeit, dass die Agenten die E-Mail-Adresse in der Visitenkarte finden. E-Mail-Identitäten für nicht verifizierte E-Mail-Adressen werden im Arbeitsbereich für Agenten deutlich als unbestätigt gekennzeichnet. Bei Bedarf können Agenten den Endbenutzer auffordern, sich zu authentifizieren, wenn sie Folge-E-Mails versenden müssen.
Im Falle eines Konflikts haben verifizierte E-Mail-Identitäten Vorrang vor nicht verifizierten E-Mail-Identitäten.
-
Nur verifizierte E-Mail-Adressen verwenden: E-Mail-Identitäten werden nur für Benutzer erstellt, die authentifiziert sind und eine verifizierte E-Mail-Adresse haben, die in dem für sie ausgestellten JWT enthalten ist. Die E-Mail-Identität kann einem Benutzerdatensatz aber auch manuell von einem Agenten hinzugefügt werden.
- (Optional, aber nicht empfohlen) Wenn auch nicht authentifizierte Benutzer in der Lage sein sollen, verifizierte E-Mail-Adressen zu beanspruchen, wählen Sie die Option Nicht authentifizierter Benutzer kann verifizierte E-Mail-Adressen in Anspruch nehmen.
Wenn Sie diese Option wählen, ist der Bestätigungsstatus einer über Messaging-Kanäle erfassten E-Mail-Identität nicht mehr verlässlich, da der E-Mail-Status eines authentifizierten Benutzers von einem Betrüger übernommen und in einer späteren Messaging-Interaktion verwendet werden kann. Das bedeutet, dass Angriffe mit falscher Identität eher erfolgreich sind, da die Agenten nur begrenzte Möglichkeiten haben, die Identität des Endbenutzers zu überprüfen. Allerdings haben verifizierte E-Mail-Identitäten weiterhin Vorrang vor nicht verifizierten E-Mail-Identitäten, sodass die E-Mail-Identität aus dem Benutzerdatensatz des Betrügers entfernt wird.
- Klicken Sie auf Einstellungen speichern.
Ausstellen von JWTs mit E-Mail-Adressen
-
external_id: (Erforderlich) Alphanumerische Zeichenfolge, anhand der jeder Benutzer eindeutig identifiziert werden kann. Diese ID wird häufig aus einem externen System übernommen. Die ID darf nicht länger als 255 Zeichen sein.
Zendesk verwendet die
external_id
als primäre ID für die Authentifizierung von Benutzern per Messaging. Beim Authentifizieren eines Benutzers mit einem gültigen JWT löst Zendesk zunächst einen vorhandenen Benutzer anhand derexternal_id
auf. Wenn keine passendeexternal_id
gefunden wird, werden die Benutzer anhand der angegebenen E-Mail-Adresse aufgelöst. Weitere Informationen finden Sie unter Ausstellen von JWTs mit E-Mail-Adressen. -
scope: (Erforderlich) Zugriffsbereich des Anrufers. Der einzige zulässige Wert ist
user
. - name: (Optional) Name des Benutzers. Wenn die JWT-Payload den Benutzernamen enthält, kann Zendesk diesen im Arbeitsbereich für Agenten anzeigen, sodass Ihre Agenten persönlicheren Support leisten können.
-
email: (Erforderlich) E-Mail-Adresse des angemeldeten Benutzers. Muss dem Benutzer eindeutig zuzuordnen sein.
Setzen Sie die E-Mail-Adresse im Arbeitsbereich für Agenten auf die primäre E-Mail-Adresse des Benutzers. Sekundäre E-Mail-Adressen können nicht in JWTs aufgenommen werden.
-
email_verified: (Optional) Gibt an, ob der betreffende Endbenutzer als Inhaber der E-Mail-Adresse bestätigt wurde. Wenn Endbenutzer über verifizierte E-Mail-Identitäten verfügen sollen, müssen die von Ihnen ausgegebenen JWTs die Claims
email
und"email_verified": true
enthalten.
{
"external_id": "12345678",
"email": "janes@soap.com",
"email_verified": true,
"name": "Jane Soap",
"scope": "user"
}
Auflösen von Konflikten zwischen externen IDs und E-Mail-Adressen in JWTs
Zendesk verwendet die externe ID als primäre Kennung und die E-Mail-Adresse nur, wenn keine Übereinstimmung mit der externen ID gefunden wird. Wenn die in einem JWT angegebene E-Mail-Adresse jedoch bereits mit einer anderen externen ID verknüpft ist, wird das JWT von Zendesk zurückgewiesen und der Anmeldeversuch des Endbenutzers erfolglos abgebrochen. In diesem Fall wird die Konversation mit dem Benutzer in einem nicht authentifizierten Zustand eingeleitet.
- Aktualisieren Sie das JWT mit einem anderen
external_id
-Wert oder einer anderenemail
-Adresse.ODER
- Löschen Sie den Benutzer mit der betreffenden
external_id
, damit diese von einem anderen Endbenutzer verwendet werden kann. Weitere Informationen finden Sie in der Sunshine Conversations API-Dokumentation unter „Delete User“ (Englisch).