用于连接多个应用程序的单个用户ID和密码

时间:2013-08-16 10:21:18

标签: php mysql session session-cookies

[情景]
我已经启动并运行了5个PHP5.3 +应用程序(例如:App-A,App-B,App-C,App-D和App-E)。在这里,每个应用程序都有自己的登录用户ID和密码。

[新要求]
现在,我想实现单个用户ID和密码来登录所有这些应用程序(通过使用App-A)。让我们说:我想像往常一样登录App-A,登录后我只需点击App-A上的图标(登录后)即可点击进入其他应用程序(B,C,D和E)。 并且,我的用户不应该通过App-B或C或D或E登录。他们总是需要通过App-A连接。

[背景]
- 所有这些应用程序都在不同的域上运行但在同一台服务器上运行 -Admin将能够为某个用户启用/禁用某些应用程序

有人做过类似的事情,或者有人提出任何建议吗。

1 个答案:

答案 0 :(得分:0)

这是一个非常好的问题,并以不同的方式对您的问题进行了小型研究:

的OAuth:

阅读文档并经过许多服务提供商后,这是不可能的。 Oauth服务提供商为消费者提供密钥和密钥,他们检查来自域的请求,从而检查相同的oAuth消费者密钥是否用于不起作用的不同域名。

设置Cookie多个域

简单地说,无法以任何方式访问域名来设置cookie

因此,我可以说不可能为多个域设置cookie或使用相同的消费者密钥和秘密

替代方式

  1. 使用HTML5 Web Storage存储信息然后进行访问 来自不同领域的信息是可能的。

  2. 使用AJAX / CURL发送设置不同域的cookie的请求,例如example.com/session_cookie.php?info=xxxxx

  3. 维护所有域的单个子域/页面,以便在所有域中进行登录。