Защита ключей API веб-сайта в расширениях Chrome - PullRequest
23 голосов
/ 20 декабря 2011

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

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

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

1 Ответ

15 голосов
/ 20 декабря 2011

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

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...