Condividi tramite


Configurare impostazioni di autenticazione

Multicanale per Customer Service offre una suite di funzionalità che estendono le funzionalità avanzate di Dynamics 365 Customer Service Enterprise per consentire alle organizzazioni di connettersi e interagire immediatamente con i clienti attraverso i canali di messaggistica digitale. È necessaria una licenza aggiuntiva per accedere a Multicanale per Customer Service. Per altre informazioni, vedere le pagine Panoramica dei prezzi di Dynamics 365 Customer Service e Piano tariffario di Dynamics 365 Customer Service.

Si applica a: Dynamics 365 Contact Center - integrato, Dynamics 365 Contact Center - standalone e Dynamics 365 Customer Service

Puoi creare impostazioni di autenticazione per convalidare un cliente connesso da un dominio ed estrarre informazioni in base alle variabili di contesto definite. È possibile differenziare i clienti anonimi da quelli autenticati nonché creare regole in base alle variabili di contesto.

Ad esempio, puoi avere code distinte per i clienti anonimi e per quelli autenticati. Poiché disponi di maggiori informazioni sui clienti autenticati, puoi anche assegnargli una priorità in base a specifiche variabili, ad esempio il valore del carrello della spesa o uno stato privilegiato.

Dopo avere creato un record di impostazioni di autenticazione, devi aggiungerlo a un'istanza del canale all'interno dell'impostazione del canale di un flusso di lavoro per farlo funzionare. L'autenticazione è supportata per questi canali:

  • Chat
  • Apple Messages for Business

Per indicare se un cliente è autenticato, l'agente riceve una notifica nella sezione Riepilogo conversazione. Il campo Autenticato è impostato su o su No in base allo stato di autenticazione del cliente. Altre informazioni sono disponibili in Riepilogo della conversazione

Prerequisiti

Creare un record di impostazioni di autenticazione per la chat

Puoi creare un record di impostazione dell'autenticazione chat nell'app di amministrazione.

  1. Nella mappa del sito di Interfaccia di amministrazione di Customer Service, seleziona Impostazioni cliente seleziona Supporto tecnico. Viene visualizzata la pagina Impostazioni cliente.

  2. Nella sezione Impostazioni autenticazione, seleziona Gestisci. Viene visualizzata la pagina Impostazioni autenticazione.

  3. Seleziona Nuove impostazioni di autenticazione, quindi fornisci le informazioni seguenti nella pagina Aggiungi impostazione di autenticazione:

    • Nome: immetti un nome per l'impostazione autenticata.

    • Proprietario: accetta il valore predefinito o convertilo in un valore obbligatorio.

    • Tipo di autenticazione: per impostazione predefinita, OAuth 2.0 non può essere modificato.

    • URL chiave pubblica: specifica l'URL della chiave pubblica del dominio. Questo URL viene utilizzato per convalidare le informazioni ricevute dal Token Web (JWT) JavaScript Object Notation (JSON) del dominio a cui un cliente è connesso.

    • Funzione client JavaScript: specifica la funzione client JavaScript da utilizzare per l'autenticazione. Questa funzione estrae l'endpoint token.

      Configura il record impostazione di autenticazione di chat.

    Altre informazioni su come trovare l'URL della chiave pubblica e la funzione client JavaScript sono disponibili nelle sezioni Configurazione per i portali Power Apps o Configurazione dei portali personalizzati più avanti in questo articolo.

  4. Selezionare Salva.

Creare un record di impostazioni di autenticazione per la chat utilizzando OAuth 2.0

  1. Esegui i passaggi da 1 a 3 in Creare un record di impostazione di autenticazione per la chat e immetti i seguenti dettagli nella pagina Aggiungi impostazione di autenticazione:

    • Nome: un nome per l'impostazione di autenticazione.
    • Tipo di canale: Live chat.
    • Tipo di autenticazione: OAuth 2.0
  2. Seleziona Avanti e nella pagina Dettagli, immetti le seguenti informazioni:

    • Azione personalizzata token: il riferimento al codice personalizzato per convalidare i token forniti dal provider di identità e restituire l'ID utente dell'utente autenticato.
    • URL token: l'URL utilizzato per scambiare il codice di autorizzazione con il token passato all'azione personalizzata per acquisire l'ID utente.
    • URL di reindirizzamento: l'URL passato alla richiesta del codice di autorizzazione originale, che è un parametro obbligatorio nelle chiamate all'endpoint di scambio di token.
    • ID client: l'ID del client passato all'endpoint di scambio del token.
    • Segreto client: il segreto che autentica il client passato all'endpoint di scambio del token.
    • Ambito: gli ambiti per i quali l'utente è autorizzato dal token acquisito nel flusso.
  3. Salva le modifiche.

