Konfigurieren von Authentifizierungseinstellungen

Omnichannel for Customer Service bietet eine Reihe von Funktionen, die die Leistungsfähigkeit von Dynamics 365 Customer Service Enterprise erweitern, um Organisationen die sofortige Verbindung und Interaktion mit ihren Kunden über digitale Messagingkanäle hinweg zu ermöglichen. Für den Zugriff auf Omnichannel for Customer Service ist eine zusätzliche Lizenz erforderlich. Weitere Informationen finden Sie auf den Seiten Dynamics 365 Customer Service und Dynamics 365 Customer Service Preisplan.

Gilt für: Dynamics 365 Contact Center – eingebettet, Dynamics 365 Contact Center – eigenständig und Dynamics 365 Customer Service

Sie können Authentifizierungseinstellungen erstellen, um einen angemeldeten Kunden aus einer Domäne zu überprüfen und Informationen basierend auf den Kontextvariablen zu extrahieren, die festgelegt sind. Sie können Ihre anonymen Kunden von authentifizierten Kunden besser unterscheiden, und Sie können Regeln für die Kontextvariablen erstellen.

Beispielsweise können Sie Warteschlangen für separate anonyme Kunden und authentifizierte Kunden haben. Da Sie mehr Informationen zu Ihren authentifizierten Kunden haben, können Sie diese anhand bestimmter Variablen, wie Einkaufswagenwert oder einen privilegierten Status auch priorisieren.

Nachdem Sie einen Authentifizierungseinstellungendatensatz erstellt haben, müssen Sie ihn einer Kanalinstanz in einem Arbeitsstream hinzufügen, damit er funktioniert. Die Authentifizierung wird für diese Kanäle unterstützt:

  • Chat
  • Apple Nachrichten für Unternehmen

Um anzuzeigen, ob ein Kunde authentifiziert ist, erhält der Kundenservicemitarbeiter (Servicemitarbeiter oder Vertreter) eine Benachrichtigung im Abschnitt Gesprächszusammenfassung. Das Feld Authentifiziert wird auf Ja oder Nein gesetzt, je nach Authentifizierungsstatus des Kunden. Weitere Informationen finden Sie unter Gesprächszusammenfassung.

Authentifizierung im Vergleich zur Kundenidentifikation

Authentifizierung und Kundenidentifikation sind unterschiedliche Funktionen:

  • Die Authentifizierung überprüft, wer der Kunde ist. Der Kunde meldet sich auf Ihrer Website oder Ihrem Portal an, und Ihre Seite übermittelt einen signierten JSON Web Token (JWT) an das Chat-Widget. Das System validiert das Token mit dem öffentlichen Schlüssel, den Sie im Authentifizierungsdatensatz angegeben haben.
  • Die Kundenidentifikation nutzt Informationen, die der Kunde eingibt, wie einen Namen, eine E-Mail-Adresse oder eine Telefonnummer in einer Umfrage vor dem Gespräch, um einen passenden Kontakt- oder Kontoeintrag zu finden und zu verknüpfen. Die Identifikation authentifiziert den Kunden nicht. Erfahren Sie mehr unter Kunden automatisch identifizieren.

Voraussetzungen

Erstellen Sie einen Datensatz für die Chatauthentifizierungseinstellungen.

Sie können einen Datensatz für die Chatauthentifizierungseinstellung im Copilot Service Admin Center erstellen.

  1. In der Sitemap des Copilot Service Verwaltungszentrums gehen Sie zu Kundensupport>. Die Benutzerdefinierte Einstellungen Seite wird angezeigt.

  2. Im Abschnitt Authentifizierungseinstellungen wählen Sie Verwalten aus. Die Seite Authentifizierungseinstellungen wird angezeigt.

  3. Wählen Sie Neue Authentifizierungseinstellung aus und geben Sie dann die folgenden Informationen auf der Seite Authentifizierungseinstellung hinzufügen ein:

    • Name: Geben Sie einen Namen für die Authentifizierungseinstellungen an.

    • Besitzender: Übernehmen Sie den Standardwert oder ändern Sie ihn auf einen erforderlichen Wert.

    • Authentifizierungstyp: Standardmäßig kann OAuth 2.0 nicht bearbeitet werden.

    • Öffentlicher Schlüssel-URL: Geben Sie die URL des öffentlichen Schlüssels der Domain an. Diese URL wird verwendet, um die Informationen zu validieren, die aus dem JWT der Domain eingehen, bei der sich ein Kunde angemeldet hat.

    • JavaScript-Clientfunktion: Geben Sie die JavaScript-Clientfunktion an, die für die Authentifizierung verwendet wird. Diese Funktion extrahiert ein Token vom Token-Endpunkt.

      Konfigurieren eines Chat-Authentifizierungseinstellungsdatensatzes

    Erfahren Sie später in diesem Artikel mehr darüber, wie Sie die Public-Key-URL und JavaScript-Clientfunktion in Setup for Power Apps Portals oder Setup for custom Portals finden.

  4. Wählen Sie Speichern.

