Я работаю на службы REST, который имеет несколько требований:REST просит Выполняется авторизация
- Он должен быть безопасным.
- Пользователи не могут подделывать запросы.
Мое текущее предложенное решение иметь пользовательский заголовок Authorization, которые выглядят так (это так же, как амазонка работа веб-сервисы):
Authorization: MYAPI username:signature
Мой вопрос заключается в том, чтобы сформировать подпись , Когда пользователь регистрируется в службе, им предоставляется секретный ключ, который они могут использовать для подписи запросов. Это остановит других пользователей, отправляющих запросы от их имени, но не остановит их подделывание запросов.
Приложение, которое будет использовать эту услугу, является приложением для iPhone, поэтому я думал, что у нас может быть открытый ключ, встроенный в приложение, с которым мы можем сделать дополнительную подпись, но означает ли это, что нам нужно будет иметь две подписи, один для ключа пользователя и один для ключа приложения?
Любые советы были бы очень благодарны, я бы очень хотел, чтобы это правильно в первый раз.
Определите «запросы ковки». Какая организация создает не подделанные запросы? Это клиентское программное обеспечение? – Alexander