Ogni chiave ha un elenco facoltativo di origini consentite: i domini (hostname) da cui è accettato
usarla quando la richiesta arriva con l’intestazione Origin (cioè, da un browser). Il formato è
l’hostname nudo, senza https:// né percorso — per esempio miaapp.miodominio.it, mai
https://miaapp.miodominio.it/.
Vuoto = nessuna restrizione di origine (il valore predefinito, e quello che la colonna «Origini consentite» mostra come «Senza restrizioni»): la chiave funziona da qualsiasi posto. Limitare l’origine ha senso quando la chiave verrà usata da un frontend nel browser (per esempio, un widget proprio che chiama l’API con questa chiave incorporata) e vuoi ridurre il danno se quella chiave venisse trapelata — limita da quali domini web può essere usata.
Nota — Non è una difesa contro tutto
Il controllo dell’origine si applica solo quando la richiesta porta l’intestazione
Origin(tipico di un browser). Una chiamata server-server — l’uso principale di una chiave API — di solito non invia quell’intestazione, quindi passa comunque anche se l’elenco di origini è limitato. È uno strato contro l’abuso da browser, non il segreto principale che protegge la chiave: quello resta la chiave stessa.
Il modulo «Nuova chiave» (paragrafo 4) porta il campo «Origini consentite» già compilato con * — non
serve toccarlo se ti va bene «senza restrizioni». Per limitarlo, sostituiscilo con un elenco di hostname
separati da virgole (per esempio miosito.it, app.miosito.it — ognuno copre anche i suoi sottodomini),
senza https:// né barre; il limite è di 50 origini per chiave. Un valore che non è un hostname valido
(con https://, con percorso, con spazi…) dà un errore immediato nel modulo stesso, prima di inviare il
codice.
