Per accedere a un programma o a un’ap­pli­ca­zio­ne tramite un’in­ter­fac­cia di pro­gram­ma­zio­ne, è ne­ces­sa­ria una chiave API. La chiave API è una chiave unica co­sti­tui­ta da una stringa di caratteri segreti che autorizza l’accesso. Grazie a essa, l’API riconosce chi ha l’au­to­riz­za­zio­ne e protegge i programmi e i sistemi da accessi non con­sen­ti­ti. È opportuno uti­liz­za­re una chiave API separata per ogni progetto e ap­pli­ca­zio­ne.

Chiave API: de­fi­ni­zio­ne

Le in­ter­fac­ce di pro­gram­ma­zio­ne, meglio note come API (Ap­pli­ca­tion Pro­gram­ming Interface), vengono uti­liz­za­te per collegare e scambiare fun­zio­na­li­tà tra due programmi. Le API con­sen­to­no ad ap­pli­ca­zio­ni, app o progetti la pos­si­bi­li­tà di in­te­ra­gi­re con altri servizi o programmi. At­tra­ver­so esse, chi si occupa di pro­gram­ma­zio­ne può con­trol­la­re e am­mi­ni­stra­re le au­to­riz­za­zio­ni per le richieste tra le API e i formati dei dati uti­liz­za­ti.

Le chiavi API, in inglese “API key”, sono chiavi di au­ten­ti­ca­zio­ne uniche in grado di con­trol­la­re gli accessi alle API. Queste chiavi possono essere richieste, ad esempio, tramite gli operatori API cor­ri­spon­den­ti. Se l’utente o l’ap­pli­ca­zio­ne dispone della chiave adeguata, il server API concede l’accesso.

Come funziona una chiave API?

Le chiavi API fun­zio­na­no in modo simile alle password. Non appena un’API “chiama” un’altra API e richiede l’accesso, l’au­to­riz­za­zio­ne all’accesso viene concessa tramite lo scambio della chiave API. La chiave API viene assegnata al servizio o programma chiamante e trasmessa al server API. Se il server API conferma l’au­ten­ti­ci­tà della chiave API, viene concesso l’accesso al programma o a de­ter­mi­na­te fun­zio­na­li­tà. Inoltre, le chiavi API possono essere uti­liz­za­te per eseguire azioni tra­sver­sa­li alle ap­pli­ca­zio­ni tramite le in­ter­fac­ce API.

Le regole di accesso, i formati dei dati e l’ambito delle azioni sono definiti dagli operatori API. In questo modo, è possibile de­ter­mi­na­re esat­ta­men­te quale tipo di utente o progetto riceve i permessi di accesso e quali azioni sono con­sen­ti­te at­tra­ver­so le in­ter­fac­ce di pro­gram­ma­zio­ne. Le chiavi API possono anche essere integrate di­ret­ta­men­te in linguaggi di pro­gram­ma­zio­ne come Ja­va­Script o Python. In questo caso l’utente o il servizio ri­chie­de­rà la chiave in Ja­va­Script al server API cor­ri­spon­den­te.

A che cosa servono le chiavi API?

Le chiavi API sono uti­liz­za­te prin­ci­pal­men­te per le seguenti funzioni:

  • Iden­ti­fi­ca­zio­ne: una chiave API è in grado di iden­ti­fi­ca­re le API, i progetti o i servizi “chiamanti” per il server API. Ciò consente di tenere traccia di chi ha richiesto l’accesso, chi lo ha ricevuto o a chi è stato negato.
  • Au­ten­ti­ca­zio­ne: lo scambio della chiave API consente di ve­ri­fi­ca­re se i client sono ef­fet­ti­va­men­te au­to­riz­za­ti ad accedere. Inoltre, viene ve­ri­fi­ca­to se l’API richiesta è attiva.
  • Au­to­riz­za­zio­ne: una volta iden­ti­fi­ca­to il progetto o il servizio, le regole di accesso del server API de­ter­mi­na­no in che misura concedere l’accesso.

Come ri­chie­de­re una chiave API

Le modalità di richiesta o di as­se­gna­zio­ne delle chiavi API dipendono dall’API a cui si desidera con­net­ter­si. Le regole di accesso variano a seconda del tipo di operatore API. Di norma, tuttavia, l’as­se­gna­zio­ne delle chiavi API segue questo schema:

  • Si richiama la pagina del provider tramite la cui API deve avvenire l’accesso e si accede alla pagina relativa alle attività di sviluppo.
  • Si se­le­zio­na­no le chiavi API per i progetti esistenti o per la creazione di nuovi progetti.
  • Per una migliore as­se­gna­zio­ne, è possibile dare un nome alla chiave API.
  • Una volta creata e assegnata la chiave API, questa può essere inserita nel sito web o nell’ap­pli­ca­zio­ne per un suc­ces­si­vo accesso e tra­sfe­ri­men­to di dati. A questo punto, in caso di ulteriori chiamate, il server API è in grado di ri­co­no­sce­re l’ap­pli­ca­zio­ne chiamante tramite la chiave API.
Consiglio

Scopri come ri­chie­de­re una chiave API per ap­pli­ca­zio­ni come ChatGPT, Google Maps o YouTube. Ti basta dare un’occhiata alle nostre guide sui seguenti argomenti:

Vantaggi delle chiavi API

