Suite | Beliebiger Plan |
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.
- Terminologie für die Messaging-Authentifizierung
- Überblick über die Implementierung der Messaging-Authentifizierung für Endbenutzer
- Erstellen und Teilen eines Signaturschlüssels
- Authentifizieren von Endbenutzern nur mit einer externen ID
- Einbinden von E-Mail-Identitäten in die Endbenutzer-Authentifizierung
- Auflösen von Konflikten zwischen externen IDs und E-Mail-Adressen in JWTs
Verwandter Beitrag: Überblick über die Benutzerauthentifizierung für Messaging
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: 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
Zendesk verwendet JSON Web Token (JWT) zur Authentifizierung von Messaging-Endbenutzern, da diese eine flexible und zustandslose Möglichkeit bieten, Benutzeridentitäten zu überprüfen und API-Endpunkte zu sichern.
- 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.
- Jedes Mal, wenn sich ein Benutzer anmeldet, 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.
Weitere Informationen für die Entwickler Ihres Teams finden Sie unter Enabling authenticated visitors for messaging with Zendesk SDKs (Englisch) sowie im folgenden Video:
Authentifizieren von Endbenutzern in Web Messaging (17:22)
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.
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.
- Klicken Sie auf Schlüssel für immer ausblenden.
Authentifizieren von Endbenutzern nur mit einer externen ID
Für die Endbenutzer-Authentifizierung müssen Sie in den JWTs, die Sie an Benutzer ausgeben, eine externe ID bereitstellen. Zendesk verwendet die in einem JWT enthaltene externe ID als primäre ID für die Authentifizierung von Messaging-Benutzern. Bei der Benutzerauthentifizierung löst Zendesk zuerst einen vorhandenen Benutzer mit der externen ID auf. Eine im JWT enthaltene E-Mail-Adresse wird nur dann zur Auflösung der Benutzeridentität verwendet, wenn kein Benutzer mit der angegebenen externen ID vorhanden ist.
Signieren von JWTs nur mit einer externen ID
- external_id: (Erforderlich) Alphanumerische Zeichenfolge, anhand derer jeder Benutzer eindeutig identifiziert werden kann. Siehe Auswählen der externen ID für an Benutzer ausgegebene JWTs.
-
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"
}
Auswählen der externen ID für an Benutzer ausgegebene JWTs
- Eine externe ID muss eine alphanumerische Zeichenfolge sein.
- Externe IDs können maximal 255 Zeichen lang sein.
- Die externe ID eines Benutzers muss auf Kontoebene eindeutig sein.
Wenn Ihr Konto mehrere Marken umfasst, müssen externe IDs über alle Marken hinweg eindeutig sein.
- Die externe ID eines Benutzers sollte sich niemals ändern.
- Einem Benutzer kann jeweils nur eine externe ID zugewiesen sein.
Als externe ID eignen sich beispielsweise beim Erstkontakt vergebene inkrementelle oder randomisierte IDs (z. B. usr_12345) oder – bei Konten mit mehreren Marken – inkrementelle oder randomisierte IDs in Kombination mit einer Markenkennung (z. B. marken1_a8dedg).
E-Mail-Adressen oder Telefonnummern sollten nicht verwendet werden, weil sich diese im Laufe der Zeit ändern können und viele Benutzer mehrere Adressen oder Nummern haben. Auch die Namen der Benutzer eignen sich nicht als ID, da sie unter Umständen nicht eindeutig sind.
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. Diese Konfiguration 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.
Das folgende Flussdiagramm zeigt, wie E-Mail-Identitäten in Ihrer Messaging-Authentifizierung verwendet werden können:
Konfigurieren von E-Mail-Identitäten
Benutzer des Web Widgets oder der mobilen Apps können in einem Formular oder auf Anfrage des AI Agent ihre E-Mail-Adresse angeben. In diesem Szenario könnte sich ein böswilliger Benutzer ganz einfach als eine andere Person ausgeben, indem er deren E-Mail-Adresse eingibt. Eine sicherere Möglichkeit, Benutzern eine E-Mail-Adresse zuzuweisen, besteht darin, JWTs zu verwenden, um Benutzer mit externen IDs und E-Mail-Identitäten zu authentifizieren.
Je nach Ihren Einstellungen können Agenten in Benutzerprofilen sowohl in einem Formular erfasste als auch per JWT bereitgestellte E-Mail-Adressen sehen. Bei neuen Zendesk-Konten sind E-Mail-Identitäten eingeschaltet 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.
- 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: (Standardeinstellung) 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.
- Sowohl verifizierte als auch nicht verifizierte E-Mails verwenden: Neben den E-Mail-Identitäten authentifizierter Benutzer mit verifizierten E-Mail-Adressen werden in Benutzerprofilen auch nicht verifizierte E-Mail-Adressen angezeigt, die der Benutzer in einem AI Agent-Konversationsfluss angegeben hat.
- (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.
- Klicken Sie auf Einstellungen speichern.
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.
Diese Option bewirkt, dass die Agenten im Konversationsverlauf die von einem nicht authentifizierten Endbenutzer angegebene E-Mail-Adresse, 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.
Verifizierte und nicht verifizierte E-Mail-Adressen verwenden
Neben den E-Mail-Identitäten authentifizierter Benutzer mit verifizierten E-Mail-Adressen werden in Benutzerprofilen auch nicht verifizierte E-Mail-Adressen angezeigt, die der Benutzer in einem AI Agent-Konversationsfluss angegeben hat.
Diese Option ist weniger sicher, da Angriffe durch böswillige Benutzer mit falscher Identität nicht ausgeschlossen werden können. Die Agenten können aber im Benutzerprofil erkennen, ob eine E-Mail-Adresse verifiziert ist. Unbestätigte E-Mail-Adressen sind im Arbeitsbereich für Agenten klar als solche gekennzeichnet. Agenten können angewiesen werden, die Identität der Endbenutzer bei eventuell notwendigen Folge-E-Mails anhand von Sicherheitsfragen zu überprüfen.
Reihenfolge der Ereignisse | Ereignis | Erstellte E-Mail-Identität |
---|---|---|
1 | Ein nicht authentifizierter Benutzer gibt in einem Formular eine E-Mail-Adresse an. Beispiel: alice@beispiel.org | Zendesk erstellt einen neuen, nicht authentifizierten Benutzer (ID: 12345) mit der unbestätigten E-Mail-Identität (alice@beispiel.org). |
2 | Für einen authentifizierten Benutzer wird ein JWT mit den folgenden Claims ausgestellt:
|
Zendesk erstellt einen neuen, authentifizierten Benutzer (ID: 22345) mit einer bestätigten E-Mail-Identität (alice@beispiel.org). Dem nicht authentifizierten Benutzer (ID: 12345) wird die unbestätigte E-Mail-Identität entzogen, weil sie durch eine verifizierte Identität ersetzt wurde. |
Nicht authentifizierten Benutzern erlauben, bestätigte E-Mail-Adressen zu beanspruchen (nicht empfohlen)
Im Gegensatz zu den anderen E-Mail-Identitätsoptionen erlaubt diese Einstellung Benutzern, die Identität authentifizierter Benutzer anzunehmen, indem sie auf Anfrage einfach deren E-Mail-Adresse eingeben. In diesem Fall haben bestätigte E-Mail-Adressen nicht Vorrang vor unbestätigten E-Mail-Adressen.
Diese Option ist die unsicherste und für Angriffe mit falscher Identität anfälligste Variante. Trotzdem können aufmerksame Agenten auch in diesem Szenario potenzielle Betrüger daran erkennen, dass ihr Benutzerprofil und ihre Nachrichten nicht mit dem grünen Häkchen versehen sind, das authentifizierte Benutzer kennzeichnet.
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.
Ausstellen von JWTs mit E-Mail-Adressen
- external_id: (Erforderlich) Alphanumerische Zeichenfolge, anhand derer jeder Benutzer eindeutig identifiziert werden kann. Siehe Auswählen der externen ID für an Benutzer ausgegebene JWTs.
-
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.
Planen Sie Ihre Messaging-Authentifizierung unter dem Aspekt der Konfliktvermeidung. Wählen Sie zum Beispiel Ihre externen IDs und E-Mail-Einstellungen in Zendesk so, dass keine Konflikte auftreten können. 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).
0 Kommentare