产品生态系统中的身份validation和授权
我有一个由多个产品组成的产品生态系统,例如:angular度应用程序,网站和混合应用程序,所有这些应用程序都由节点后端供电。
所以,现在我想为整个生态系统添加一个单一的authentication和授权,也需要模块化和可扩展性。
另外,我正在遵循三层架构,即: [APPLICATION] – > [API] – > [DB] ,只有可访问数据库的API层。
现在我也希望身份validation和授权是另一个应用程序在生态系统,可以插入到其他应用程序和使用没有太多的设置。
另外,由于它是(身份validation和授权模块)另一个应用程序,我不希望它直接访问数据库,我希望它做API调用,再加上它不应该使用像auth0第三方authenticationscheme。
重要的是除了身份validation和授权模块之外的应用程序都不应该有任何身份validation相关的逻辑。
基本上这应该是模块比插入时允许身份validation和授权和无缝集成。
这个设置是可能的吗? 如果是这样,我该怎么办呢? 如果不是authentication和授权在其他生产级生态系统中是如何实现的?
提前致谢!
authentication绝对可以被认为是一个模块; 只是一个具有数据库后端的小部件,它接收凭证并吐出错误消息或授权令牌。 然而,授权有点复杂, 一旦你收到这些授权令牌,你需要决定他们的意思。
不知道你的应用程序的任何事情,我会说,你需要创build一个特权映射到每个应用程序的用户帐户。 如果你只是想限制用户访问对方的内容,这是微不足道的,但如果你想给一些用户更多(或更less)的权力比其他用户更难。 如果是这样,比我build议你使用某种forms的基于angular色的访问控制 。 你可以在这里find更多关于如何处理授权的讨论。
- 在hapi.jsauthenticationscheme和策略之间有什么区别?
- 如何在Express.js中设置authentication中间件
- 在Node.js Web-Server中确定用户angular色并授予API访问权限的正确方法是什么?
- 用户和来宾两个不同的模板? 或者dynamic改变视图使用客户端variables?
- 麻烦authentication
- LocalStrategy不是一个构造函数
- Expressjs护照本地不能注销
- Passport.js可选authentication
- NodeJS:在客户端存储JWT的地方? sessionStorage,localStorage还是cookies?