Rails, Node.js межсерверная аутентификация

#ruby-on-rails #session #mongodb #node.js #devise

#ruby-on-rails #сессия #mongodb #node.js #разработать

Вопрос:

Итак, я создаю приложение rails, которое также использует node.js для функций реального времени. Каков наилучший способ аутентификации пользователей в приложении node, если они были созданы с помощью devise на rails? Я думал о сохранении идентификатора сеанса в базе данных, а затем о проверке с его помощью или, возможно, отображении идентификатора пользователя на странице, а затем отправке его в приложение node при подключении. Или, может быть, что-то совсем другое было бы лучше. Я использую mongoose для моего узла orm и mongoid для ruby.

Ответ №1:

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

Комментарии:

1. Знаете ли вы простой способ получить идентификатор сеанса в node? Зашифрован ли он вообще из rails?

2. @user741072, если оба приложения (rails и node) размещены в одном домене, файл cookie сеанса, созданный одним приложением, будет передан при просмотре другому приложению. Все, что вам нужно знать, это имя файла cookie.

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