首页 > 解决方案 > 如何在 REST API 中实现 RBAC 权限(Nest.js 最佳实践)

问题描述

我正在编写一个 REST API 服务,我需要为我提供的端点添加一层授权。我通过使用保护/中间件在每个控制器上使用离散权限来实现授权。

  @Get('/clients')
  @hasPermissions('read', 'all')
  @UseGuards(PermissionsGuard)
  async getClient(@Query() query, @Res() res) { 
      ...
  }

我的问题是我需要根据资源的所有者添加一层访问权限。例如,如果用户有一个管理员权限,他/她可以看到由创建的客户端everyone,但是,如果用户的权限低于管理员,他/她可以only看到他/她自己创建的客户端。

标签: javascriptnode.jsrestnestjsrbac

解决方案


推荐阅读