2013-08-17 6 views
0

У меня есть приложение iOS для мобильных устройств, которое я хочу выполнить для аутентификации в RESTful API. Каждый пользователь может иметь несколько устройств, связанных с одной учетной записью.Безопасная аутентификация токена клиента для API

До сих пор я придумал следующее:

стороне клиента

  • Пусть входа пользователя в систему с именем пользователя/пароль
  • Отправить имя пользователя/пароль & уникальный идентификатор устройства на сервер
  • Получить authToken с сервера и установить его в заголовке HTTP-аутентификации для каждого вызова API
  • На выходе из системы, удалить authToken

стороне сервера

  • API использует SSL
  • пользователь имеет множество связанных с ними устройств
  • устройства, представленные уникальным идентификатором устройства и authToken
  • каждый время пользователь меняет пароль, регенерирует все authTokens
  • если устройство удалено, удалите aut hToken для этого устройства

Будет ли это безопасным подходом к доступу к API и ручным добавлением/отзывом устройств?

+0

Итак, в основном, сеансовые куки. Учитывая, что почти все веб-приложения используют этот подход, я, безусловно, надеюсь, что это безопасный подход. – Aurand

ответ

0

Да, это довольно стандартный подход. Google имеет a document that describes this approach (большая часть документа предназначена для получения маркера от сервера к клиенту, чтобы он не был так полезен для вас). И еще несколько detailed description of bearer token authentication.

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