Подтвердить что ты не робот

Защита ключей API веб-сайта в расширениях Chrome

Я создаю расширение Chrome, используя API-интерфейс Remember the Milk. Чтобы вызвать методы в этом API, мне нужно подписать мои запросы с помощью ключа API и ключа "общего секрета".

Меня беспокоит, что любой пользователь может просто взломать расширение и вытащить эти значения, если я включу их в опубликованное расширение. Это может или не может означать повышение безопасности для пользователя, но он или она, безусловно, может использовать/злоупотреблять моим ключом API и, возможно, отменить его.

Это что-то, о чем я должен беспокоиться? Существуют ли какие-либо рекомендации по защите этого типа информации в опубликованных приложениях JavaScript?

4b9b3361

Ответ 1

В конечном счете вы не можете по-настоящему скрыть что-либо в JS-приложении, которое выполняется в браузере; вы можете запутать или минимизировать код, который будет отвлекать случайных пользователей от наблюдения за ним, но в конце его всегда будет возможно захватить секрет вашего открытого текста.

Если вам действительно необходимо предотвратить это, один из вариантов - передать вызовы с вашего внутреннего номера на сервер, к которому у вас есть доступ. Ваш сервер может добавлять любые параметры, необходимые для подписания, перенаправлять вызов на соответствующий API и передавать ответ API пользователю. Конечно, это добавляет ограничения пропускной способности/времени ожидания, которые вы, возможно, не захотите.