为实现在PHP中三个网站的单一登录?(Implementing a single login for

2019-10-30 00:34发布

我有三个是相关网站的网络。

 - site1.domain.com
 - site2.domain.com
 - site3.domain.com

目前,每个submdomain了〜在三个独立的数据库,100个账户。 他们分别登录每个域。 我想创建site0.domain.com,让他们对一个数据库进行验证,然后自动为他们访问他们登录的用户在每个站点。

我不太知道如何做到这一点。 我听说过抛来抛去开放ID和联合会和单点登录方面,但我从来没有想之前整合这样的网站。

首先上的任何提示,这是如何在技术上实现了(我使用PHP / MySQL的);第二,什么是迁移计划好现有的用户帐户到使用单点登录,而无需中断服务?

我猜,用户可以通过在site0形式登录,它将权威性对数据库用户,并创建一个数据库行的会议上,与随行的令牌。 令牌处于一个会话变量设置cookie。 用户访问站点1,站点2,或site3如果令牌变量在GET请求设置,它连接到同一个数据库site0使用,搜索令牌,并返回正确的用户行。 那是几乎是如何工作的? 更多的技术建议将是巨大的...

至于迁移,我想我可以让用户创建自己的site0登录或“连接”他们的用户帐户的登录site0如果他们还没有每次登录到网站的一次。 30天之后,所有的网站停止接受正常登录和用户被迫创建site0登录。 当他们创建site0登录,它要求他们的站点1,站点2,或site3用户名/密码,因此它可以得到正确的用户信息。

Answer 1:

看看像SimpleSAMLphp这是做这种事情一个伟大的图书馆。



文章来源: Implementing a single login for three websites in PHP?