Во-первых, вы должны осознать, что буквально невозможно удержать кого-либо от попытки позвонить в ваш веб-сервис.Даже с ограничением IP-адреса для кого-то все еще возможно запустить метод, маскируя IP-адрес, который кто-то может сделать, если ему просто хочется с вами связываться.
Сначала вы можете подумать, что это представляет сдерживающий фактор дляиспользование подхода MVC для веб-приложения, но на самом деле это не так.Хотя, безусловно, проще для кого-то переманивать любые веб-функции из веб-приложения MVC, поскольку метод способен просто возвращать нужные данные, ничто не мешает кому-либо сканировать обработанный HTML-ответ сервералибо скрипт стороны.
Имея это в виду, есть ряд подходов, которые вы можете использовать для ограничения доступа к этой конкретной функциональности, но они ничем не отличаются от любого другого веб-приложения MVC или нет.Однако то, какой вы используете, полностью зависит от типа данных, предоставляемых этой сторонней службой.
- Если ваш веб-сайт является строго общедоступным, без имен пользователей и паролей, одним из вариантов будет веб-метод.не всегда получать "живое значение" любых данных, которые вы опрашиваете из сторонней системы.Вы могли бы проверить веб-метод, когда последний раз данные опрашивались, и если он находится под каким-то произвольным пределом, установленным вами, просто верните кэшированное значение, которое вы где-то сохранили на своем сервере.Имеется механизм имени пользователя и пароля, поэтому можно ограничить количество раз в час, когда конкретный пользователь может получить доступ к услуге.Конечно, могут быть разработаны механизмы для автоматического создания нескольких учетных записей, но механизм Captcha может помочь вам с этой проблемой.
- Создание механизма Captcha для самой службы также может быть вариантом.Хотя это не поможет вам ограничить количество запросов от конкретного человека, это поможет гарантировать, что человек должен вводить ответ каждый раз, что, по крайней мере, замедлит количество обращений к службе.
Если вы можете дать мне более подробную информацию о том, что делают эти службы, я могу предоставить более конкретное решение.
РЕДАКТИРОВАТЬ: Используя POST илиМетоды GET не имеют абсолютно никакого значения в этой ситуации.