Estoy desarrollando un servicio con una API REST asociada para el uso de los clientes (empresas que tienen sus propios sitios web). En otras palabras, uno de mis clientes normalmente realiza la llamada REST directamente desde su sitio web (es decir, la solicitud se origina en uno de los navegadores de sus clientes).
Por supuesto, puedo proporcionar un token de acceso para que mis clientes puedan acceder, pero, por definición, tendrá que publicarse públicamente en su sitio, lo que significa que cualquiera tendrá acceso a él.
La situación parece análoga al uso de las claves API de Google Maps, por ejemplo. A menos que me equivoque, si inserto un mapa en mi página, mi clave API debe ser pública. Que yo sepa, las únicas protecciones contra otras personas que usan mi clave son que puedo restringir las solicitudes (con Google) a ciertos dominios.
¿Es esto lo único que puedo hacer para restringir el acceso a mis clientes? ¿Es posible que un no cliente falsifique su dominio de referencia? Si es así, ¿la gente hace esto para usar otras claves API de Google?