使用laravel登录一次不同的项目


Sign in for one time to different projects using laravel

我在我的项目的web开发中使用laravel 4框架。我有5个不同的应用程序(博客,学校管理,报纸....). 这些应用程序有单独的逻辑,所以它显然应该被分成不同的项目,每个项目都有自己的数据库。

问题是

这些应用程序之间共享一些用户

细节:

在我的例子中,如果用户想要进入任何应用程序,他应该先登录。这意味着如果他想访问这5个应用程序,他需要登录5次。

所以我想让用户登录只是一次在任何5个应用程序,所以用户可以从一个应用程序跳转到另一个不需要再次登录。

注意:应用程序位于同一服务器和域

我正在考虑在项目之间共享会话。这是一种可能的或正确的完成任务的方法吗?

如果是,如何在laravel中完成?

如果不是

。这样的任务如何在laravel中解决?

你有三个选择,我的建议是:

1。使用一个应用程序并包含所有逻辑您可以为代码库中不同元素的应用程序逻辑创建不同的库/模块。这是迄今为止最简单的解决方案。

2。使用多个应用程序但共享会话在应用程序之间共享会话是另一种选择。这可能不是一个完全安全/稳定的解决方案,但你肯定可以让它工作,而且它肯定比选项3少得多。

3。通过OAuth 2等单点登录/登录解决方案使用多个应用程序最困难的解决方案是在每个应用程序中设置一个OAuth 2服务器并实现OAuth 2(客户端),但这是一个非常好的解决方案。所有的大公司(谷歌,雅虎,Facebook)都使用这个系统,它非常灵活,稳定和安全。

在你的情况下,我会选择选项1,因为你想在一个域中运行一些东西