Sono sicuro che questa domanda è stata fatta prima, ma non riesco a trovare un thread che lo spieghi in un modo che abbia senso per me.Come "Proteggere" le chiamate AJAX?
Sto creando un plug-in bookmarklet/browser scritto in Javascript. Questo script effettua chiamate a un'API, inviando in modo efficace le informazioni sull'attività degli utenti da un sito a un altro. (pensa, facendo un tweet quando un utente pubblica uno stato di Facebook)
Questo sito carica javascript direttamente nel sito. L'API che sto utilizzando richiede che venga generato un hash MD5 utilizzando un codice segreto API. Questo non è un problema, sto facendo una chiamata ajax a uno script PHP che sto ospitando altrove, che restituisce la stringa corretta.
Problema è che non voglio che l'utente sia in grado di effettuare una chiamata a questo stesso script per generare le proprie stringhe, con il segreto incorporato per abusare dell'API. È a loro modo che posso consentire chiamate a questa API solo quando voglio realizzarle?
O forse mi sto avvicinando a questo dalla direzione sbagliata.
Gli attacchi di replica possono essere protetti contro ... ma si presume che si tratti di un replay e non di un'operazione [inizialmente] consentita. –
@pst Se è possibile farlo in JavaScript, anche un utente malintenzionato può farlo in JavaScript. – rook