Fügen Sie dem Chat-Widget eine Authentifizierung hinzu

  1. Bearbeiten Sie im Copilot Service Admin Center das Chat-Widget in den Arbeitsstreameinstellungen, und wechseln Sie dann zur Registerkarte Behaviors.

  2. Suchen Sie im Feld Authentifizierungseinstellungen den Datensatz für die Chat-Authentifizierung und wählen Sie ihn aus.

Wenn ein angemeldeter Kunde auf einem Portal das Chatwidget öffnet, wird die JavaScript-Clientfunktion das JWT vom Client zum Server weitergegeben. Der Server validiert die JWT-Signatur mit dem öffentlichen Schlüssel und gibt die Informationen dann an den Chat-Mitarbeiter im Dynamics 365 Contact Center weiter. Als Administrator können Sie auch weitere Informationen über den angemeldeten Kunden im JWT weitergeben, indem Sie benutzerdefinierte Kontextvariablen definieren. Du musst die Kontextvariablen genau so definieren, wie sie im Workstream sind, der mit dem Chat-Widget verbunden ist. Weitere Informationen finden Sie unter Kontextvariablen verwalten.

Einrichtung für neue Power Apps-Portale

Wenn Sie eine Authentifizierung für ein Chat-Widget auf einer von Ihnen entwickelten Website mit Power Apps-Portalen hinzufügen, erhalten Sie die URL des öffentlichen Schlüssels und die JavaScript-Client-Funktion. Sie müssen ein benutzerdefiniertes Zertifikat hochladen, um über eine gültige öffentliche URL in Power Apps-Portalen zu verfügen.

  • Öffentliche Schlüssel URL: <portal_base_URL>/_services/auth/publickey
  • Javascript-Clientfunktion: auth.getAuthenticationToken

Für ein fertiges Power Apps-Portal gibt die JavaScript-Clientfunktion ein Token zurück, das standardmäßig den entsprechenden Claim hat, einen Kontaktdatensatz mit dem Gespräch zu verknüpfen. Dieses Token enthält den sub Claim mit der Kontakt-ID des angemeldeten Benutzers. Der sub Claim liefert eine eindeutige Kennung, die das System verwendet, um den Kontaktdatensatz automatisch aus Ihrer Dataverse-Umgebung zu identifizieren und zu verknüpfen. Erfahren Sie mehr über die sub Anspruchsangabe in Schritt 3 von Einrichtung für benutzerdefinierte Portale.

Benutzerdefinierte Portale einrichten

