System integration ed APIs: il modello sicuro di scambio delle informazioni

triangolo

Security API: mettere in sicurezza le Application Programming Interface

Progettare l’integrazione di sistemi IT aziendali significa valorizzare il riutilizzo degli asset aziendali già esistenti, e al contempo rendere fluida la creazione e il consumo di nuove API a un bacino di applicazioni e di utenti.

A sua volta, creare un API significa definire un contratto di scambio tra  client e server, e non rispettare tale contratto in toto, o non definire regole sufficientemente esaustive, significa esporre i sistemi aziendali al rischio di attacchi informatici.

Gartner prevede che, entro il 2022, gli abusi delle API saranno il vettore di attacco più frequente, e sebbene le determinanti di un attacco siano molte, la motivazione è sempre la stessa: recuperare le informazioni custodite nell’applicazione.

Quindi, Il rischio di subire un attacco cresce con il valore delle informazioni custodite nel sistema.

Un API, indipendentemente dal contesto in cui è calata, è sempre e comunque uno snodo di comunicazione tra due o più applicativi, è garantito che un API dialogherà e entrerà a contatto con le logiche interne di un sistema , per questo è importante metterla in sicurezza.

Ma cosa distingue un API “sicura” dalle altre? Le parole d’ordine sono riservatezza e vincoli: un API non deve rivelare né richiedere altro che non sia il contenuto atteso, sia per il chiamante che per il chiamato, deve in tal senso definire dei vincoli di contenuto, per questo si parla di “contratti di scambio”.

Non deve tenere memoria di cosa è stato inserito, non chiede informazioni che non riguardano il pacchetto da consegnare, ed è utilizzabile soltanto da una platea autorizzata e registrata di utenti.

Per sventare eventuali attacchi alle API, è critico che tali vincoli siano messi in piedi, e per fare questo, è necessario che ci sia una piattaforma adibita a proteggere l’intero ciclo di vita dell’integrazione di sistemi.

Appoggiarsi a una piattaforma unica sicuramente abilita l’organizzazione al riutilizzo delle API,  tuttavia, la riusabilità non è una proprietà unica dei servizi: anche le protezioni diventano riutilizzabili.

Per garantire questo doppio vantaggio, Omnia si appoggia alla piattaforma di integrazione Anypoint Platform, soluzione leader del Full API lifecycle management.

La piattaforma permette di gestire appieno il ciclo di vita di un API: design, deploy, consumo e evolutiva, e nel farlo, mette la sicurezza dei suoi utenti al primo posto: agisce come validatore, gateway, authenticator e throttler.

Le API, una volta definite, sono calate all’interno di un ambiente di Runtime proprietario, che ne tutela l’utilizzo applicando tutte le protezioni definite a livello di piattaforma: Mulesoft ESB.

Mulesoft espone le API tramite HTTPS, il che garantisce l’immodificabilità del messaggio, ma la protezione è indipendente dal protocollo e dal sistema: Mulesoft può effettuare una connessione sicura a ogni sistema aziendale, che sia un database, un server Mail, un sistema operativo o un’applicazione web non fa’ differenza.

Un altro ruolo dell’ESB Mulesoft è quello di provider OAuth2 ,  può quindi pubblicare dei token per autorizzare e limitare gli accessi a quella sola platea di utenti munita di credenziali valide.

L’OAuth2 è un sistema di autorizzazione privo di tracce, utilizzarlo non comporta rischi per gli utenti, e Mulesoft ne centralizza il controllo, permette quindi una fruizione dei servizi sicura e svincolata da interferenze malevole.

Le runtime Mulesoft ESB comunicano costantemente con due sistemi di Anypoint Platform: Anypoint API Manager e Anypoint Security , allo scopo di definire delle policy di consumo federate e garantire la protezione dei dati sensibili.