Token di accesso
I token di accesso sono la chiave per le API Salesforce. Quando un client completa correttamente un flusso di autorizzazione, sia che si tratti di un flusso OAuth 2.0 standard o di un flusso Headless Identity, Salesforce emette un token di accesso che può essere utilizzato per accedere ai dati Salesforce protetti. Salesforce supporta due tipi di token di accesso: token opachi e token di accesso basati su JWT. Ciascun tipo ha meriti e limitazioni specifici in base al caso d'uso.
Versioni (Edition) richieste
| Disponibile in: Salesforce Classic e Lightning Experience |
| Disponibile in tutte le versioni. |
Token di accesso opachi
Salesforce in genere emette token di accesso opachi durante i flussi di autorizzazione. La caratteristica di questi token è che sono difficili da leggere senza ulteriore assistenza. Dal punto di vista delle app client, un token opaco è una stringa incomprensibile di caratteri casuali. i client possono capire e convalidare i dati rappresentati dal token solo se richiamano un endpoint Salesforce. Di norma, per ottenere informazioni su un token di accesso opaco viene chiamato l'endpoint di introspezione o l'endpoint info utente Salesforce.
Token di accesso basati su JWT
I token di accesso basati su JWT sono meno tradizionali, ma questo non significa che siano meno efficaci. Un token di accesso JWT non è una stringa opaca, ma è formattato come oggetto JSON con tutte le informazioni necessarie per convalidarlo. I token di accesso basati su JWT si possono analizzare localmente, senza chiamare un endpoint Salesforce.
Quando utilizzare ciascun tipo di token
Se si interagisce con una sola istanza di Salesforce, i token opachi sono più appropriati. Consentono di effettuare facilmente chiamate agli endpoint Salesforce senza rallentare le prestazioni. È possibile utilizzare token opachi anche per accedere all'interfaccia utente di Salesforce, cosa che non è possibile fare con i token di accesso basati su JWT.
Per confronto, i token di accesso basati su JWT sono più adatti ai casi d'uso in cui è presente una vasta gamma di servizi di terzi e si necessita di un token Salesforce che funzioni con tutti. Poiché è possibile analizzare i token localmente, è possibile evitare più callout ripetuti agli endpoint Salesforce, che possono rallentare le prestazioni quando si utilizza un intervallo di API.
Confronto dei tipi di token
Oltre alla principale distinzione tra i tipi di token, la seguente tabella descrive le principali differenze funzionali tra token di accesso opachi e basati su JWT. Prima di utilizzare uno dei due tipi, assicurarsi di conoscerne le differenze e l'impatto.
| Funzionalità | Token opaco | Token basato su JWT |
|---|---|---|
| Convalida e introspezione | Può essere convalidato e analizzato solo con una chiamata a un endpoint Salesforce. Di conseguenza, è ideale per i casi d'uso con una sola istanza Salesforce ma inadatto ai casi d'uso con più servizi. | Può essere convalidato e analizzato localmente, il che lo rende più compatibile con i servizi esterni |
| Accesso all'interfaccia utente |
|
|
| Timeout | Ogni volta che si utilizza il token, la sua validità viene prorogata. | Il valore di timeout è fisso e non può essere esteso. |
| Disattivazione utente | Se l'utente che possiede il token è disattivato, il token smette immediatamente di funzionare perché qualsiasi chiamata agli endpoint Salesforce non riesce. | Se un utente viene disattivato, il token è comunque tecnicamente valido fino al timeout. |
| Abilitazione | Abilitato per impostazione predefinita | Deve essere abilitato nell'app client esterna o nell'app connessa |
| Flusso Utente guest headless e ID visitatore univoco (UVID) | Non supportato | Obbligatorio per utilizzare il flusso utente guest e l'UVID |
- Token di accesso basati su JWT
Salesforce supporta due tipi di token di accesso: token opachi e token di accesso basati su JWT. Un token di accesso opaco è formattato come stringa che non può essere decodificata a meno che non si chiami l'endpoint Informazioni utente Salesforce. Un token di accesso basato su JWT ha il formato di un oggetto JSON contenente tutte le informazioni necessarie per autorizzare un'applicazione. Questo formato trasparente semplifica l'utilizzo dei token di accesso basati su JWT per i servizi creati all'esterno della piattaforma Salesforce. È possibile analizzare e convalidare facilmente i token di accesso basati su JWT localmente nel servizio esterno alla piattaforma, senza chiamare un endpoint Salesforce. Con l'introspezione dei token in locale è possibile migliorare le prestazioni e l'efficienza dei flussi di autorizzazione. - Emissione di token di accesso basati su JWT
Abilitare un'applicazione client esterna Salesforce o un'applicazione connessa perché generi token di accesso basati su JSON Web Token (JWT) anziché token opachi. A differenza dei token opachi, i token di accesso basati su JWT hanno un formato trasparente e possono essere analizzati senza chiamare un endpoint Salesforce. Questa funzionalità consente di utilizzarli facilmente nei casi in cui si chiamano più sistemi esterni. - Revoca di tutti i token di accesso basati su token JWT
Se necessario, si possono revocare tutti i token di accesso basati su token JWT generati da tutte le applicazioni client esterne e connesse. La revoca dei token di accesso basati su JWT invalida le relative chiavi di firma, rendendo i token inutilizzabili. - Revoca dei token OAuth a livello di programmazione
Revocare un token OAuth per impedire a un client di accedere ai dati Salesforce o se non si è certi che il client interrompa da solo l'accesso.

