Как контролировать, кто использует мой веб-виджет

Я создал веб-виджет, который отображает пользовательскую информацию с моего сайта. Этот виджет основан на java script (я следил за в этом примере) и может быть встроен в другие сайты.

Я ищу способ контролировать, кто может встроить виджет на свой сайт. Любые идеи/ссылки приветствуются.

Ответ 1

Вы должны использовать некоторые дополнительные трюки вместе с OAuth, чтобы положительно идентифицировать клиента.

Этот вопрос был подробно рассмотрен в здесь.

Ответ 2

Вместо прямого обслуживания файла вы можете попробовать использовать request.referer и только при необходимости отправить файл JavaScript (через действие контроллера) на основе списка утвержденных веб-хостов. Вы можете использовать send_file для удобной отправки JavaScript клиенту (задайте параметры кеширования в HTTP-заголовке, чтобы браузеры не повторяли запрос файла). Однако реферер может быть подделан и не может быть отправлен в зависимости от HTTPS = > конфигурации HTTP.

Вы также можете подумать о необходимости использования ключа API для вашего файла JavaScript (просто добавьте его как часть запроса файла JavaScript). Несмотря на то, что он не является надежным средством защиты, он значительно упрощает отслеживание. (И используя журналы, вы можете обнаружить нелегитимные использования).