Aggiungere l'autenticazione al widget chat

  1. Nell'interfaccia di amministrazione di Customer Service, modifica il widget chat nelle impostazioni del flusso di lavoro, quindi vai alla scheda Comportamenti.

  2. Nella casella Impostazioni di autenticazione, individua e seleziona il record dell'autenticazione chat.

Quando un cliente connesso a un portale apre il widget chat, la funzione client JavaScript passa il JWT dal client al server. Il JWT viene decrittografato e convalidato utilizzando la chiave pubblica e le informazioni vengono passate all'agente della chat in Multicanale per Customer Service. In qualità di amministratore, puoi anche passare ulteriori informazioni sul cliente connesso nel JWT definendo variabili di contesto personalizzate. Le variabili di contesto devono essere definite esattamente come nel flusso di lavoro associato al widget chat. Altre informazioni sono disponibili in Gestire le variabili di contesto

Configurazione per portali Power Apps

Se aggiungi l'autenticazione per un widget chat in un sito Web sviluppato i portali di Power Apps, l'URL della chiave pubblica e la funzione client JavaScript sono automaticamente disponibili. Devi caricare un certificato personalizzato per avere un URL di chiave pubblica valido nei portali Power Apps.

  • URL chiave pubblica: <portal_base_URL>/_services/auth/publickey
  • Funzione client JavaScript: auth.getAuthenticationToken

Per un portale Power Apps predefinito, la funzione client JavaScript restituisce un token, che per impostazione predefinita ha l'attestazione appropriata per collegare un record del contatto alla conversazione. Questo token contiene l'attestazione secondaria con l'ID contatto dell'utente che ha effettuato l'accesso. Questa attestazione secondaria fornisce un identificatore univoco che consente a Multicanale di identificare e collegare automaticamente il record del contatto dal tuo ambiente Dataverse. Altre informazioni sono disponibili nella tabella della sezione che segue.

Configurazione per portali personalizzati

Se aggiungi un'esperienza di chat autenticata a un sito web personalizzato non sviluppato mediante i portali Power Apps, il tuo team di sviluppo Web deve eseguire questi passaggi prima che l'amministratore possa configurare la chat autenticata:

  1. Genera una coppia di chiavi pubblica/privata nei relativi server di autenticazione. Le chiavi devono essere generate utilizzando l'algoritmo RSA256.

    Il codice di esempio seguente serve per generare coppie di chiave privata o chiave pubblica.

    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. Crea un endpoint che restituisce le chiavi pubbliche. I server Multicanale utilizzano le chiavi pubbliche per convalidare il token JWT trasmesso come parte dell'autorizzazione della richiesta di chat. Immetti l'URL di questo endpoint nell'app di amministrazione durante la creazione di un record di impostazione dell'autenticazione.

    L'endpoint della chiave pubblica endpoint sarà simile a questo esempio:

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

