SPA(angular度)身份validation与OAuth2提供商的独立域上的API和身份validation服务器; Google,Facebook

我有一个angular度的应用程序运行在独立的域比我的api / auth服务器。 对于本地的例子:我的angular度应用程序是在localhost:9000,我的api / auth服务器是在localhost:3000。 或者,如果这是公开的,例如在CDN上的angular色。

我想使用服务器/代码stream与Google和Facebook进行身份validation。 我见过的例子使用窗口popup窗口或cookies。 由于CORS问题,Cookies不可能出现问题,我希望这个Web API也可以在移动应用程序中使用。

我发现Sattelizer,这工作良好,但我正在寻找与护照一起工作的解决scheme。 本质上是一种用于交换访问令牌的授权代码(通过angular度应用程序传递)的通行证策略,而不是直接从后端请求访问令牌。

如果这不存在,我可能会尝试做一个。

我看过的Facebook和Google的Passport插件似乎是为了让你的服​​务器请求授权码,当我正在寻找一个解决scheme,让客户端请求授权码传递回你的auth / api服务器换取。

我最终创build了一个脚本来做到这一点,虽然它不是为了生产的目的,但是我创造了一个关于这个主题的video课程,因为在线没有太多内容。

http://www.pluralsight.com/courses/creating-apps-angular-node-token-authentication