目前,我有一个WordPress网站负责我的用户管理。另外,我有一个GitLab服务器和单页面应用程序(node.js)。
我即将构建CLI,允许用户a)下载某些资源b)将某些文件上传到他们的帐户。
我想为所有服务维护单个用户存储库,以便用户不必单独注册+我想绑定一些逻辑,如果用户在WordPress上购买了东西,他可以通过CLI下载或访问某些git GitLab上的存储库。
我知道WP,Node和GitLab支持Active Directory,LDAP和Kerberos,但我不确定这是否是最佳解决方案。我在AD方面的个人经历主要是在Windows环境中访问不同的目录。
摘要:
堆栈:服务/应用程序:
题:
如果您使用的是WordPress,则需要使用WP REST API。例如,您可以使用this solution,因为您使用JS,也可以使用API解决方案like this。
考虑到您的问题是围绕SSO(单点登录),我会指向oAuth的方向。 oAuth几乎是行业标准,意味着如果您想要添加其他服务,例如谷歌,Facebook,Twitter授权,您将能够支持这些开箱即用。
什么是集成所有服务的最佳解决方案(所有服务的单一登录和密码)。 LDAP / Kerberos或其他什么?
有些提供商为身份验证提供SaaS平台。看看https://auth0.com/
他们有一个计划,允许您拥有多达7K的免费用户。
对于Wordpress片段,Auth0提供了一个WP插件:https://auth0.com/wordpress
您可以使用一些SDK示例代码:https://auth0.com/docs/quickstart/webapp/nodejs/01-login
GItlab提供了一个oAuth插件:https://docs.gitlab.com/ee/integration/oauth_provider.html
您可以在Node JS中编写CLI,在这种情况下,上面的示例代码应该是一个有用的开始。
如果您遇到困难,请随时提出,我也可以指向其他一些区域。
亲切的问候,