Моя команда и я в настоящее время работаем над довольно крупным проектом. Мы работаем над онлайн-игрой, которая будет доступна (на данный момент) двумя способами:
- Через веб-браузер, приложение с полным JavaScript (на стороне клиента), полный Ajax (в основном это означает, что пользовательский интерфейс будет управляться на стороне клиента JS).
- Через приложение для iPhone (пользовательский интерфейс будет управляться самим приложением).
Между двумя различными приложениями основная логика остается неизменной, поэтому я считаю (я могу ошибаться), что наилучшим решением будет создание веб-службы (если возможно, с использованием таких стандартов, как RESTful или Rest), способных к выполнение всех необходимых операций.
Следуя этой логике, я столкнулся с проблемой: аутентификация и управление идентификацией пользователя. Это создает проблему, поскольку пользователи приложений должны проходить проверку подлинности для выполнения определенных операций.
Я рассмотрел WS-security, но для этого, очевидно, требуется, чтобы пароли хранились в незашифрованном виде на сервере, что недопустимо!
Затем я заглянул в Oauth, но на первый взгляд это показалось много работы для настройки и не очень подходит для моих нужд (способ, которым должны быть приняты приложения, меня не радует, так как это будет мое приложение и только мое приложение) используя веб-сервис, а не любое внешнее приложение).
Я читал и слышал о многих других способах делать то, что я хочу, но, честно говоря, я немного растерялся и не знаю, какая информация надежна, а какая нет.
Я хотел бы отметить, что я использую symfony2 для серверной части и jquery для клиентского JavaScript.
Кроме того, я хотел бы получить подробный пошаговый ответ, потому что меня действительно смущает все, что я прочитал и услышал.
Спасибо за ваше время, и я надеюсь, что кто-то может помочь мне, поскольку это очень срочно.
Добрый вечер