Estoy trabajando en un pequeño servicio web que proporciona alguna funcionalidad que se puede incrustar en una página web con un iframe. Como este es un servicio basado en suscripción, me gustaría poder administrar quién puede y quién no puede acceder a la funcionalidad en cuestión a través de las claves API.
Entiendo que un enfoque popular es incrustar una clave de API en el recurso, por ejemplo:
<iframe src='http://service.com/API_KEY_GOES_HERE/' height='750' width='640'>
Cuando el servidor recibe una solicitud del cliente, realiza una búsqueda en el remitente para asegurarse de que el sitio que solicita el recurso tiene permiso para acceder a él.
Mi pregunta es la siguiente: ¿no se pueden falsificar las referencias y esto no haría trivial eludir este sistema? ¿Qué me estoy perdiendo?