Hola,
Estoy desarrollando una aplicación que, básicamente, el cliente carga un script en su página web (via script tag) el cual cuando se ejecuta hace unas comprobaciones y luego envía esta información a un servidor que ofrece una API Rest.
Al final, creo que es muy parecido a como trabaja un Google Tag Manager o este tipo de scripts que se cargan en las páginas y envian información a endpoints de terceros, pero no sé cómo lo hacen ellos para verificar que realmente los datos que te llegan, son de quien dicen ser.
Lo único que se me ocurre es validar el "origin" de la petición contra una "whitelist" en mi servidor, pero no sé si incluso en origen de una request puede ser falseado (interpreto que sí), por lo que gestionar una whitelist para al final no conseguir un buen grado de seguridad me parece mucho trabajo.
Evidentemente, al ser un script en JS no puedo poner tokens o claves porque estarían a la vista de todos.
Alguna idea de cómo lo hacen este tipo de servicios para que no les entren peticiones ilegítimas?
Muchas gracias!