Non c'è davvero una soluzione efficace. Se il tuo JSON è accessibile attraverso il browser, allora è ugualmente accessibile ad altri siti. Al server Web una richiesta proveniente da un browser o da un altro server è praticamente indistinguibile a parte le intestazioni. Come ha commentato ILMV, i referrer (e altre intestazioni) possono essere falsificati. Dopo tutto, sono auto-segnalati.
La sicurezza non è mai perfetta. Una persona sufficientemente determinata può superare qualsiasi misura di sicurezza in atto, ma l'obiettivo della sicurezza è quello di creare un deterrente sufficientemente alto che i laici e la maggior parte delle persone sarebbero dissuasi dal mettere il tempo e le risorse necessarie per compromettere la sicurezza.
Con questo pensiero in mente, è possibile creare una barriera di accesso abbastanza elevata che altri siti probabilmente non si preoccuperebbero di fare richieste con le barriere di entrata in vigore. È possibile generare token monouso che sono necessari per catturare i dati JSON. Una volta che un token viene utilizzato per catturare i dati JSON, il token viene successivamente invalidato. Per recuperare un token, la pagina web deve essere richiesta con un token incorporato nella pagina in javascript che viene poi inserito nella chiamata ajax per i dati JSON. Combina questo con i token che scadono nel tempo e l'offuscamento sufficiente nella javascript e hai creato una barriera sufficientemente alta.
Basta ricordare, questo non è impossibile da aggirare. Un altro sito web potrebbe estrarre il token dal javascript e intercettare la chiamata ajax e dirottare i dati su più punti.
anche '' REFERRER può essere falsificato –