Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/EmptyTag/131.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Security Node.js应用程序的授权方法和设计模式_Security_Node.js_Design Patterns_Express_Authorization - Fatal编程技术网

Security Node.js应用程序的授权方法和设计模式

Security Node.js应用程序的授权方法和设计模式,security,node.js,design-patterns,express,authorization,Security,Node.js,Design Patterns,Express,Authorization,我正在为内部企业软件平台构建多页管理界面。考虑将各种API、db查询和shell脚本连接在一起的大量粘合逻辑 我们将使用node.js、express框架(包括jade模板)和LDAP进行身份验证 我正在努力寻找有关节点应用程序中授权的设计模式和最佳实践的信息。我更愿意使用基于角色的模型,因为我的用户熟悉这种方法及其护理和喂养 我是node.js的新手,所以请不要以为我已经看过一个模块或流行的博客文章。很可能有大量的信息,我根本不知道去哪里找 提前感谢您提供的任何信息 以下是一些入门信息: 是

我正在为内部企业软件平台构建多页管理界面。考虑将各种API、db查询和shell脚本连接在一起的大量粘合逻辑

我们将使用node.js、express框架(包括jade模板)和LDAP进行身份验证

我正在努力寻找有关节点应用程序中授权的设计模式和最佳实践的信息。我更愿意使用基于角色的模型,因为我的用户熟悉这种方法及其护理和喂养

我是node.js的新手,所以请不要以为我已经看过一个模块或流行的博客文章。很可能有大量的信息,我根本不知道去哪里找


提前感谢您提供的任何信息

以下是一些入门信息:

  • 是一个流行的身份验证模块
  • 演示如何在没有额外模块的情况下实现简单身份验证
  • 说明如何实现基于角色的身份验证
  • 在nodejs.org上关于

希望这样可以更容易地开始。

根据您的第一个问题,您希望在NodeJs中实现一些授权过程。我已经探索并使用了许多NodeJs的api。我更喜欢以下企业应用程序的API

  • 用于身份验证:或者如果在AngularJS中开发SPA(前端)

  • 对于授权:。基于方法和RESTAPI的基于角色的安全性。我想提一下,如果你想使用RABC,ABAC以及

其次,您需要在NodeJs中使用一些实现和开发方法

  • 简单且我最喜欢的NodeJs设计模式和框架:MVC框架。由于其易于启动和模块化架构。从长远来看,代码管理很容易(企业应用程序最实际的要求)。易于维护。SailsJs还预先配置了,使用它您可以在项目中创建实时模块、小部件、聊天小部件

  • 您可以使用Express并设计自己的自定义MVC项目结构。这也很受欢迎和强大。你可以在网站上找到同样的热门种子项目

  • 作为缓存层或会话层。使用单独的缓存或会话层总是好的,因为它不会阻止您将云中的应用程序扩展到第n个实例

  • 您可以使用和创建实时功能,如用户状态(在线/离线)、聊天、推送通知等

  • ORM:。由于其简单的查询方法。它也是SailsJs的内置和默认ORM。如果不使用SailsJs,也可以使用。我建议使用DB提供商提供的本机连接器

  • 数据库:根据您的要求。水线ORM支持PostgreSQL、MySQL、MongoDB等

  • 我的faviourite视图引擎:。开发表示层不需要学习新东西。它也是SailsJs的内置和默认视图引擎,这就是为什么我是SailsJs的粉丝

我想,我已经介绍了在NodeJs中创建企业应用程序的所有重要信息。我并不是说,上面的包是最好的,但通过协作,它们可以最适合任何企业场景。还有其他已知的软件包,您可以根据自己的需求使用。

我应该说,它也是一个很好的候选者。这一思想借鉴了SAP(ERP提供商),是一种面向对象的授权。它还可以与其他框架一起使用,如:Passport和Express。

另一个选择是使用它,它与MongoDB集成得非常好。还有一篇文章介绍如何将基于CASL的授权集成到expressjs应用程序中-

谢谢!我将查看这些链接。express route中间件示例似乎非常接近用例I have奇怪,您的答案没有包含单词Authorization:)完美的答案,对我帮助很大。即使没有授权这个词:)断开链接@Green-waterline和sails.js+1@kosnkov大多数都很好。查看更强大的Express替代品和Waterline替代品。在我看来,我认为SailsJS太过分了。如果您来自RAILS或Django背景,您应该理解足够的概念,只需使用Express/Hapi和Waterline/Sequelize即可;它比帆轻得多。我选择了Hapi/Sequelize。很好的列表。最好再加一句关于暴力保护的话。包装应该很合适。