Я хочу создать виджет вокруг API ajax, который я размещаю на своем сервере. Виджет также будет обслуживаться моим сервером и размещаться на сторонних веб-сайтах. Виджет должен иметь доступ к DOM страницы хостинга (поскольку он обращается к данным формы на странице), поэтому он должен быть встроен с использованием тега скрипта, а не в iframe.
При нажатии кнопки виджет обращается к моему API, получает ответ и вставляет его в форму страницы хостинга.
Пока все хорошо, используя теги script и совершенство ajax. Быстрое доказательство концепции за несколько минут. Но как я могу запретить четвертой стороне просматривать код на странице третьей стороны и копировать его, чтобы виджет также был на их странице? Виджет будет доступен всем бесплатно, но я хочу знать, кто им пользуется, и контролировать доступ. Я также хочу, чтобы люди не могли получить доступ к API без виджета.
Я обдумал массу идей для подписи и хэширования, истечения срока действия токенов, стороннего прокси-сервера на стороне сервера, использования Flash на клиенте и многого другого, но я не могу придумать что-то, чего не смог бы честно обойти решительный мошенник. без труда.
Другими словами, я хочу убедиться, что только клиент, отрисовывающий виджет, может вызывать API и получать ответ.
Может быть, есть другой способ думать об этой проблеме?