Wenn Sie einer benutzerdefinierten Website, die nicht mithilfe von Power Apps Portalen entwickelt wurde, eine authentifizierte Chaterfahrung hinzufügen, muss Ihr Webentwicklungsteam die folgenden Schritte ausführen, bevor Ihr Administrator authentifizierten Chat konfigurieren kann:

  1. Generieren Sie ein öffentliches/privates Schlüsselpaar auf ihren Authentifizierungsservern. Die Schlüssel müssen mit RSA256 Algorithmus generiert werden.

    Der folgende Beispielcode erzeugt ein privates und ein öffentliches Schlüsselpaar.

    openssl genpkey -algorithm RSA -out private_key.pem -pkeyopt rsa_keygen_bits:2048
    openssl rsa -pubout -in private_key.pem -out public_key.pem
    
  2. Erstellen Sie einen Endpunkt, der Ihre öffentlichen Schlüssel zurückgibt. Das System verwendet die öffentlichen Schlüssel, um das JWT zu validieren, das im Rahmen der Autorisierung der Chat-Anfrage übergeben wurde. Geben Sie die URL dieses Endpunkts in die Admin-App ein, wenn Sie einen Datensatz für Authentifizierungseinstellungen erstellen.

    Ihr Endpunkt des öffentlichen Schlüssels sieht ungefähr wie in diesem Beispiel aus:

        -----BEGIN PUBLIC KEY----- 
        NIIBIjANBgkqhkiG9w0BAQEFABCOPQ8AMIIBCgKCAQEAn+BjbrY5yhSpLjcV3seP 
        mNvAvtQ/zLwkjCbpc8c0xVUOzEdH8tq4fPi/X5P/Uf2CJomWjdOf1wffmOZjFasx 
        ELG+poTqy5uX2dNhH6lOMUsV31QGG36skLivpLBCSK6lWlzsV6WGkb/m8r86aGzp 
        jtNhw8yvoTYB4updDrJ8pC+tx4EWK0WEmKn1GsW6TjUtxJjcTLI1puSbmcGHbkSi 
        RSbWkKPqaEVFALprw+W5ZCung5QX3KOkY/rJd+2JwULm7okyQCQaF7qwa5i9Uf65 
        7M6ZL4vsDevq7E/v3tf6qxpSSHzt4XspXVQty9QHhqDqBEY3PfI4L2JjgIGuPhfS 
        YQIDAQAB 
        -----END PUBLIC KEY-----
    

    Wenn Sie mehrere öffentliche Schlüssel verwenden müssen, kann Ihr Endpunkt des öffentlichen Schlüssels einen Satz von <kid, publickey>-Paaren zurückgeben, wobei sich kid auf die Schlüssel-ID bezieht. Die Schlüssel-ID-Paare müssen eindeutig sein. Übergib die kid im JWT-Header in Schritt 3. Wenn Sie mehrere Schlüssel verwenden, sollte Ihr Endpunkt des öffentlichen Schlüssels etwas zurückgeben, das wie das folgende Beispiel aussieht. Der öffentliche Schlüssel ist base64-codiert.

    [
        { 
            "kid": "qWO4EaKT1xRO7JC/oqALz6DCVr41B/qL0Hqp4in7hu4=",
            "publicKey": "LS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0NCk1JSUJJakFOQmdrcWhraUc5dzBCQVFFRkFBT0NBUThBTUlJQkNnS0NBUUVBbjFLdXhtSEh3V3hjelZSWGRBVmMNCnBEaFZwa0FnYklhTGZBUWc1bFpvemZqc29vcWRGWkl0VlFMdmRERWFVeDNqTytrTkxZM0JFRnBYVDZTN3ZNZCsNCnZoM2hpMDNsQ1dINnNCTWtaSWtuUUliMnFpekFsT0diU2EvK3JrUElnYnpXQjRpT1QyWVhyOVB4bXR5d2o4WUINCnYram55VU5DSzMyZy9FYWsvM0k3YW1vZ2pJY0JISjNFTjVuQWJBMExVVnJwMW5DODJmeEVPOHNJTzNYdjlWNVUNCnc5QnVTVVFRSmtMejNQYVI5WTdRZUEyNW5LUGtqTXZ2Y0UxVU5oeVpIYlNLbmorSitkZmFjb1hsSGtyMEdGTXYNCldkSDZqR0pWcGNQMHBkNjFOa3JKa2c0aStheThwS2ZqdjNUOHN3NWdaVHFweFFaaitVRWxqaVM0SHRPTlhkNlENCnZRSURBUUFCDQotLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0NCg==",
            "expiry": 1608495423
        },
    {
            "kid": "qWO4EaKT1xRO7JC/oqALz6DCVr41B/qL0Hqp__valid=",
            "publicKey": "LS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0NCk1JSUJJakFOQmdrcWhraUc5dzBCQVFFRkFBT0NBUThBTUlJQkNnS0NBUUVBbjFLdXhtSEh3V3hjelZSWGRBVmMNCnBEaFZwa0FnYklhTGZBUWc1bFpvemZqc29vcWRGWkl0VlFMdmRERWFVeDNqTytrTkxZM0JFRnBYVDZTN3ZNZCsNCnZoM2hpMDNsQ1dINnNCTWtaSWtuUUliMnFpekFsT0diU2EvK3JrUElnYnpXQjRpT1QyWVhyOVB4bXR5d2o4WUINCnYram55VU5DSzMyZy9FYWsvM0k3YW1vZ2pJY0JISjNFTjVuQWJBMExVVnJwMW5DODJmeEVPOHNJTzNYdjlWNVUNCnc5QnVTVVFRSmtMejNQYVI5WTdRZUEyNW5LUGtqTXZ2Y0UxVU5oeVpIYlNLbmorSitkZmFjb1hsSGtyMEdGTXYNCldkSDZqR0pWcGNQMHBkNjFOa3JKa2c0aStheThwS2ZqdjNUOHN3NWdaVHFweFFaaitVRWxqaVM0SHRPTlhkNlENCnZRSURBUUFCDQotLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0NCg==",
            "expiry": 1608495423
        } 
    ]
    
  3. Du brauchst einen Dienst, der das JWT generiert, um es an das System zu senden, um einen Chat für einen authentifizierten Nutzer zu starten.

    a. Der JWT-Header sieht so ähnlich wie im folgenden Beispiel aus.

    { 
      "alg": "RS256", 
      "typ": "JWT" 
    } 
    

    Wenn Sie mehrere öffentliche Schlüssel verwenden, müssen Sie die Schlüssel-ID (kid) übergeben. Ihr JWT-Header sieht so ähnlich wie im folgenden Beispiel aus:

    { 
      "alg": "RS256", 
      "typ": "JWT",
      "kid": "qWO4EaKT1xRO7JC/oqALz6DCVr41B/qL0Hqp4in7hu4="
    } 
    

    b. Der JWT-Payload sollte Folgendes enthalten:

    • Mindestens die folgenden Ansprüche:

      Anspruch Definition
      Iss Der Aussteller des Tokens.
      iat Das Datum, an dem das Token ausgestellt wurde, im numerischen Datumsformat.
      Exp Das Ablaufdatum, an dem das Token ausgestellt wurde, im numerischen Datumsformat.
      Untertitel Der Betreff des Anspruchs.
      Hinweis: Wir empfehlen, die GUID des Kontakt- oder Kontodatensatzes im Customer Service für den angemeldeten Benutzenden zu übergeben. Diese GUID wird verwendet, um den Kontakt-Datensatz zu identifizieren und mit der Unterhaltung zu verknüpfen. Bei der Datensatzsuche werden Datensätze mit dem aktiven Statuscode für Kontakte oder Konten identifiziert. Die Datensatzidentifikation funktioniert nicht, wenn Sie benutzerdefinierte Statuscodes verwenden.
    • lwicontexts Die Kontextvariablen, die als Teil der Unterhaltung übergeben werden sollen, entweder zum Routing oder zur Anzeige für den Vertreter.
      Weitere Informationen finden Sie unter
      Benutzerdefinierte Kontext verwalten
      setAuthTokenProvider Methode
      Sie können Datensätze auch automatisch mit Hilfe von Kontextvariablen identifizieren

    • Alle anderen Daten, die Sie übergeben möchten.

    Ihre Payload sollte dem folgenden Beispiel ähneln:

      { 
          "sub" : "aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb",  
          "lwicontexts" :"{\"msdyn_cartvalue\":\"10000\", \"msdyn_isvip\":\"false\", \"portalcontactid\":\"aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb\"}", 
          "iat" : 1542622071, 
          "iss" : "contosohelp.com", 
          "exp" : 1542625672, 
          "nbf" : 1542622072 
      } 
    

    c. Die JWT-Signatur sollte mit Ihrem privaten Schlüssel signiert sein.

    Notiz

    • Wenn das Token abgelaufen oder ungültig ist, löst das Chat-Widget ein Fehlerereignis aus.
    • Die setContextProvider-Methode wird für authentifizierte Chats nicht unterstützt. Übergeben Sie lwicontexts als Teil der JWT-Nutzlast.
  4. Erstellen Sie auf Ihrer Website eine JavaScript-Funktion, die eine Rückruffunktion akzeptiert und ein JWT an die Rückruffunktion zurückgibt. Um einen Timeout zu vermeiden, sollte diese JavaScript-Funktion innerhalb von 10 Sekunden ein JWT zurückgeben. Das JWT muss die folgenden Kriterien erfüllen:

    • Es muss den Header, die Nutzdaten und die Signatur aus Schritt 3 enthalten.

    • Es muss mit dem privaten Schlüssel des Schlüsselpaars aus Schritt 1 signiert sein.

      Wir empfehlen, Ihre JWT auf Ihrem Webserver zu generieren.

