2013-09-03 1 views
2

Я использую angularjs, чтобы сделать запросы REST API, требующему авторизации. Для авторизации требуется, чтобы запрос был подписан (аналогично Amazon s3) и что эта подпись отправлена ​​в заголовках.Как выполнить авторизацию в запросах RESTful с angularjs?

Я не уверен, как сделать это безопасно с помощью angularjs. Поскольку это клиентская сторона, учетные данные должны быть встроены в код js, который предоставляет массивное отверстие безопасности.

Я предполагаю, что я пропустил что-то очевидное здесь? Любые мысли были бы оценены.

ответ

0

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

+0

Это похоже на работоспособное решение, оно хранит учетные данные из видимого приложения. Хотя стоит ли останавливать запрос подписи для подписи на бэкэнд? Ограничения IP? –

+0

Чтобы правильно ответить на ваш вопрос, вы должны добавить дополнительные данные о том, какая авторизация используется в вашем сервисе. Меры безопасности, которые вы должны предпринять, зависят от того, какая подписка на запрос используется в вашей службе. Вы представили в качестве примера Amazon S3, к которому не следует обращаться из уязвимого кода. Код внешнего интерфейса уязвим. Если какой-либо запрос к вашему сервису требует подписания с учетными данными «master», вы должны проксировать все из них. – dantix