I vantaggi delle chiavi API ri­guar­da­no l’au­ten­ti­ca­zio­ne semplice e veloce dei permessi di accesso per l’utente, il servizio o il programma. Ciò è par­ti­co­lar­men­te vero quando si collegano ap­pli­ca­zio­ni diverse per scambiare dati o eseguire azioni tra­sver­sa­li ai programmi. Le chiavi di au­ten­ti­ca­zio­ne offrono vantaggi anche a chi programma o crea un’ap­pli­ca­zio­ne e accede a un programma tramite API. I server API possono uti­liz­za­re chiavi simili a password per impedire l’accesso al sistema da parte di persone non au­to­riz­za­te.

Le seguenti funzioni for­ni­sco­no chiavi API per processi di au­ten­ti­ca­zio­ne più complessi ed efficaci:

  • Re­gi­stra­zio­ne di API, programmi, servizi o progetti che de­si­de­ra­no accedere a spe­ci­fi­che API.
  • I server API e gli operatori API de­fi­ni­sco­no i permessi di accesso per de­ter­mi­na­re il tipo di azioni e di accesso che le API possono au­to­riz­za­re.
  • Pa­no­ra­mi­ca degli accessi pre­ce­den­ti, sia con­sen­ti­ti che negati.
  • Le chiavi API for­ni­sco­no una sicurezza ag­giun­ti­va in quanto chiavi uniche, monouso e segrete.
  • Abi­li­ta­zio­ne del blocco del traffico di rete non iden­ti­fi­ca­bi­le.
  • Può limitare il numero di chiamate a un’API e quindi con­te­ner­ne il carico di lavoro.
  • È possibile filtrare meglio i tipi di accesso o i modelli specifici e as­se­gnar­li a de­ter­mi­na­te chiavi API.

Che ruolo hanno le chiavi API nell’ambito della sicurezza?

Le chiavi API da sole non sono una misura di sicurezza suf­fi­cien­te, ma for­ni­sco­no piuttosto un livello ag­giun­ti­vo di sicurezza dell’accesso. Poiché le chiavi API sono di proprietà dei client, in modo simile alle password, esiste il rischio che possano essere rubate da hacker. Come nel caso di una password rubata, le chiavi API rubate e non crit­to­gra­fa­te possono con­sen­ti­re ra­pi­da­men­te l’accesso di terze parti a un sistema. Le chiavi API di solito rimangono visibili nei log dei server, per­met­ten­do alla cri­mi­na­li­tà in­for­ma­ti­ca di accedere al sistema in maniera ap­pa­ren­te­men­te au­to­riz­za­ta. Le chiavi API vengono spesso uti­liz­za­te in attacchi in­for­ma­ti­ci, come attacchi DDoS, attacchi man in the middle e injection.

Con le chiavi API è ne­ces­sa­rio tenere presente i seguenti aspetti ri­guar­dan­ti la sicurezza:

  • Le chiavi API non iden­ti­fi­ca­no l’utente specifico, ma solo le API o i programmi che ri­chie­do­no l’accesso.
  • A dif­fe­ren­za delle password, le chiavi API di solito non vengono me­mo­riz­za­te in modo criptato lato client e rimangono visibili nei log del server.
  • Le chiavi API, così come le password non sicure, possono essere rubate per accedere a un’ap­pli­ca­zio­ne.
API IONOS per svi­lup­pa­to­ri
Gestisci i tuoi prodotti di hosting tramite la nostra potente API
  • Gestione record DNS
  • Am­mi­ni­stra­zio­ne SSL
  • Do­cu­men­ta­zio­ne API

Come uti­liz­za­re le chiavi API in modo sicuro

Poiché i programmi scambiano dati sensibili tramite API e concedono l’accesso alle ap­pli­ca­zio­ni interne, è im­por­tan­te disporre di una sicurezza API af­fi­da­bi­le. Le misure di sicurezza che do­vreb­be­ro essere adattate per aumentare la pro­te­zio­ne delle API includono:

  • L’accesso alle chiavi API me­mo­riz­za­te lato client deve rimanere limitato e protetto.
  • Le chiavi API non più ne­ces­sa­rie devono essere eliminate.
  • È ne­ces­sa­rio criptare le chiavi API me­mo­riz­za­te come cre­den­zia­li a riposo per impedirne il furto.
  • Le chiavi API non devono essere integrate nel codice in modo chia­ra­men­te leggibile o me­mo­riz­za­te nella struttura sorgente.
  • L’uso e l’ap­pli­ca­zio­ne delle chiavi API devono essere mo­ni­to­ra­ti, ad esempio se chi si occupa della pro­gram­ma­zio­ne utilizza API REST per OpenAPI.

Chiavi API e pro­te­zio­ne dei dati

Un altro aspetto im­por­tan­te delle chiavi API è la pro­te­zio­ne dei dati. La questione inizia già quando si installa una nuova ap­pli­ca­zio­ne sul telefono cellulare che richiede permessi ag­giun­ti­vi. A volte, non è possibile con­trol­la­re esat­ta­men­te quali au­to­riz­za­zio­ni vengono richieste da un’ap­pli­ca­zio­ne. Nel caso di servizi di­scu­ti­bi­li, si potrebbe in­vo­lon­ta­ria­men­te con­sen­ti­re l’accesso a tutti i dati di Facebook, alle foto o alla memoria del di­spo­si­ti­vo. Questo potrebbe per­met­te­re all’ap­pli­ca­zio­ne di vi­sua­liz­za­re ed entrare in possesso dei tuoi dati sensibili o, in casi estremi, persino di prendere il controllo dell’intero sistema. Pertanto, per evitare un uso improprio dei tuoi dati, as­si­cu­ra­ti di con­sen­ti­re l’accesso tramite chiave API solo alle app at­ten­di­bi­li.

Vai al menu prin­ci­pa­le