apache / apache/shardingsphere

[Proposal] Merge `ALL_PERMITTED` and `DATABASE_PERMITTED` into one privilege provider.

Open
#25,149 9 comments 0 reactions 1 assignee Claimed by @RaigorJiang View on GitHub
feature:authority in: API type: refactor
Dominant language
Java
Stars
20.8k
Forks
6.9k
Avg merge
11h 35m
Merged PRs (30d)
326

Description

Hi community,

Now, in ShardingSphere-Proxy, we provide two privilege providers: `ALL_PERMITTED` and `DATABASE_PERMITTED`.
Some users are confused when using it, especially in cluster mode, modifying the local yaml file does not really change the authority configuration in cluster, which increases the difficulty of operation and maintenance.

Ref: https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-proxy/yaml-config/authority/

Maybe we can combine these two providers:
1. Merge providers into one
2. Super user can be specified (the effect is the same as `ALL_PERMITTED`)
3. Non-super users must be authorized, otherwise they cannot operate any database.
4. The super user can execute `ALTER AUTHORITY RULE` through DistSQL to dynamically modify the configuration.

This is just a preliminary idea, more suggestions and discussions are welcome.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.