Токены доступа с ограниченным использованием защищают от подделки запросов и атак повторного воспроизведения , гарантируя, что действие будет выполнено предполагаемым получателем. Защита от таких атак осуществляется путем добавления уникального параметра токена к параметрам запроса и его проверки при вызове действия.
Сгенерируйте параметр токена в виде ключа, который можно использовать только для определенного действия и определенного пользователя. Перед выполнением запрошенного действия убедитесь, что токен действителен и совпадает с токеном, сгенерированным для пользователя. Если токен совпадает, выполните действие и аннулируйте токен для будущих запросов.
Отправляйте токены доступа пользователю в составе свойства url объекта HttpActionHandler . Например, если ваше приложение обрабатывает запросы на подтверждение по адресу http://www.example.com/approve?requestId=123 , рассмотрите возможность добавления параметра accessToken и обработки запросов, отправленных по адресу http://www.example.com/approve?requestId=123&accessToken=xyz .
Комбинация requestId=123 и accessToken=xyz должна быть сгенерирована заранее; убедитесь, что accessToken нельзя определить по requestId . Отклоняйте любые запросы на подтверждение с requestId=123 и без accessToken или с accessToken , не равным xyz . После успешного выполнения этого запроса отклоняйте любые последующие запросы с тем же ID и accessToken.