2013-06-06 3 views
4

Я не уверен, что правильно понял, как authentication работает в Пуше. Вот сценарий, который меня беспокоит:Как работает аутентификация Pusher?

  1. Пользователь хочет подписаться на частный канал, чтобы библиотека Pusher вызывала мой сервер, чтобы получить токен аутентификации.
  2. Сервер проверяет, зарегистрирован ли пользователь и возвращает токен
  3. Теперь пользователь получает этот токен и выходит из моего приложения.
  4. Пользователь может подписаться на один и тот же частный канал, используя токен аутентификации с другой машины, даже если они были выведены из системы.

Действительно ли пункт 4 действителен? Можно ли использовать токен авторизации после того, как пользователь вышел из моего приложения?

ответ

3

Нет, вариант 4 недействителен. Маркер аутентификации создается с использованием комбинации идентификатора сокета клиента, имени канала и секретности. См.: http://pusher.com/docs/auth_signatures

Идентификатор сокета является глобально уникальным идентификатором для текущего клиентского соединения. Если один и тот же токен аутентификации должен был использоваться на другой машине, идентификатор сокета будет отличаться, чтобы токен аутентификации не соответствовал тому, который создает Pusher при проверке маркера, отправленного как часть запроса на подписку от клиента.

+1

Спасибо за разъяснение. Я, должно быть, пропустил эту часть о идентификаторе сокета, который используется для создания токена аутентификации. – janusz

+0

@janusz - не могли бы вы отметить это как правильный ответ (если согласитесь). – leggetter

Смежные вопросы