Suite | Qualsiasi piano |
Quando fornisci assistenza conversazionale, gli utenti potrebbero provare a portare avanti una conversazione su più dispositivi e canali. Autenticando gli utenti finali, puoi assicurarti che tutti i punti di contatto siano associati all’utente finale corretto. Ciò può migliorare la qualità dell’assistenza fornita dagli agenti e aumentare la sicurezza delle informazioni sensibili che potrebbero emergere mentre gli agenti assistono gli utenti finali.
- Terminologia per l’autenticazione della messaggistica
- Panoramica dell’implementazione dell’autenticazione della messaggistica per gli utenti finali
- Creazione e condivisione di una chiave di firma
- Autenticazione degli utenti finali solo con un ID esterno
- Integrazione delle identità email nell’autenticazione dell'utente
- Risoluzione dei conflitti tra ID esterni ed email nei JWT
Articolo correlato: Informazioni sull'autenticazione utente per la messaggistica.
Terminologia per l’autenticazione della messaggistica
- JWT: Zendesk usa JSON Web Token (JWT) firmati per autenticare gli utenti finali per la messaggistica. Questi token contengono dettagli che verificano l’identità degli utenti finali. Per ulteriori informazioni su JWT, consulta jwt.io.
- Chiave di firma: una chiave di firma viene creata da un amministratore Zendesk nel Centro amministrativo e condivisa con uno sviluppatore del team, che la usa per firmare il JWT, se necessario.
- ID esterno: una stringa alfanumerica, ad esempio un ID di un sistema esterno, univoca per ciascun utente. Questa è l’identificazione principale per l’autenticazione della messaggistica, anche quando un indirizzo email è incluso nel JWT.
- Nome utente: (Facoltativo) il nome dell’utente finale associato all’ID esterno o all’indirizzo email. Se includi il nome dell’utente nel JWT, viene visualizzato nello spazio di lavoro agente. Queste informazioni possono aiutare gli agenti a comunicare con gli utenti finali.
- Email: (Facoltativo) l’indirizzo email univoco associato a un utente finale.
Panoramica dell’implementazione dell’autenticazione della messaggistica per gli utenti finali
Zendesk sfrutta JSON Web Token (JWT) per autenticare gli utenti finali di messaggistica, il che fornisce una modalità flessibile e senza stato per verificare le identità degli utenti e proteggere gli endpoint API.
- Il processo di autenticazione della messaggistica inizia con un amministratore che genera una chiave di firma e la fornisce a uno sviluppatore. Quindi lo sviluppatore usa la chiave di firma per implementare un servizio di back-end in grado di creare JWT firmati per gli utenti come richiesto.
- Quando richiesto, il servizio di back-end crea e restituisce i JWT firmati al tuo sito web o all’app per dispositivi mobili. I JWT creati da questo servizio devono includere un ID esterno univoco e, facoltativamente, un indirizzo email per identificare l’utente finale.
- Ogni volta che l’utente effettua l’accesso, il sito web o l’app deve chiamare un'API di accesso equivalente disponibile per Web Widget e SDK per dispositivi mobili, dopodiché JWT viene passato a Zendesk per verificare l’identità dichiarata dell’utente.
Per ulteriori informazioni, in particolare per gli sviluppatori del tuo team, consulta Abilitazione dei visitatori autenticati per la messaggistica con gli SDK Zendesk oppure guarda il video seguente:
Autenticazione degli utenti finali nella messaggistica web (17:22)
Creazione e condivisione di una chiave di firma
Le chiavi di firma vengono usate dagli sviluppatori per creare JWT per gli utenti finali. Per creare una chiave di firma, devi essere un amministratore. Puoi creare un massimo di 10 chiavi. Se tenti di creare una nuova chiave dopo aver raggiunto il limite di 10, ti verrà chiesto di eliminare le chiavi inutilizzate.
- Nel Centro amministrativo, fai clic su
Account nella barra laterale, quindi seleziona Sicurezza > Autenticazione utenti finali.
- Fai clic sulla scheda Messaggistica, quindi su Crea chiave.
Se stai creando la tua prima chiave, nella parte inferiore della pagina viene visualizzato Crea chiave. In caso contrario, appare nell’angolo in alto a destra.
- Inserisci un nome per la chiave e fai clic su Avanti.
- Quando richiesto, fai clic su Copia per copiare il segreto condiviso.
La chiave viene salvata e viene assegnato automaticamente un ID. Puoi trovare l’ID di una chiave nell’elenco delle chiavi nella scheda Messaggistica della pagina Autenticazione utente finale.
- Invia in modo riservato l’ID della chiave e il segreto condiviso copiato allo sviluppatore.
- Fai clic su Nascondi la chiave per sempre.
Autenticazione degli utenti finali solo con un ID esterno
Per autenticare un utente finale, devi fornire un ID esterno nei JWT che emetti agli utenti. Zendesk usa l’ID esterno fornito in un JWT come identificatore principale per l’autenticazione utente per la messaggistica. Quando si esegue l’autenticazione utente, Zendesk risolve prima un utente esistente con l’ID esterno. Se un indirizzo email è incluso nel JWT, viene usato per risolvere l’identità dell’utente solo quando nessun utente esistente corrisponde all’ID esterno.
Firma di JWT solo con un ID esterno
- external_id: (Obbligatorio) questa è la stringa alfanumerica univoca che può essere usata per identificare ciascun utente. Consulta Selezione dell’ID esterno da usare nei JWT emessi agli utenti.
-
scope: (Obbligatorio) ambito di accesso del chiamante. L’unico valore valido è
user
. - name: (Facoltativo) il nome dell’utente. L’inclusione del nome nel payload JWT consente a Zendesk di visualizzare il nome dell’utente nello spazio di lavoro agente e consente agli agenti di fornire un’assistenza più personalizzata.
{
"external_id": "12345678",
"scope": "user",
"name": "Jane Soap"
}
Selezione dell’ID esterno da usare nei JWT emessi agli utenti
- Un ID esterno deve essere una stringa alfanumerica.
- Gli ID esterni possono contenere un massimo di 255 caratteri.
- L’ID esterno di ciascun utente deve essere globalmente univoco a livello di account.
Se il tuo account ha più brand, gli ID esterni devono essere univoci per tutti i brand.
- L’ID esterno di un utente non dovrebbe mai cambiare.
- A un utente può essere assegnato un solo ID esterno.
Alcuni esempi di buone scelte per gli ID esterni includono: un ID incrementale o randomizzato assegnato al contatto iniziale (esempio: usr_12345) o, per più brand, un identificatore specifico del brand combinato con un ID incrementato o randomizzato assegnato (esempio: brand1_a8dedg).
Evita di usare l’indirizzo email e il numero di telefono dell’utente perché possono cambiare nel tempo e gli utenti possono avere più valori. Evita anche il nome dell’utente, in quanto potrebbe non essere univoco.
Integrazione delle identità email nell’autenticazione dell'utente
- Gli utenti autenticati vengono autenticati tramite JWT firmati.
L’uso dei JWT offre un approccio affidabile perché il contenuto di un JWT firmato non può essere manomesso dagli utenti finali. Se gli attacchi di impersonificazione ti preoccupano, dovresti limitare le identità email agli utenti finali autenticati. Questa è l’opzione più sicura ed è la configurazione predefinita per i nuovi account Zendesk.
- Gli utenti non autenticati sono utenti finali che forniscono un indirizzo email in risposta alla richiesta di un bot Zendesk.
Tieni presente che consentire l’uso di identità email per utenti non autenticati può renderti vulnerabile alle persone che si spacciano per altri utenti fornendo un indirizzo email di cui non sono proprietari.
Il diagramma di flusso seguente mostra come usare le identità email nell'autenticazione della messaggistica:
Configurazione delle identità email
Con il Web Widget o le app per dispositivi mobili, gli utenti possono fornire il proprio indirizzo email in risposta a un modulo o a una richiesta dell'agente AI. In questi casi, nulla impedisce a un utente malintenzionato di fornire l'indirizzo email di qualcun altro nel tentativo di impersonare tale utente. Tuttavia, l'uso di JWT per autenticare gli utenti con ID esterni e identità email è un modo più affidabile per assegnare indirizzi email agli utenti.
A seconda delle impostazioni, gli agenti potrebbero vedere sia gli indirizzi email raccolti dai moduli che quelli forniti da JWT nei profili utente. Nei nuovi account Zendesk, le identità email sono attive e configurate per usare solo indirizzi email verificati. Questa è l’opzione più sicura. Gli account meno recenti sono configurati per usare indirizzi email verificati e non verificati.
- Nel Centro amministrativo, fai clic su
Canali nella barra laterale, quindi seleziona Messaggistica e social > Messaggistica.
- Fai clic su Gestisci impostazioni.
- Fai clic su Identità email, quindi seleziona una delle seguenti opzioni:
- Usa solo email verificate: (predefinito) le identità email vengono create solo per gli utenti autenticati che hanno un indirizzo email verificato incluso nel JWT emesso.
- Usa sia indirizzi email verificati che non verificati: oltre alle identità email per gli utenti autenticati con indirizzi email verificati visibili nei profili utente, al profilo dell’utente vengono aggiunti anche gli indirizzi email non verificati forniti dagli utenti tramite i flussi agenti AI.
- (Facoltativo, ma non consigliato) Se vuoi che qualsiasi utente, anche non autenticato, possa rivendicare indirizzi email verificati, seleziona Gli utenti non autenticati possono rivendicare indirizzi email verificati.
- Fai clic su Salva impostazioni.
Utilizzo delle sole email verificate
le identità email vengono create solo per gli utenti autenticati che hanno un indirizzo email verificato incluso nel JWT emesso.
Con questa opzione, gli agenti vedono l’indirizzo email fornito dagli utenti finali non autenticati nella cronologia di conversazione, ma non vedranno un’identità email allegata all’utente. Se un agente deve contattare un utente non autenticato tramite email, deve aggiungere manualmente l’identità email a quel record utente.
Utilizzo di email verificate e non verificate
oltre alle identità email per gli utenti autenticati con indirizzi email verificati visibili nei profili utente, al profilo dell’utente vengono aggiunti anche gli indirizzi email non verificati forniti dagli utenti tramite i flussi agenti AI.
Questa opzione è meno sicura perché gli utenti malintenzionati potrebbero comunque tentare attacchi di impersonificazione. Tuttavia, gli agenti possono esaminare i profili utente per determinare se un indirizzo email è verificato. Gli indirizzi email non verificati sono chiaramente contrassegnati nello Spazio di lavoro agente. Quando gli agenti devono inviare follow-up tramite email, possono essere invitati a verificare gli utenti finali con domande di sicurezza per garantire che l’utente finale sia realmente chi dice di essere.
Ordine evento | Evento | Identità email risultante |
---|---|---|
1 | Un utente non autenticato fornisce un’email raccolta tramite modulo. Ad esempio, alice@esempio.org | Zendesk crea un nuovo utente non autenticato (id: 12345) con l’identità email non verificata (alice@esempio.org). |
2 | A un utente autenticato viene rilasciato un JWT con le seguenti attestazioni:
|
Zendesk crea un nuovo utente autenticato (id: 22345) con un’identità email verificata (alice@esempio.org). L’utente non autenticato (id: 12345) perde la propria identità email non verificata perché è stata sostituita da un’identità verificata. |
Rivendicazione da parte degli utenti non autenticati di email verificate (non consigliato)
A differenza delle altre opzioni di identità email, questa impostazione consente agli utenti di assumere l’identità di utenti autenticati semplicemente fornendo l’indirizzo email di tale utente quando richiesto. Quando l’opzione è selezionata, le email verificate non sostituiscono le email non verificate.
Questa opzione è la meno sicura e la più suscettibile agli attacchi di impersonificazione. Tuttavia, gli agenti coscienziosi possono comunque rilevare potenziali impostori in questo scenario cercando l'icona del segno di spunta verde nel profilo dell'utente e accanto ai suoi messaggi, che indica se l'utente è autenticato.
Quando selezioni questa opzione, lo stato di verifica delle identità email raccolte dai canali di messaggistica non è più affidabile perché un impostore può presentarsi dopo che un utente è stato autenticato e prendere possesso del suo stato email in una successiva interazione di messaggistica. Ciò significa che gli attacchi di impersonificazione hanno maggiori probabilità di successo e gli agenti hanno mezzi limitati per sapere se l’utente finale è chi afferma di essere. In ogni caso, le identità email verificate sostituiscono le identità email non verificate e l'identità email viene rimossa dal record utente dell'impostore.
Emissione di JWT con indirizzi email
- external_id: (Obbligatorio) questa è la stringa alfanumerica univoca che può essere usata per identificare ciascun utente. Consulta Selezione dell’ID esterno da usare nei JWT emessi agli utenti.
-
scope: (Obbligatorio) ambito di accesso del chiamante. L’unico valore valido è
user
. - name: (Facoltativo) il nome dell’utente. L’inclusione del nome nel payload JWT consente a Zendesk di visualizzare il nome dell’utente nello spazio di lavoro agente e consente agli agenti di fornire un’assistenza più personalizzata.
-
email: (Obbligatorio) l’indirizzo email dell’utente che ha effettuato l’accesso. Deve essere univoco per l’utente.
Imposta l’indirizzo email principale dell’utente nello Spazio di lavoro agente. L’inclusione di indirizzi email secondari nei JWT non è supportata.
-
email_verified: (Facoltativo) indica se l’utente finale in questione ha dimostrato la titolarità dell’indirizzo email. Se vuoi che gli utenti finali dispongano di identità email verificate, i JWT che emetti devono contenere entrambi i reclami
email
e"email_verified": true
.
{
"external_id": "12345678",
"email": "janes@soap.com",
"email_verified": true,
"name": "Jane Soap",
"scope": "user"
}
Risoluzione dei conflitti tra ID esterni ed email nei JWT
Zendesk usa l'ID esterno come identificatore principale, e gli indirizzi email vengono usati solo se non vengono trovate corrispondenze per l'ID esterno.
È meglio implementare l’autenticazione della messaggistica tenendo presente la prevenzione dei conflitti. Ad esempio, scegli gli ID esterni e le impostazioni email in Zendesk per assicurarti che non possano entrare in conflitto. Tuttavia, se un indirizzo email presentato in un JWT è già associato a un ID esterno diverso, Zendesk rifiuta il JWT e il tentativo di accesso dell’utente finale non va a buon fine. In questo caso, la conversazione inizia con l’utente in uno stato non autenticato.
- Aggiorna il JWT per usare un altro valore
external_id
o indirizzoemail
.OPPURE
- Elimina l’utente con il valore
external_id
in conflitto, in modo che possa essere usato da un altro utente finale. Consulta Eliminazione di un utente nell’API Sunshine Conversations.
0 commenti