2015-04-24 3 views
0

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

Однако я хотел добавить в систему входа в систему Facebook, поэтому я, похоже, узнал, что это не будет работать так, как я ее раньше строил. Я пришел к выводу, что мне, вероятно, придется изменить весь метод на вход в токен.

В настоящее время я использую кнопку Facebook на мобильной стороне, это создает для меня токен доступа Facebook и Facebook. Я отправляю оба эти значения на свой сервер и использую вызов графа Facebook для извлечения facebookid из токена доступа. если оба пользовательских идентификатора Facebook равны. Я либо зарегистрирую пользователя, либо зарегистрирую его.

Здесь я застрял. Теперь я хочу создать свой собственный токен для отправки обратно на мобильную сторону, потому что у меня есть пользовательский логин (адрес электронной почты + пароль) (Facebook - это просто вариант). Поэтому я считаю, что использовать мой собственный токен для обоих способов является лучшим.

меня несколько вопросов по поводу этого маркера:

  • Что нужно лексему EXIST из?
  • мне нужно сохранить этот маркер на мобильном Do (не хешированы?)
  • Что такое лучший способ встраиваемых истекающее время и автоматическое обновление маркеров

То, что я не могу понять это безопасность этого метода аутентификации. Отправка маркера по запросу, который дает вам доступ к информации пользователя, так же плохо, как простой пароль, я думаю? Достаточно ли SSL-соединения?

Я понимаю, что это много вопросов в одном, но я надеюсь, что кто-то может дать мне четкое объяснение.

Спасибо

ответ

0

Вы можете попробовать JWT (веб-токена JSON), это очень просто. Идея его, когда вы делаете логин, серверы возвращают вам JWT, и вам просто нужно сохранить его в своем мобильном приложении. Затем вы должны передать его как заголовок (при условии, что вы разрабатываете для Android):

request = new HttpGet(); 
request.addHeader("Authorization", "Bearer " + Global.loginData.jwt); 
Смежные вопросы