Die folgende JavaScript-Methode ruft ein Authentifizierungstoken für den Eintrag für die Authentifizierungseinstellungen im Copilot Service Verwaltungszentrum ab.

// This is a sample JavaScript client function

auth.getAuthenticationToken = function(callback) {
    var xhttp = new XMLHttpRequest();
    xhttp.onreadystatechange = function() {
        if (this.readyState == 4 && this.status == 200) {
            callback(xhttp.responseText);
        }
    };
    xhttp.onerror = function(error) {
        callback(null);
    };

    // Replace this with a call to your token generating service
    xhttp.open("GET", "https://contosohelp.com/token", true);
    xhttp.send();
};
  1. Ihr Entwickler muss folgende Informationen mit Ihrem Administrator teilen:

    a. Die URL des Dienstes für öffentliche Schlüssel aus Schritt 2.

    Beispiel: https://www.contoso.com/auth/publickey

    b. Der Name der JavaScript-Client-Funktion aus Schritt 4. Das Live-Chat-Widget ruft diesen Namen intern zu Beginn des Chats auf.

    Beispiel: auth.getAuthenticationToken

    Notiz

    Wenn Ihre Benutzererfahrung die Chat-Schaltfläche offenlegt, bevor Benutzer authentifiziert werden, stellen Sie sicher, dass Sie sie nach Bedarf auf Ihre Authentifizierungsseite umleiten. Sie können die Umleitung in der Methode in Schritt 4 oder als früheren Schritt in Ihrem Benutzerflow einrichten.

    Die folgende Abbildung zeigt die Einrichtung.

    Authentifizierte Chateinrichtung.

    Anschließend können Sie einen authentifizierten Chat einrichten, indem Sie die folgenden Schritte ausführen:

