我正在实现一个插件,它可以嵌入不同的站点,比如disqus。这个插件应该可以嵌入到我没有域名的不同域名的网站中。如果用户已经登录到使用我的插件的其他网站,我想访问用户登录状态。我还没能找到这样做的答案。
我需要的是:
- 如果用户使用我的插件登录到A.com域,则用户应该能够自动登录到使用我插件的其他B.com域。(我没有A.com和B.com(
我该怎么做?
提前谢谢。
由于CORS保护,如果服务器A或B不允许跨域请求,则不能从浏览器本身调用它们。这是一个安全功能。
如果您想这样做,并且不能直接访问A和B,则必须使用A和/或B API(如果存在(或使用C服务器作为请求的中介。
请求头以及服务器CROS预防机制将不允许登录。以下是实现它的解决方案之一。
SSO单点登录是我们解决此问题的方法之一。要实现SSO,只需创建一些服务来检查令牌(基于令牌的身份验证,以及我们可以检查即将到来的url请求(并允许登录(它与Windows、窗体身份验证无关(。
这是一种第三方身份验证机制,它将在基于令牌的安全性的基础上工作,并允许登录。