Se devi utilizzare più chiavi pubbliche, l'endpoint della tua chiave pubblica può restituire un set di <kid, publickey>coppie, in cui kid fa riferimento all'ID chiave. Le coppie di ID chiave devono essere univoche. L'ID della chiave deve essere passato nel token JWT nel passaggio 4. Se utilizzi più chiavi, l'endpoint della tua chiave pubblica dovrebbe restituire un elemento simile all'esempio seguente. La chiave pubblica è con codifica Base64.

 [
      { 
          "kid": "qWO4EaKT1xRO7JC/oqALz6DCVr41B/qL0Hqp4in7hu4=",
          "publicKey": LS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0NCk1JSUJJakFOQmdrcWhraUc5dzBCQVFFRkFBT0NBUThBTUlJQkNnS0NBUUVBbjFLdXhtSEh3V3hjelZSWGRBVmMNCnBEaFZwa0FnYklhTGZBUWc1bFpvemZqc29vcWRGWkl0VlFMdmRERWFVeDNqTytrTkxZM0JFRnBYVDZTN3ZNZCsNCnZoM2hpMDNsQ1dINnNCTWtaSWtuUUliMnFpekFsT0diU2EvK3JrUElnYnpXQjRpT1QyWVhyOVB4bXR5d2o4WUINCnYram55VU5DSzMyZy9FYWsvM0k3YW1vZ2pJY0JISjNFTjVuQWJBMExVVnJwMW5DODJmeEVPOHNJTzNYdjlWNVUNCnc5QnVTVVFRSmtMejNQYVI5WTdRZUEyNW5LUGtqTXZ2Y0UxVU5oeVpIYlNLbmorSitkZmFjb1hsSGtyMEdGTXYNCldkSDZqR0pWcGNQMHBkNjFOa3JKa2c0aStheThwS2ZqdjNUOHN3NWdaVHFweFFaaitVRWxqaVM0SHRPTlhkNlENCnZRSURBUUFCDQotLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0NCg==",
          "expiry": 1608495423
      },
 {
          "kid": "qWO4EaKT1xRO7JC/oqALz6DCVr41B/qL0Hqp__valid=",
          "publicKey": "LS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0NCk1JSUJJakFOQmdrcWhraUc5dzBCQVFFRkFBT0NBUThBTUlJQkNnS0NBUUVBbjFLdXhtSEh3V3hjelZSWGRBVmMNCnBEaFZwa0FnYklhTGZBUWc1bFpvemZqc29vcWRGWkl0VlFMdmRERWFVeDNqTytrTkxZM0JFRnBYVDZTN3ZNZCsNCnZoM2hpMDNsQ1dINnNCTWtaSWtuUUliMnFpekFsT0diU2EvK3JrUElnYnpXQjRpT1QyWVhyOVB4bXR5d2o4WUINCnYram55VU5DSzMyZy9FYWsvM0k3YW1vZ2pJY0JISjNFTjVuQWJBMExVVnJwMW5DODJmeEVPOHNJTzNYdjlWNVUNCnc5QnVTVVFRSmtMejNQYVI5WTdRZUEyNW5LUGtqTXZ2Y0UxVU5oeVpIYlNLbmorSitkZmFjb1hsSGtyMEdGTXYNCldkSDZqR0pWcGNQMHBkNjFOa3JKa2c0aStheThwS2ZqdjNUOHN3NWdaVHFweFFaaitVRWxqaVM0SHRPTlhkNlENCnZRSURBUUFCDQotLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0NCg==",
          "expiry": 1608495423
      } 
 ]
  1. Hai bisogno di un servizio che generi il token JWT da inviare ai server di Multicanale come parte dell'avvio di una chat per un utente autenticato.

    a. L'intestazione JWT appare simile all'esempio seguente.

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

    Se utilizzi più chiavi pubbliche, dovrai passare l'ID chiave (kid). L'intestazione appare simile all'esempio seguente:

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

    b. Il payload del token JWT deve includere:

    • Immetti almeno le attestazioni seguenti:

      Richiesta di rimborso Definizione
      iss L'autorità emittente del token.
      iat La data di emissione del token, in formato data numerico.
      exp La data di scadenza del token, in formato data numerico.
      secondario Oggetto dell'attestazione.
      NOTA: è consigliabile passare il GUID del record del contatto o dell'account in Customer Service per l'utente connesso. Questo GUID viene utilizzato per identificare e collegare il record del contatto alla conversazione. La ricerca dei record identifica i record che hanno il codice di stato attivo per i contatti o gli account. L'identificazione dei record non funziona se si utilizzano codici di stato personalizzati.
    • lwicontexts Le variabili di contesto da passare come parte della conversazione, sia per scopi di instradamento che da mostrare all'agente.
      Ulteriori informazioni alla pagina
      Gestire contesto personalizzato
      Metodo setAuthTokenProvider
      Identificare i record automaticamente utilizzando le variabili di contesto

    • Qualsiasi altro dato che desideri trasmettere.

    Il payload dovrebbe avere l'aspetto seguente:

      { 
          "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. La firma del token JWT dovrebbe essere firmata dalla tua chiave privata.

    Nota

    • Se il token è scaduto o non è valido, il widget della chat genera un evento di errore.
    • Il metodo setContextProvider non è supportato per chat autenticate. Dovresti passare i lwicontext come parte del payload del token JWT.
  2. Crea una funzione JavaScript sul tuo sito Web che accetta una funzione di callback e restituisce un token JWT alla funzione di callback. Per evitare il timeout, questa funzione JavaScript dovrebbe restituire un JWT entro 10 secondi. Questo token JWT deve soddisfare i criteri seguenti:

    • Deve contenere l'intestazione, il payload e la firma del passaggio 3.

    • Deve essere firmato dalla chiave privata della coppia di chiavi nel passaggio 1.

      Ti consigliamo di generare il token JWT nel server Web.

      Il nome di questo metodo JavaScript viene utilizzato per creare il record delle impostazioni di autenticazione nell'app di amministrazione di Customer 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(); 
      } 
      
  3. Il tuo sviluppatore deve condividere le seguenti informazioni con il tuo amministratore multicanale:

    a. L'URL del servizio della chiave pubblica del passaggio 2.

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

    b. Il nome della funzione del client JavaScript del passaggio 4. Il widget chat live chiama questo nome internamente all'inizio di una chat.

    Esempio: auth.getAuthenticationToken

    Nota

    Se la tua esperienza utente espone il pulsante di chat prima che gli utenti siano autenticati, assicurati di reindirizzarli alla tua pagina di autenticazione come necessario. Puoi configurare il reindirizzamento secondo il metodo nel passaggio 4 o come passaggio precedente nel flusso dell'utente.

    Nella figura seguente viene illustrata la configurazione.

    Configurazione della chat autenticata.

    Quindi, puoi configurare una chat autenticata seguendo questi passaggi:

