Хорошо, для всех, кто заинтересовался, я нашел решение:
Мне требуется, чтобы мой виджет отображался только на страницах, требующих входа на сторонний веб-сайт.т.е. не на общедоступных страницах.
Мне также потребуется, чтобы сторонний веб-сайт встраивал несколько строк серверного кода (например, PHP), который генерирует случайный одноразовый номер, объединяет его с секретным ключом и создаетхеш:
$ nonce = make_nonce ();$ secret = 'ключ, специфичный для этого провайдера';$ hash = sha1 ($ nonce. $ secret);
Одноразовый номер и хэш будут отправлены вместе с запросами на мой сервер, чтобы я мог проверить, что они приходят из браузера, который правильно вошел в систему стороннего производителя.,Я верну маркер доступа API к браузеру, который можно использовать при обращении к API.
Это связывает доступ API с конкретными сторонними интеграторами.
Затем, чтобы ограничить злоупотребления, я 'ограничит число токенов доступа, чтобы они были полезны для одного интерактивного пользователя, но не для программного использования.
Я также запишу использованные одноразовые номера и сделаю их одноразовыми, плюс ограничение скоростичтобы получить токены доступа, чтобы кто-то, имеющий логин на стороннем сайте, не мог продолжать получать новый токен доступа для каждого запроса, который он хочет сделать.
Это должно значительно ограничить возможность злоупотребления, не затрагивая реальных клиентов ввсе.