npm 包 @casl/mongoose 使用教程

阅读时长 5 分钟读完

什么是 @casl/mongoose

@casl/mongoose 是 casl 的一部分,是一个使用 MongoDb 和 Express 进行后端开发的权限管理库,可以方便地对用户权限进行控制,防止未授权的用户进行非法操作。

安装

使用 npm 安装 @casl/mongoose:

使用

  1. 引入 @casl/mongoose 和 mongoose:
  1. 定义权限模型和资源模型:
-- -------------------- ---- -------
----- ---------------- - --- -----------------
  -------- - ----- ------- --------- ---- --
  ------- - ----- ------- --------- ---- --
  ------- - ----- ------- --------- ---- --
  ----------- - ----- ------- --------- ----- -
---

----- ------------- - --- -----------------
  ------ - ----- ------- --------- ---- --
  -------- - ----- ------- --------- ---- -
---
  1. 通过 accessibleRecordsPlugin 给资源模型添加权限控制:
  1. 定义用户和其所属的权限:
  1. 创建角色:
  1. 创建管理员角色的用户:
  1. 在需要进行权限控制的路由中使用 @casl/mongoose:
-- -------------------- ---- -------
----- - ----------------- - - --------------------------

-------------------- ----- ----- ---- -- -
  ----- - --- - - -------------------------
  
  ----- ---- - -- ------
  ----- -------- - ----- ---------------
  ------------------------------------ -------
---
  1. 在需要进行权限控制的查询中使用 @casl/mongoose:
-- -------------------- ---- -------
----- - ------------ - - --------------------------
----- - -------------- - - -------------------------

----- - --- - - --- -----------------

-- ----------
----- ---- - 

----- ----- - - ------- ------- -------- --------- --
----- ---- - ----- -----------------------------------------------------

总结

@casl/mongoose 可以方便地实现后端权限管理,使用上有一定的门槛,但是一旦掌握,可以提高开发效率,避免出现安全问题。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/108206