首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Sails.js和NodeBB的绿地项目-护照是否适合提供单点登录?

使用Sails.js和NodeBB的绿地项目-护照是否适合提供单点登录?
EN

Stack Overflow用户
提问于 2014-02-23 04:50:08
回答 1查看 670关注 0票数 3

我是一个经验丰富的Ruby (SinatraEvent MachineWarden等)开发人员,并且决定教自己Node.js

我现在已经写了足够多的Node了,我对它感到非常舒服,现在我感到更加雄心勃勃了。我想连接一个简单的Sails.js应用程序和一个论坛与NodeBB一起构建,使我的用户可以登录到一个,并自动登录到另一个。

我希望这些用户可以使用role-based authentication访问Sails应用程序的各个部分,也可以访问论坛,因此他们需要共享一个通用的RBAC模型。

Passport适合这样做吗?如果是的话,你有任何例子的链接吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-02-23 14:56:19

要在请求中持久化会话,Passport依赖于Connect,而Connect又依赖于包含连接会话id的加密cookie。要在多个应用程序中使用相同的会话,您需要同步Express / Connect cookie解析器,并同步或共享会话和用户模型。您可能需要使用外部会话存储(如Redis或Mongo),并可能将用户数据库与单个应用程序数据库分开。此外,您还需要将cookie解析器秘密复制并粘贴到每个应用程序中。

不过,这并不是最好的方法。Passport的制造商还发布了一个开源OAuth2服务器,您可以使用它(与Passport的OAuth 2身份验证支持相结合)为您想要绑定的所有应用程序提供身份验证。对于您的问题,这是一个更加健壮和可扩展的解决方案,因为您不必担心同步机密和共享数据库。此外,它还允许您编写任何类型的应用程序(不一定在节点中),并且仍然实现共享单点登录。

(如果这听起来仍然比它的价值更大的努力,你总是可以使用一个外部身份提供者。基于谷歌帐户的OpenID不需要设置,与Passport无缝集成,让谷歌完成所有的工作。)

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21964343

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档