Vorrei creare un widget javascript che gli sviluppatori di terze parti inseriscono nella loro pagina aggiungendo:
<script type="text/javascript" src="https://test.com/widget.js" async></script>
Lo script inietta il widget del modulo di raccolta e-mail in un tag div sul sito web dello sviluppatore. Quando un utente invia il modulo, invia una richiesta POST a un endpoint ospitato sul nostro server. Utilizziamo recaptcha per convalidare tutte le richieste.
Ci sono alcune implicazioni di sicurezza:
- Un cattivo attore può inviare spam all'endpoint con indirizzi email errati.
- Poiché il widget è incorporato nella pagina dello sviluppatore, possono utilizzare il widget per scopi illeciti e avere il nostro nome su di esso.
Come posso risolvere i problemi di sicurezza che derivano da un widget incorporabile? Tutte le richieste passano attraverso HTTPS. Recaptcha è usato per aiutare contro spam / abuso. Forse posso usare un'intestazione di codice sito / referrer per convalidare che la richiesta proviene da un sito Web attendibile?
Un'altra opzione è usare un iframe ospitato sul mio sito Web per mostrare il widget.