При разработке и изучении веб-API ASP.NET я столкнулся с несколькими проблемами, на которые мне нужна помощь и обсуждение.
Вдохновленный этим превосходным постом о разработке Secure REST API без OAuth. Мне интересно, как лучше подходить к проверке различных токенов и информации, которую я собираюсь попросить.
Краткое резюме: я буду запрашивать (в строке запроса) следующую информацию.
- идентификатор пользователя
- ключ API
- Отметка времени
- хэш подписи, основанный на секретном ключе, который был выдан пользователю и хеширован вместе со значениями запроса
Мой вопрос / вопрос такой:
Если это разумный подход, как лучше всего реализовать это с помощью ASP.NET Web API?
В настоящее время я думаю об использовании пользовательского атрибута, которым я могу пометить свои методы, типа атрибута Authorize, который извлекает необходимое из строки запроса, или некоторого объекта типа POCO, который содержит все значения, и я могу использовать его для храните весь код типа авторизации в одном месте.
У кого-нибудь есть опыт или мысли по этому поводу?
Спасибо:)