Запретить вызов веб-службы из другого клиентского приложения - PullRequest
0 голосов
/ 27 августа 2010

У меня есть этот веб-сервис на работе.Для этого веб-сервиса наш отдел разработал клиента для использования веб-сервиса.

Мы хотим предотвратить то, что они разрабатывают любой другой клиент для его использования.

Есть ли какой-нибудь алгоритм, практика, которую мы можем улучшить в наших клиентских и веб-сервисных коммуникациях, чтобы подтвердить, что клиент-потребитель является нашим приложением?

У меня есть идея, что мы можем разработать алгоритм шифрованияо времени (5 секунд льготного периода), которое должно совпадать с рассчитанным на сервере.

Но я хочу быть уверенным, что для этого нет наилучшей практики ... или если это все еще хорошая идея ...

(извините за мой английский)

Ответы [ 3 ]

1 голос
/ 27 августа 2010

Я думаю, что часть цели веб-сервисов (например, на основе SOAP или REST) ​​заключается в публикации интерфейса, который позволит вашему сервису потенциально использоваться различными реализациями клиентов (совместимость является одной из причин для веб-сервисов ).

Если вы хотите заблокировать ваш сервис для использования вашим клиентом, единственное преимущество использования его в качестве «веб-сервиса» - это, вероятно, инструменты и библиотеки, с помощью которых вы его реализовали. Возможно, вы захотите подумать, стоило ли это (это действительно возможно).

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

1 голос
/ 27 августа 2010

То, что вы ищете, называется «аутентификация».

0 голосов
/ 27 августа 2010

Вам нужна аутентификация приложения. Для веб-приложений и сервисов попробуйте заглянуть в двухсторонний OAuth. В OAuth вы предоставляете идентификатор и секрет для каждого клиентского приложения, которое обращается к вашему сервису, и каждое сообщение подписывается для дополнительной безопасности.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...