Войдите один раз в разные проекты, используя laravel

Я использую структуру laravel 4 в веб-разработке своих проектов. У меня есть 5 разных приложений (блог, управление школой, газета ....). Эти приложения имеют отдельную логику, поэтому, очевидно, их следует разделить на разные проекты, каждый из которых имеет свою базу данных.

Проблема

Эти приложения делят между собой некоторых пользователей.

Подробности:

В моем случае, если пользователь хочет войти в какое-либо приложение, он должен сначала войти в систему. что означает, что ему нужно войти в систему 5 раз, если он хочет посетить 5 приложений.

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

Примечание. Приложения находятся на одном сервере и в одном домене

Я думаю о том, чтобы разделить сеанс между проектами. Это возможный или правильный способ выполнить задачу?

Если да, то как это можно сделать в laravel?

Если не. Как такую ​​задачу можно решить еще и в laravel?


person ddl    schedule 30.03.2014    source источник
comment
Можете поделиться информацией об установке? Это что-то, что будет работать на одном сервере, будет ли оно работать на одном домене и т. д.?   -  person Bram    schedule 30.03.2014
comment
да, он будет работать на том же сервере и в том же домене.   -  person ddl    schedule 31.03.2014
comment
на вашем месте я бы попробовал использовать одно приложение (это тот же сервер и домен) и 5 ​​разных шаблонов раскладки.   -  person clod986    schedule 31.03.2014
comment
Что вы подразумеваете под шаблонами макетов? Если вы имеете в виду интерфейс. У меня есть 5 разных приложений (блог, управление школой, газета ....). эти приложения имеют отдельную логику, поэтому, очевидно, их следует разделить на разные проекты. Но у них есть те же пользователи   -  person ddl    schedule 01.04.2014


Ответы (1)


Вот три варианта, которые у вас есть, и мой совет, какой выбрать:

<сильный>1. Используйте одно приложение и включите всю логику. Вы можете создавать разные библиотеки/модули для логики приложения различных элементов в вашей библиотеке кода. Это, безусловно, самое простое решение.

<сильный>2. Использовать несколько приложений, но совместно использовать сеансы. Совместное использование сеансов между приложениями — еще один вариант. Это может быть не совсем безопасное / стабильное решение, но вы, безусловно, можете заставить его работать, и это определенно намного меньше работы, чем вариант 3.

<сильный>3. Используйте несколько приложений с решением единого входа/входа, таким как OAuth 2. Самое сложное, но очень хорошее решение — настроить сервер OAuth 2 и реализовать OAuth 2 (клиент) в каждом из приложений. . Все крупные компании (Google, Yahoo, Facebook) внедряют эту систему, и она очень гибкая, стабильная и безопасная.

В вашей ситуации я бы выбрал вариант 1, потому что вы хотите запустить что-то на одном домене.

person Bram    schedule 01.04.2014