Einen authentifizierten Chat einrichten

  1. Gehe zum Copilot Service admin center und erstelle einen Datensatz für Authentifizierungseinstellungen mit den Informationen aus Schritt 5 des vorherigen Abschnitts. Weitere Informationen finden Sie unter Einen Authentifizierungseinstellungsdatensatz für Chat erstellen.

  2. Verknüpfen Sie die Authentifizierungseinstellungen mit dem Chat-Widget, das eine authentifizierte Erfahrung bietet. Weitere Informationen finden Sie unter Authentifizierung zum Chat-Widget hinzufügen.

    Das folgende Bild zeigt die Anrufsequenz, wenn ein Benutzer in einem authentifizierten Setup auf Ihren Chat zugreift.

    Authentifizierte Chatlaufzeit.

Authentifizierungseinstellungen für Apple Messages for Business erstellen

Notiz

Die Unterstützung für den Apple Messages for Business-Kanal ist eingestellt. Weitere Informationen finden Sie unter Veraltete Funktionen.

Voraussetzungen

  • Administratoren, die die Authentifizierungseinstellungen konfigurieren, benötigen mehr Sicherheitsberechtigungen. Weitere Informationen finden Sie unter Sicherheitsberechtigungen für ein Feld einrichten.

  • Stellen Sie sicher, dass Ihre Organisation über fundierte Kenntnisse über den OAuth 2.0 OpenID Connect-Flow verfügt. Dies Schritte werden im nächsten Abschnitt beschrieben.

  • Bestätigen Sie, dass Ihre Organisation über mindestens eine Apple Messages for Business Authentifizierungstyp Rich-Nachricht verfügt. Diese erweiterte Nachrichtenkonfiguration ist für die Einrichtung erforderlich.

