Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Omnichannel for Customer Service biedt een reeks mogelijkheden die de kracht van Dynamics 365 Customer Service Enterprise uitbreiden om organisaties in staat te stellen direct verbinding te maken met hun klanten via digitale berichtenkanalen. Er is een extra licentie nodig voor toegang tot Omnichannel voor klantenservice. Zie voor meer informatie het Dynamics 365 Customer Service prijsoverzicht en Dynamics 365 Customer Service prijsplan pagina's.
Van toepassing op: Dynamics 365 Contact Center (ingesloten), Dynamics 365 Contact Center (zelfstandig) en Dynamics 365 Customer Service
U kunt verificatie-instellingen maken om een aangemelde klant vanuit een domein te valideren en informatie te extraheren op basis van de gedefinieerde contextvariabelen. U kunt uw anonieme klanten onderscheiden van geverifieerde klanten en u kunt regels maken op basis van de contextvariabelen.
U kunt bijvoorbeeld afzonderlijke wachtrijen hebben voor anonieme klanten en geverifieerde klanten. Omdat u meer informatie over uw geverifieerde klanten hebt, kunt u deze ook prioriteren op basis van specifieke variabelen, zoals de waarde van een winkelwagentje of een geprivilegieerde status.
Nadat u een record voor verificatie-instellingen hebt gemaakt, moet u deze toevoegen aan een kanaalexemplaar in een workstream om ervoor te zorgen dat het werkt. Verificatie wordt ondersteund voor deze kanalen:
- Chatten
- Apple Messages voor bedrijven
Een klantenservicemedewerker (servicemedewerker of medewerker) krijgt een melding in de sectie Samenvatting gesprek om aan te geven of een klant al dan niet is geverifieerd. Het veld Geverifieerd veld is ingesteld op Ja of Nee gebaseerd op de verificatiestatus van de klant. Meer informatie is te vinden in Gesprekssamenvatting.
Authenticatie vergeleken met klantidentificatie
Authenticatie en klantidentificatie zijn verschillende functionaliteiten:
- Verificatie verifieert wie de klant is. De klant logt in op uw website of portaal, en uw site stuurt een ondertekende JSON Web Token (JWT) naar de chatwidget. Het systeem valideert het token met de publieke sleutel die je in het authenticatie-instellingsrecord hebt opgegeven.
- Klantidentificatie gebruikt informatie die de klant invoert, zoals een naam, e-mailadres of telefoonnummer in een pre-conversatieenquête, om een overeenkomend contact- of accountrecord te vinden en te koppelen. Identificatie authenticeert de klant niet. Lees meer in Identificeer automatisch klanten.
Vereiste voorwaarden
- Zorg ervoor dat uw organisatie praktische kennis heeft van OAuth 2.0 en JSON Web Tokens (JWT's).
- Controleer of u machtigingen hebt voor de beveiligde kolommen. Meer informatie is te vinden in Machtigingen configureren voor toegang tot beveiligde kolommen.
Een record met verificatie-instelling voor chat maken
U kunt een record voor chatverificatie maken in het Copilot Service-beheercentrum.
Ga in het siteoverzicht van het Copilot Service-beheercentrum naar Klantenondersteuning>Klantinstellingen. De pagina Klantinstellingen verschijnt.
Selecteer in de sectie Verificatie-instellingen de optie Beheren. De pagina Verificastie-instellingen verschijnt.
Selecteer Nieuwe verificatie-instellingen en verstrek de volgende informatie op de pagina Verificatie-instelling toevoegen:
Naam: voer een naam in voor de verificatie-instelling.
Eigenaar: accepteer de standaardwaarde of wijzig deze in een vereiste waarde.
Verificatietype: standaard kan OAuth 2.0 niet worden bewerkt.
Openbare sleutel-URL: specificeer de openbare sleutel-URL van het domein. Deze URL wordt gebruikt om de informatie te valideren die binnenkomt van de JWT van het domein waarop een klant zich heeft aangemeld.
Javascript-clientfunctie: Specificeer de JavaScript-clientfunctie die gebruikt moet worden voor authenticatie. Deze functie extraheert een token uit het token-eindpunt.
Lees later in dit artikel meer over hoe je de public key URL en JavaScript-clientfunctie kunt vinden in Setup for Power Apps-portalen of Setup for custom portals.
Selecteer Opslaan.
Verificatie toevoegen aan chatwidget
Bewerk in Copilot Service-beheercentrum de chatwidget in de workstream-instellingen en ga vervolgens naar het tabblad Behaviors.
Blader in het vak Verificatie-instellingen en selecteer de chatverificatierecord.
Wanneer een aangemelde klant op een portal de chatwidget opent, geeft de JavaScript-clientfunctie de JWT door van de client naar de server. De server valideert de JWT-handtekening met de publieke sleutel en geeft de informatie vervolgens door aan de chatvertegenwoordiger in Dynamics 365 Contact Center. Als beheerder kun je ook meer informatie over de ingelogde klant in de JWT doorgeven door aangepaste contextvariabelen te definiëren. Je moet de contextvariabelen precies definiëren zoals ze zijn in de werkstroom die aan de chatwidget is gekoppeld. Meer informatie is te vinden in Contextvariabelen beheren.
Installatie voor Power Apps portals
Als je authenticatie toevoegt voor een chatwidget op een website die je hebt ontwikkeld via Power Apps-portalen, krijg je de publieke sleutel-URL en JavaScript-clientfunctie. U moet een aangepast certificaat uploaden om een geldige openbare-sleutel-URL te hebben in Power Apps portals.
-
Openbare sleutel-URL:
<portal_base_URL>/_services/auth/publickey -
JavaScript-clientfunctie:
auth.getAuthenticationToken
Voor een kant-en-klaar Power Apps-portaal geeft de JavaScript-clientfunctie een token terug die standaard de juiste claim heeft om een contactrecord aan het gesprek te koppelen. Dit token bevat de sub claim met het contact-ID van de ingelogde gebruiker. De sub claim biedt een unieke identificatie die het systeem gebruikt om automatisch het contactrecord uit uw Dataverse-omgeving te identificeren en te koppelen. Lees meer over de sub claim in stap 3 van Setup for custom portals.
Instellingen voor aangepaste portals
Als u een geverifieerde chatervaring toevoegt aan een aangepaste website die niet is ontwikkeld met behulp van Power Apps-portals, moet uw webontwikkelingsteam de volgende stappen uitvoeren voordat de beheerder geverifieerde chat kan configureren:
Genereer een openbaar/persoonlijk sleutelpaar op hun verificatieservers. De sleutels moeten worden gegenereerd met het RSA256-algoritme.
De volgende voorbeeldcode genereert een paar private en publieke sleutels.
openssl genpkey -algorithm RSA -out private_key.pem -pkeyopt rsa_keygen_bits:2048 openssl rsa -pubout -in private_key.pem -out public_key.pemMaak een eindpunt waarmee uw openbare sleutels worden geretourneerd. Het systeem gebruikt de publieke sleutels om de JWT te valideren die wordt meegegeven als onderdeel van de autorisatie van het chatverzoek. Voer de URL van dit eindpunt in in de admin-app bij het aanmaken van een authenticatie-instellingsrecord.
Het eindpunt voor uw openbare sleutel ziet er ongeveer zo uit als in dit voorbeeld:
-----BEGIN PUBLIC KEY----- NIIBIjANBgkqhkiG9w0BAQEFABCOPQ8AMIIBCgKCAQEAn+BjbrY5yhSpLjcV3seP mNvAvtQ/zLwkjCbpc8c0xVUOzEdH8tq4fPi/X5P/Uf2CJomWjdOf1wffmOZjFasx ELG+poTqy5uX2dNhH6lOMUsV31QGG36skLivpLBCSK6lWlzsV6WGkb/m8r86aGzp jtNhw8yvoTYB4updDrJ8pC+tx4EWK0WEmKn1GsW6TjUtxJjcTLI1puSbmcGHbkSi RSbWkKPqaEVFALprw+W5ZCung5QX3KOkY/rJd+2JwULm7okyQCQaF7qwa5i9Uf65 7M6ZL4vsDevq7E/v3tf6qxpSSHzt4XspXVQty9QHhqDqBEY3PfI4L2JjgIGuPhfS YQIDAQAB -----END PUBLIC KEY-----Als u meerdere openbare sleutels moet gebruiken, kan het eindpunt voor uw openbare sleutel een set met
<kid, publickey>- paren retourneren, waarbijkidverwijst naar de sleutel-id. Sleutel-id-paren moeten uniek zijn. Geef dekiddoor in de JWT-header in stap 3. Als u meerdere sleutels gebruikt, moet het eindpunt voor de openbare sleutel iets retourneren dat lijkt op het volgende voorbeeld. De openbare sleutel wordt met base64 gecodeerd.[ { "kid": "qWO4EaKT1xRO7JC/oqALz6DCVr41B/qL0Hqp4in7hu4=", "publicKey": "LS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0NCk1JSUJJakFOQmdrcWhraUc5dzBCQVFFRkFBT0NBUThBTUlJQkNnS0NBUUVBbjFLdXhtSEh3V3hjelZSWGRBVmMNCnBEaFZwa0FnYklhTGZBUWc1bFpvemZqc29vcWRGWkl0VlFMdmRERWFVeDNqTytrTkxZM0JFRnBYVDZTN3ZNZCsNCnZoM2hpMDNsQ1dINnNCTWtaSWtuUUliMnFpekFsT0diU2EvK3JrUElnYnpXQjRpT1QyWVhyOVB4bXR5d2o4WUINCnYram55VU5DSzMyZy9FYWsvM0k3YW1vZ2pJY0JISjNFTjVuQWJBMExVVnJwMW5DODJmeEVPOHNJTzNYdjlWNVUNCnc5QnVTVVFRSmtMejNQYVI5WTdRZUEyNW5LUGtqTXZ2Y0UxVU5oeVpIYlNLbmorSitkZmFjb1hsSGtyMEdGTXYNCldkSDZqR0pWcGNQMHBkNjFOa3JKa2c0aStheThwS2ZqdjNUOHN3NWdaVHFweFFaaitVRWxqaVM0SHRPTlhkNlENCnZRSURBUUFCDQotLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0NCg==", "expiry": 1608495423 }, { "kid": "qWO4EaKT1xRO7JC/oqALz6DCVr41B/qL0Hqp__valid=", "publicKey": "LS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0NCk1JSUJJakFOQmdrcWhraUc5dzBCQVFFRkFBT0NBUThBTUlJQkNnS0NBUUVBbjFLdXhtSEh3V3hjelZSWGRBVmMNCnBEaFZwa0FnYklhTGZBUWc1bFpvemZqc29vcWRGWkl0VlFMdmRERWFVeDNqTytrTkxZM0JFRnBYVDZTN3ZNZCsNCnZoM2hpMDNsQ1dINnNCTWtaSWtuUUliMnFpekFsT0diU2EvK3JrUElnYnpXQjRpT1QyWVhyOVB4bXR5d2o4WUINCnYram55VU5DSzMyZy9FYWsvM0k3YW1vZ2pJY0JISjNFTjVuQWJBMExVVnJwMW5DODJmeEVPOHNJTzNYdjlWNVUNCnc5QnVTVVFRSmtMejNQYVI5WTdRZUEyNW5LUGtqTXZ2Y0UxVU5oeVpIYlNLbmorSitkZmFjb1hsSGtyMEdGTXYNCldkSDZqR0pWcGNQMHBkNjFOa3JKa2c0aStheThwS2ZqdjNUOHN3NWdaVHFweFFaaitVRWxqaVM0SHRPTlhkNlENCnZRSURBUUFCDQotLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0NCg==", "expiry": 1608495423 } ]Je hebt een dienst nodig die de JWT genereert om naar het systeem te sturen als onderdeel van het starten van een chat voor een geauthenticeerde gebruiker.
a. De JWT-header ziet er ongeveer uit als in het volgende voorbeeld:
{ "alg": "RS256", "typ": "JWT" }Als u meerdere openbare sleutels gebruikt, moet u de sleutel-id (kid) doorgeven. Uw header ziet er ongeveer uit als in het volgende voorbeeld:
{ "alg": "RS256", "typ": "JWT", "kid": "qWO4EaKT1xRO7JC/oqALz6DCVr41B/qL0Hqp4in7hu4=" }b. De JWT-payload moet het volgende omvatten:
Minimaal de volgende claims:
Aanspraak Definitie iss De uitgever van het token. iat De datum waarop het token is uitgegeven, in numerieke datumnotatie. exp De vervaldatum van dit token, in numerieke datumnotatie. ondertiteling Het onderwerp van de claim.
OPMERKING: we raden u aan de GUID van het contactpersoon- of accountrecord door te geven in Customer Service voor de aangemelde gebruiker. Deze GUID wordt gebruikt om de contactrecord te identificeren en aan het gesprek te koppelen. Met de recordzoekfunctie worden records geïdentificeerd die een actieve statuscode hebben voor contactpersonen of accounts. Recordidentificatie werkt niet als u aangepaste statuscodes gebruikt.lwicontexts De contextvariabelen die moeten worden doorgegeven als onderdeel van het gesprek, hetzij voor doorstuurdoeleinden, hetzij om aan de medewerker te laten zien.
Meer informatie is te vinden in
Aangepaste context beheren
Methode setAuthTokenProvider
IRecords automatisch identificeren met behulp van contextvariabelenAlle andere gegevens die u wilt doorgeven.
Uw payload zou er ongeveer uit moeten zien als in het volgende voorbeeld:
{ "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. De JWT-handtekening moet worden gemaakt met uw persoonlijke sleutel.
Opmerking
- Als het token is verlopen of ongeldig is, genereert de chatwidget een foutgebeurtenis.
- De methode setContextProvider wordt niet ondersteund voor geauthenticeerde chat. Geef je
lwicontextsdoor als onderdeel van de JWT-payload.
Maak een JavaScript-functie op uw website die een terugbelfunctie accepteert en een JWT terugstuurt naar de terugbelfunctie. Om een time-out te voorkomen, zou deze JavaScript-functie binnen 10 seconden een JWT moeten teruggeven. Deze JWT moet aan de volgende criteria voldoen:
Het moet de header, payload en handtekening uit stap 3 bevatten.
Het moet worden ondertekend met de persoonlijke sleutel uit het sleutelpaar in stap 1.
We raden aan om uw JWT op uw webserver te genereren.
De volgende JavaScript-methode haalt een authenticatietoken op voor het authenticatie-instellingenrecord in het administratiecentrum van Copilot Service.
// 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();
};
Je ontwikkelaar moet de volgende informatie delen met je beheerder:
a. De URL van de openbare sleutelservice uit stap 2.
Voorbeeld:
https://www.contoso.com/auth/publickeyb. De naam van de JavaScript-clientfunctie uit stap 4. De live chatwidget roept deze naam intern aan bij het begin van een chat.
Voorbeeld: auth.getAuthenticationToken
Opmerking
Als de chatknop wordt getoond voordat gebruikers zijn geverifieerd, moet u ze indien nodig doorverwijzen naar uw verificatiepagina. U kunt de omleiding instellen in de methode in stap 4 of als een eerdere stap in uw gebruikerstroom.
De volgende afbeelding toont de configuratie.
Vervolgens kunt u een geverifieerde chat opzetten door deze stappen te volgen:
Geverifieerde chat configureren
Ga naar het administratiecentrum van Copilot Service en maak een authenticatie-instellingenrecord aan met de informatie uit stap 5 van de vorige sectie. Meer informatie is te vinden in Een verificatie-instellingsrecord maken voor chatten.
Koppel de verificatie-instellingen aan de chat widget die een geverifieerde ervaring biedt. Meer informatie is te vinden in Verificatie toevoegen aan chatwidget.
De onderstaande afbeelding toont de oproepvolgorde wanneer een gebruiker uw chat opent in een geverifieerde configuratie.
Verificatie-instellingen maken voor Apple Messages for Business
Opmerking
Ondersteuning voor het Apple Messages for Business-kanaal is verouderd. Meer informatie over verouderingen.
Vereiste voorwaarden
Beheerders die de authenticatie-instellingen configureren, hebben meer beveiligingsmachtigingen nodig. Meer informatie is te vinden in Beveiligingsmachtigingen instellen voor een veld.
Zorg ervoor dat uw organisatie praktische kennis heeft van de OAuth 2.0 en OpenID Connect-stroom. De stappen komen aan bod in de volgende sectie.
Bevestig dat uw organisatie ten minste één uitgebreid bericht van het type verificatie voor Apple Messages for Business heeft. Deze rijke berichtconfiguratie is vereist voor installatie.
Een verificatie-instellingsrecord maken voor Apple Messages for Business met OAuth 2.0 OpenID Connect-stroom
Ga in het siteoverzicht van het Copilot Service-beheercentrum naarklantinstellingen voor > en selecteer vervolgens Beheren voor verificatie-instellingen. Er wordt een lijst met bestaande verificatie-instellingen weergegeven.
Selecteer Nieuwe verificatie-instelling en geef op de pagina Verificatie-instelling toevoegen de volgende details op:
Voer op de pagina Kanaaltype een naam in en selecteer vervolgens Apple Messages for Business als het kanaaltype.
Selecteer voor verificatietypeOAuth 2.0 OpenID-verbindingsstroom.
Geef op de pagina Verificatie-instelling toevoegen de volgende informatie op:
-
Client-id: OAuth 2.0 Client-id uitgegeven door een autorisatieserver.
-
Clientgeheim: clientgeheim dat wordt gebruikt om aanvragen te verifiëren die naar een autorisatieserver zijn verzonden.
-
Bereik: elk toegevoegd bereik specificeert welke gebruikersgegevens u van de klant hebt opgevraagd. De inhoud van de scope moet exact overeenkomen met de inhoud die beschikbaar is via uw serviceprovider.
- Toegangstoken-URL: het eindpunt van de serviceprovider waar een toegangstoken kan worden aangevraagd.
-
Ontsleutelde token-URL: het eindpunt waar de OAuth 2.0 API de klantgegevens kan ophalen die in het bereik zijn opgevraagd.
- Aanvullende parameters: hiermee kunnen verificatieservices extra parameters uit de aanvraag halen.
-
Client-id: OAuth 2.0 Client-id uitgegeven door een autorisatieserver.
Op de pagina Aanvullende details kunt u optioneel een toegangstoken-vervaltijd definiëren, in seconden. De standaardvervaltijd is één uur.
Na de opgegeven tijd verandert het veld Geverifieerd in het gedeelte Gespreksoverzicht van een eerder geverifieerd gesprek in Nee.Selecteer op de pagina Uitgebreide berichten de optie Toevoegen en selecteer vervolgens een of meer uitgebreide berichten die u aan deze verificatie-instelling wilt koppelen.
Bekijk de pagina Overzicht en selecteer vervolgens Volgende. De verificatie-instelling is geconfigureerd.
Kopieer de URL op de pagina Omleidingsinformatie. Voeg deze URL toe aan de website van de authenticatiedienstverlener onder toegestane callback-URL's.
Selecteer Voltooien.
Verificatie toevoegen aan een Apple Messages for Business-kanaal
- Open de werkstroom die de kanaalinstantie bevat waaraan u authenticatie wilt toevoegen.
- Op de pagina Gedrag van de kanaalinstellingen gaat u naar Verificatie-instellingen, schakelt u deze functie in en selecteert u vervolgens de juiste instelling in het vervolgkeuzemenu. Meer informatie is te vinden in Een Apple Messages for Business-kanaal configureren.
- Als u de verificatie-instellingen voor elk kanaalexemplaar wilt bekijken of bijwerken, selecteert u Bewerken.
Verwante gegevens
Een chatwidget toevoegen
Een onderzoek voorafgaand aan een gesprek configureren
Snelle antwoorden maken
Bedrijfsuren maken en beheren
Chatwidget in Power Apps-portals insluiten
Klanten automatisch identificeren