Аутентификация пользователя Rails для приложения Android - PullRequest
0 голосов
/ 18 января 2012

Я работаю над школьным проектом. Мы собираемся сделать игру о защите башен с ошибками / грызунами. Игра в основном будет Android-приложением. Также будет (по крайней мере, мы хотим, чтобы) был веб-сайт / приложение Ruby on Rails, связанное с ним.

Одним из требований к проекту является реализация трех уровней пользователя, которые будут взаимодействовать с проектом. Мы решили, что три типа пользователей будут администраторами, гостевыми игроками и игроками с аккаунтами. Игроки с аккаунтами смогут накапливать льготы. Гостевые игроки смогут играть, но не смогут зарабатывать льготы с течением времени. Администраторы смогут управлять пользователями с помощью учетных записей (удалять, редактировать и так далее) через веб-браузер и приложение Rails.

Я хочу, чтобы пользователи с учетными записями могли входить в приложение Rails через приложение Android. Будут части игры, к которым смогут получить доступ только пользователи с учетными записями. Как мы можем создать схему входа / выхода из системы для приложения Android? Я думаю, что это будет что-то вроде того, что пользователь вводит свое имя пользователя / пароль, нажимает на кнопку входа, а затем приложение Android отправит запрос на сторону Rails. После того как пользователь вошел в систему через приложение Android, он может получить доступ к определенным частям приложения Android, которые не могут получить гостевые пользователи.

Как бы я поступил об этом? Я не уверен, с чего начать.

Будет ли приложение Android, используя Java, отправлять http-запросы в приложение Rails (отправляя имя пользователя и пароль)? Тогда отправит ли приложение Rails какой-нибудь успех? Как приложение Android будет удерживать этот успешный вход в систему, как сеанс в веб-браузере? Кроме того, приложению Android потребуется обновить атрибуты пользователя в базе данных Rails (что-то вроде накопленных привилегий).

Возможно ли это?

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

Спасибо.

1 Ответ

2 голосов
/ 18 января 2012

Вы можете использовать свои приложения rails в качестве oauth-провайдера (https://github.com/pelle/oauth-plugin) и использовать клиентскую библиотеку oauth в мобильном приложении

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