我正在尝试像谷歌那样进行登录,其中包括跨域身份验证。登录google.com后,您将自动登录youtube.com等不同的域名。对我来说,它看起来像:
我正在研究很多,似乎easyXDM(http://easyxdm.net/wp/)是一个很好的解决方案(你认为它是什么?)。但我不知道如何进行跨域身份验证。当用户正确登录时,我是否应该向其他域发出请求并传递SID并在域上创建cookie?还是不安全?或者我应该在登录后为用户创建令牌并将其存储在我的数据库中。然后将令牌发送到所有域以验证他,然后删除令牌?
我发现其他一些东西是通过iframe中的iframe解决方案.. Googles analytics.js(https://developers.google.com/analytics/devguides/collection/analyticsjs/cross-domain)看起来很令人兴奋......但我看到它甚至在easyXDM中被整合了。
如果你们有这些东西的经验,我希望有些人。我很想读你的想法:) gerti
答案 0 :(得分:1)
你想要的是OAuth2(这是你所指的协议 - Google登录的功能)。
如果您正在寻找简单的解决方案,可能需要尝试使用Stormpath + IDsite之类的内容。它是您可以注册/使用的免费API服务。
基本上,当您希望用户创建帐户或登录时,他们会为您托管域名,然后他们会处理所有身份验证/授权(跨域),以及使用JSON Web令牌(JWT)向您发送经过身份验证的用户。
Stormpath有许多用于各种编程语言的库,你可以从这里开始:https://docs.stormpath.com/home/
人们通常使用的其他解决方案需要相当多的时间/精力才能运行。我实际上帮助构建了很多Stormpath库(在Node / Python中),所以我非常熟悉它 - 你在简单性方面真的无法击败它。