apache / dolphinscheduler

Apache DolphinScheduler is the modern data orchestration platform. Agile to create high performance workflow with low-code
https://dolphinscheduler.apache.org/
Apache License 2.0
12.74k stars 4.59k forks source link

[Feature][Api] Resource file directory-level permission management #6516

Closed xiaoyangdeve closed 2 months ago

xiaoyangdeve commented 2 years ago

Search before asking

Description

Now, only the owner can create a resource file or directory under the resource directory, and only the owner can upload resource files. Even the admin user cannot grant access to other users, Because when doing this, the code will check whether the loginUser and parentDir's ownerUserId match. Currently, the project only supports the granting of file-level permissions. In this case, the collaborative office work of other partners in the project team will be hindered.

Use case

Option 1: When creating and uploading resource files, the loginUser and the ownerUserId of the parent directory are not matched, changed to match the tenantId of both. Option 2: When creating and uploading resource files, determine whether the current user has the permissions of the parent directory or the root directory. Option 3: Refer to other systems and use owner, group, role, and roleGroup to establish a complete project and resource authority management system. Option 4: Refer to the Linux system to establish a complete file system authority management system.

Considering the difficulty and cost of implementation, I suggest to choose "Option 2".

Related issues

If you choose to modify, it may involve the modification of WebUI and Database.

Are you willing to submit a PR?

Code of Conduct

github-actions[bot] commented 2 years ago

Hi: