nodejs有比较完善的权限框架吗
发布于 9 年前 作者 itbasketplayer 11711 次浏览 最后一次编辑是 8 年前 来自 问答

使用passport的时候,发现它顶多算一套认证框架,无法做到比较方便的权限管理,像java的shiro那样,只能自己去维护权限。这一块nodejs有比较好的modelus推荐呢?接触Nodejs才一周,急需各位经验升级。

7 回复

sails有个policy目录 policies.js

{
  ProfileController: {
      // Apply the 'isLoggedIn' policy to the 'edit' action of 'ProfileController'
      edit: 'isLoggedIn'
      // Apply the 'isAdmin' AND 'isLoggedIn' policies, in that order, to the 'create' action
      create: ['isAdmin', 'isLoggedIn']
  }
}

里面可以写各种限制设置

关于权限设置,有的框架是集中到一到配置文件,有的框架是分散在在action/controller里面, 哪种方式更合理一些?

集中设置,通过AOP统一拦截实现。

@zlbbq 这种有效率问题,实际上一个网站中开放的功能相对后台限权的操作要多, 比如接受100个请求,可能80个是象列表页,请求页,搜索页这种请求,只有20个是注册,登录,审核这种请求, 如果用统一拦截的方式,这样大量的拦截操作是在做无用功, 网站在开发期间可能这种方式看不出有什么问题,但是当网站访问量一旦上了一定量级以后,对服务器的压力就会上来了,这时候如果再改权限处理可能就来不及了

@yakczh 看拦截点,可以做到不需要权限控制的地方无额外逻辑执行。

集中设置和维护是没问题的。可以看一下koa-roles这个中间件 自豪地采用 CNodeJS ionic

回到顶部