15.10 Applicazioni esterne
Questa funzione di vtenext, che si trova in Impostazioni > Applicazioni esterne, permette di configurare il crm come un Server per OAuth2 e quindi far collegare altre applicazioni direttamente a vtenext.
Schermata di configurazione per le Applicazioni esterne
Quindi come funziona esattamente? L'OAuth2 mette a disposizione dei flussi di autorizzazione che permettono alle applicazioni esterne, di accedere al crm tramite dei token ed inviare delle richieste in modo che il crm eroghi i dati richiesti e li invii all'applicazione richiedente. Vediamo una immagine esplicativa:
Questo flusso raffigurato, è denominato Client Credentials. Ci sono tre parti coinvolte:
- Applicazione (per esempio un Gestionale)
- Il Server di Autorizzazione (spesso equiparabile al punto 3)
- Il Server che contiene di Dati (nel nostro caso vtenext)
In pratica, l'Applicazione (che potrebbe essere un Gestionale che deve leggere le Fatture su vtenext), chiede al Server di Autorizzazione una chiave di accesso (Cliend ID e Secret Key) per poter accedere al Server che contiene i Dati. Quindi nel nostro esempio, vtenext, genera la coppia di chiavi (Cliend ID e Secret Key) e le passa all'applicazione la quale le usa per richiedere l'accesso al Server di Autorizzazione (che è sempre vtenext), il quale fornirà all'Applicazione stessa un Token, che permetterà di leggere direttamente le Fatture sul crm.
Il vantaggio è che l'access Token ha una durata limitata, è revocabile lato server e quindi è possibile consentire l'accesso alle app in maniera controllata e, soprattutto, non vengono divulgate o condivise password di sistema. Naturalmente allo scadere del Token, sarà necessario crearne uno di nuovo ripetendo la procedura sopra menzionata.
Il secondo tipo di flusso, è denominato OAuth2 Authorization Code. Questo flusso coinvolge un elemento in più, che identificheremo come Utente.
Nell'esempio, diremo che l'Applicazione che si vuole connettere a vtenext questa volta, è Facebook che necessita di leggere i Lead presenti in vtenext. Facebook però è collegato ad un Utente, che è il richiedente di questi dati, quindi è l'utente che in realtà sta chiedendo a Facebook di connettersi a vtenext per leggere i Lead. L'Utente in questo caso ha anche un account in vtenext, quindi l'obiettivo, è che l'utente da il permesso a Facebook di leggere i Lead su vtenext, quindi sarà fatta un'autenticazione da parte dell'utente su vte, il quale risponderà a Facebook con un OAuth2 Authorization Code. Facebook userà quell'Auth Code per richiedere all'Authorization Server l'Access Toke temporaneo e leggere finalmente i dati nel Server.
Quindi Facebook ha avuto accesso ai Lead di vtenext, non ha in pancia le credenziali dell'utente, e dopo circa un'ora scadranno e quindi l'accesso ai dati sensibili resteranno al sicuro.
Configurazione
Cliccare sul pulsante AGGIUNGI sulla destra
Si accede ad una schermata con un Wizard che ci aiuta a determinare il flusso che vogliamo configurare. Come prima cosa impostare il Tipo di Client e si potrà scegliere tra:
- Web or Mobile application se abbiamo bisogno di un accesso tramite login con utente
- Service account se l'accesso avviene in background tra due server