Einen Authentifizierungseinstellungsdatensatz für Apple Messages for Business mit dem OAuth 2.0 OpenID Connect-Flow erstellen

  1. Wechseln Sie auf der Websitekarte "Copilot Service Admin Center" zu Kundensupport>Kundeneinstellungen, und wählen Sie dann Verwalten für Authentifizierungseinstellungen aus. Es wird eine Liste der vorhandenen Authentifizierungseinstellungen angezeigt.

  2. Wählen Sie Neue Authentifizierungseinstellung aus, und geben Sie auf der Seite Authentifizierungseinstellung hinzufügen folgende Details ein:

    1. Geben Sie auf der Seite Kanaltyp einen Namen ein und wählen Sie dann als Kanaltyp Apple Messages for Business aus.

    2. Wählen Sie für den AuthentifizierungstypOAuth 2.0 OpenID-Verbindungsfluss aus.

    3. Geben Sie auf der Seite Authentifizierungseinstellung hinzufügen die folgenden Informationen an:

      • Client-ID: Von einem Autorisierungsserver ausgestellter OAuth 2.0-Client-Bezeichner.
      • Client-Geheimnis: Geheimer Clientschlüssel, der zum Authentifizieren von Anforderungen verwendet wird, die an einen Autorisierungsserver gesendet werden.
      • Bereich: Jeder hinzugefügte Bereich legt fest, welche Teile der Benutzerdaten Sie vom Kunden angefordert haben. Der Umfangsinhalt muss genau mit dem übereinstimmen, der über Ihren Dienstanbieter verfügbar ist.
      • Zugriffstoken-URL: Der Endpunkt des Dienstanbieters, an dem ein Zugriffstoken angefordert werden kann.
      • Entschlüsselte Token-URL: Der Endpunkt, an dem die OAuth 2.0-API Kundeninformationen abrufen kann, die im Bereich angefordert wurden.
      • Zusätzliche Parameter: Ermöglicht Authentifizierungsdiensten, zusätzliche Parameter aus der Anforderung zu übernehmen.
    4. Auf der Seite Zusätzliche Details können Sie in Sekunden optional eine Ablaufzeit für das Zugriffstoken festlegen. Die standardmäßige Ablaufzeit beträgt eine Stunde.
      Nach dem angegebenen Zeitpunkt ändert sich das Feld "Authentifiziert " im Abschnitt "Unterhaltungszusammenfassung " einer zuvor authentifizierten Unterhaltung in "Nein".

    5. Wählen Sie auf der Seite Rich-Nachrichten die Option Hinzufügen und dann eine oder mehrere Rich-Nachrichten hinzu, die dieser Authentifizierungseinstellung zugeordnet werden sollen.

    6. Überprüfen Sie die Seite Zusammenfassung und dann Weiter. Die Authentifizierungseinstellungen werden konfiguriert.

    7. Kopieren Sie auf der Seite Umleitungsinformationen die URL. Fügen Sie diese URL unter erlaubten Rückruf-URLs auf der Website des Authentifizierungsdienstanbieters ein.

    8. Wählen Sie Fertig stellen aus.

Fügen Sie die Authentifizierung einem Apple Messages for Business-Kanal hinzu

  1. Öffnen Sie den Arbeitsstream, der die Kanalinstanz enthält, für die Sie die Authentifizierung hinzufügen möchten.
  2. Wechseln Sie auf der Seite Verhalten der Kanaleinstellungen zu Authentifizierungseinstellungen, aktivieren Sie die Funktion, und wählen Sie dann aus dem Dropdownmenü die richtige Einstellung aus. Weitere Informationen finden Sie unter Einen Apple Messages for Business-Kanal konfigurieren.
  3. Um die Authentifizierungseinstellungen für jede Kanalinstanz zu überprüfen oder zu aktualisieren, wählen Sie Bearbeiten aus.

Chatwidget hinzufügen
Konfigurieren einer Umfrage vor dem Gespräch
Schnellantworten erstellen
Erstellen und verwalten Sie Betriebszeiten
Chatwidget in Power Apps-Portalen einbetten
Kunden automatisch identifizieren