У меня есть сумасшедшее решение для этого, я подумывал о чем-то своем, что мне нужно сделать вот так.
В конфигурации по умолчанию для Rails он отправляет данные сеанса конечному пользователю в виде файлов cookie. По большей части вы должны положить почти ничего в сеансе, за исключением личности пользователя, который вошел в систему и прошел проверку подлинности, верно? Хорошо, а что, если каждое приложение, которое вы хотели видеть при входе в систему, использовало один и тот же секретный ключ в своем config / environment.rb? Это строка из примерно 120 символов, которая используется для подписи файла cookie, чтобы пользователь не мог изменить файлы cookie и отправить их обратно, не будучи пойманным. Если бы у каждого приложения в вашей группе был один и тот же секретный ключ И , то все они находились в одном домене, тогда все приложения получали бы один и тот же файл cookie, и все полагали бы, что они отправили его. Каждый сказал бы: «Да, это пользователь № 252. Я сам ввел этот номер пользователя в сеанс, чтобы я знал, что это он. Получая его обратно, я знаю, что он / она вошел в систему, и я могу использовать его для поиска его / ее данные. "
Примечание: полное раскрытие, я не пробовал это, но у меня есть все основания полагать, что это будет работать.