El título de la pregunta es ... feo por decir lo menos. Aquí hay una visión general de lo que tengo:
- Trabajo en una herramienta en línea. Los datos se le envían, procesa los datos (una tarea intensiva) y devuelve los resultados.
- La herramienta se vende a organizaciones que desean incluir la funcionalidad en sus sitios web y aplicaciones public para que los usen sus clientes. La herramienta permanece en nuestros servidores (ningún cliente tiene acceso al código o los binarios)
- Necesito detener a las organizaciones no autorizadas que utilizan la herramienta en sus sitios y aplicaciones.
Dentro de un navegador, la autorización es fácil; Simplemente reviso el encabezado ORIGEN cuando se realizan las solicitudes y todo está bien (los usuarios individuales que piratean sus encabezados no son importantes).
En las aplicaciones es una historia diferente. Primero, necesito evitar aplicaciones simplemente usando la interfaz del navegador (o, mejor dicho, hacer que la interfaz del navegador sea igual a la interfaz de la aplicación), luego necesito usar claves o algo similar para autorizar a los clientes permitidos.
Me doy cuenta de que no importa qué autorización puse en las aplicaciones, siempre se puede descifrar porque son públicas, pero esto no puede ser una situación única, así que me pregunto qué soluciones ya se han desarrollado. (Dado que tengo un conocimiento limitado de la terminología de seguridad, ¡se ha comprobado que es difícil de encontrar!)