nocobase icon indicating copy to clipboard operation
nocobase copied to clipboard

在界面操作中针对某个resource设置自定义action授权

Open MarshalW opened this issue 2 years ago • 0 comments

Is your feature request related to a problem? Please describe.

使用的分支是:main

目前默认有5个 availableActions(create/export/list/update/destroy)

还可以在服务器端自定义action,比如 products (resource) 中增加一个名为sync的action用于和第三方系统同步

但是界面acl方面的功能目前还不能实现:

image

因为界面端获取 availableActions 使用的服务器端接口只能得到全局的数据,没有针对具体 resource 自定义的 action:

https://github.com/nocobase/nocobase/blob/45d03d3ca5f0f5eb20a440394708ec3a12b715f7/packages/core/acl/src/acl.ts#L146-L148

这方面有计划实现么?

Describe the solution you'd like

以我目前的理解,acl 代码应增加针对指定 resource 给出 availableActions:

  getAvailableActions(resourceName) {
    ...

在界面 Action permission 表格中增加自定义的 action,这样就可为一般 role(比如 member) 定制 action了。

Describe alternatives you've considered A clear and concise description of any alternative solutions or features you've considered.

Additional context Add any other context or screenshots about the feature request here.

MarshalW avatar May 11 '22 11:05 MarshalW