Vedo questa parola in quasi tutte le applicazioni cross-service in questi giorni.
Cos'è esattamente una chiave API e quali sono i suoi usi?
Inoltre, qual è la differenza tra chiavi API pubbliche e private.
Vedo questa parola in quasi tutte le applicazioni cross-service in questi giorni.
Cos'è esattamente una chiave API e quali sono i suoi usi?
Inoltre, qual è la differenza tra chiavi API pubbliche e private.
Risposte:
Per che cosa viene utilizzata "esattamente" una chiave API dipende molto da chi la emette e per quali servizi viene utilizzata. In generale, tuttavia, una chiave API è il nome dato a una qualche forma di token segreto che viene inviato insieme alle richieste del servizio web (o simili) per identificare l'origine della richiesta. La chiave può essere inclusa in alcuni digest del contenuto della richiesta per verificarne ulteriormente l'origine e per prevenire la manomissione dei valori.
In genere, se è possibile identificare positivamente l'origine di una richiesta, questa agisce come una forma di autenticazione, che può portare al controllo dell'accesso. Ad esempio, puoi limitare l'accesso a determinate azioni API in base a chi esegue la richiesta. Per le aziende che guadagnano dalla vendita di tali servizi, è anche un modo per tracciare chi sta utilizzando la cosa per scopi di fatturazione. Inoltre, bloccando una chiave, è possibile prevenire parzialmente gli abusi in caso di volumi di richieste troppo elevati.
In generale, se si dispone sia di una chiave API pubblica che di una privata, ciò suggerisce che le chiavi sono esse stesse una tradizionale coppia di chiavi pubblica / privata utilizzata in qualche forma di crittografia asimmetrica o firma digitale correlata. Si tratta di tecniche più sicure per identificare positivamente l'origine di una richiesta e, inoltre, per proteggere il contenuto della richiesta dallo snooping (oltre alla manomissione).
Molto in generale:
Una chiave API ti identifica semplicemente.
Se esiste una distinzione tra pubblico e privato, la chiave pubblica è quella che puoi distribuire agli altri, per consentire loro di ottenere un sottoinsieme di informazioni su di te dall'API. La chiave privata è solo per il tuo uso e fornisce l'accesso a tutti i tuoi dati.
Sembra che molte persone utilizzino le chiavi API come soluzione di sicurezza. La linea di fondo è: non trattare mai le chiavi API come segrete , non lo è. Su https o no, chiunque può leggere la richiesta può vedere la chiave API e può effettuare qualsiasi chiamata desideri. Una chiave API dovrebbe essere un identificatore "utente" in quanto non è una soluzione di sicurezza completa anche se utilizzata con ssl.
La descrizione migliore si trova nel collegamento di Eugene Osovetsky a: Quando si lavora con la maggior parte delle API, perché richiedono due tipi di autenticazione, vale a dire una chiave e un segreto? Oppure controlla http://nordicapis.com/why-api-keys-are-not-enough/
Una chiave API è un valore univoco assegnato a un utente di questo servizio quando viene accettato come utente del servizio.
Il servizio conserva tutte le chiavi emesse e le controlla ad ogni richiesta.
Esaminando la chiave fornita su richiesta, un servizio verifica se è una chiave valida per decidere se concedere o meno l'accesso a un utente.
Pensala in questo modo, la "chiave API pubblica" è simile a un nome utente che il tuo database utilizza come accesso a un server di verifica. La "Chiave API privata" sarebbe quindi simile alla password. Dal sito / database che utilizza questo metodo, la sicurezza viene mantenuta sul server di terze parti / di verifica al fine di autenticare la richiesta di pubblicazione o modifica del sito / database.
La stringa API è solo l'URL del login per il tuo sito / database per contattare il server di verifica.