Configurare la chat autenticata

  1. Vai all'app dell'amministrazione multicanale e crea un record delle impostazioni di autenticazione con le informazioni del passaggio 5 della sezione precedente. Altre informazioni in Creare un record di impostazioni di autenticazione per la chat

  2. Associa le impostazioni di autenticazione alla chat widget che ha un'esperienza autenticata. Altre informazioni in Aggiungere l'autenticazione al widget chat

    L'illustrazione seguente illustra la sequenza delle chiamate quando un utente accede alla chat in una configurazione autenticata:

    Runtime della chat autenticata.

Creare impostazioni di autenticazione per Apple Messages for Business

Prerequisiti

  • Gli amministratori che configurano le impostazioni di autenticazione necessitano di ulteriori autorizzazioni di sicurezza. Altre informazioni in Impostare le autorizzazioni di sicurezza per un campo

  • Assicurati che la tua organizzazione abbia una conoscenza pratica del flusso OpenID Connect OAuth 2.0. I passaggi sono descritti nella sezione successiva.

  • Conferma che la tua organizzazione abbia almeno un Messaggio RTF di tipo di autenticazione Apple Messages for Business. Questa configurazione del messaggio avanzato è obbligatoria per l'installazione.

Creare un record di impostazioni di autenticazione per Apple Messages for Business tramite il flussi OpenID Connect OAuth 2.0

  1. Nella mappa del sito di Interfaccia di amministrazione di Customer Service, seleziona Impostazioni cliente,quindi seleziona Gestisci per Impostazioni di autenticazione. Viene visualizzato un elenco di impostazioni di autenticazione esistenti.

  2. Seleziona Nuova impostazione di autenticazione e nella pagina Aggiungi impostazione di autenticazione, fornisci i seguenti dettagli:

    1. Nella pagina Tipo di canale immettere un nome e selezionare Apple Messages for Business come tipo di canale.

    2. Modifica il tipo di autenticazione flusso OpenID Connect OAuth 2.0.

    3. Nella pagina Aggiungi impostazione di autenticazione, immetti le informazioni seguenti:

      • ID client: identificatore client OAuth 2.0 emesso da un server di autorizzazione.
      • Segreto client: Segreto client utilizzato per autenticare le richieste inviate a un server di autorizzazione.
      • Ambito: ogni ambito aggiunto specifica quali dati utente sono stati richiesti al cliente. Il contenuto dell'ambito deve corrispondere esattamente quelli disponibili tramite il provider di servizi.
      • Token di accesso URL: endpoint del fornitore di servizi dove è possibile richiedere un token di accesso.
      • URL token decrittografato: endpoint in cui l'API OAuth 2.0 può recuperare le informazioni del cliente richieste nell'ambito.
      • Parametri aggiuntivi: consente ai servizi di autenticazione di prendere parametri aggiuntivi dalla richiesta.
    4. Sulla pagina Dettagli aggiuntivi puoi opzionalmente definire un tempo di scadenza del token di accesso, in secondi. Il tempo di scadenza predefinito è un'ora.
      Dopo il tempo specificato, il campo Autenticato nella sezione Riepilogo cliente di una conversazione precedentemente autenticata cambia in No.

    5. Nella pagina Messaggi RTF, seleziona Aggiungi, quindi seleziona uno o più messaggi RTF da associare a questa impostazione di autenticazione.

    6. Esamina la pagina Riepilogo e quindi seleziona Avanti. L'impostazione di autenticazione è configurata.

    7. Nella pagina Informazioni sul reindirizzamento, copia l'URL. Aggiungi questo URL al sito Web del provider di servizi di autenticazione in URL di richiamata consentiti.

    8. Selezionare Fine.

Aggiungere l'autenticazione a un canale Apple Messages for Business

  1. Apri il flusso di lavoro che contiene l'istanza del canale per cui aggiungere l'autenticazione.

  2. Nella pagina Comportamenti delle impostazioni del canale, accedi a Impostazioni di autenticazione, abilitare la funzionalità, quindi selezionare l'impostazione corretta dal menu a discesa. Altre informazioni in Configurare un canale Apple Messages for Business

  3. Per rivedere o aggiornare le impostazioni di autenticazione per ogni istanza di canale, seleziona Modifica.

Aggiungere un widget chat
Configurare un sondaggio pre-conversazione
Crea risposte rapide
Creare e gestire ore di attività
Incorporare il widget chat nel portale Power Apps
Identificare automaticamente i clienti