We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
有了身份认证(参见 #166)之后,我们就可以给系统添加ACL控制了。系统需要ACL方案的主要出发点在于:
此外,在设计ACL方案的时候,应该多参考HBase的设计
参考HBase的设计,数据库系统的权限设计是可以从两个维度来考虑的:
如果把上面的权限类别对应到Pegasus中,不一定所有的都适用。哪怕仅仅是部分的采用,这也是一个产品设计层面的问题:
下文给出一个建议的权限方案。
对于表级别的一个建议权限方案为:
注意:
对于集群级别的建议权限方案为:
所有纯查询meta server或者replica-server的命令和rpc,可以不做ACL限制,这样会简单很多。
需要记录的信息有:
最简单的做法:
如果担心把权限表全放到一个zk znode下会开销较大,可以考虑稍微优化下:
开发和使用的时候可能会有很多的问题,请修改、补充、完善或者废弃这个文档。
The text was updated successfully, but these errors were encountered:
做ACL的话,应该考虑acl能接入ranger统一管理。
Sorry, something went wrong.
Completed by commits in https://github.com/XiaoMi/rdsn prefixed with 'feat(security): ', such as XiaoMi/rdsn#655
feat: handle ERR_DISK_INSUFFICIENT (apache#170)
ed66cf9
scripts: disable tcmalloc to support valgrind memcheck (#170)
06b106e
No branches or pull requests
背景
有了身份认证(参见 #166)之后,我们就可以给系统添加ACL控制了。系统需要ACL方案的主要出发点在于:
此外,在设计ACL方案的时候,应该多参考HBase的设计
有哪些操作需要做权限规范
权限设计
参考HBase的设计,数据库系统的权限设计是可以从两个维度来考虑的:
如果把上面的权限类别对应到Pegasus中,不一定所有的都适用。哪怕仅仅是部分的采用,这也是一个产品设计层面的问题:
下文给出一个建议的权限方案。
表级别的权限建议
对于表级别的一个建议权限方案为:
注意:
集群级别的权限建议
对于集群级别的建议权限方案为:
注意:
所以我们这里可以对建表的行为稍作调整:建表的时候可以指定一个表的owner,owner对表有admin权限。如果不指定owner,建表人就是owner。
其他权限
所有纯查询meta server或者replica-server的命令和rpc,可以不做ACL限制,这样会简单很多。
可能的实现方案
需要记录的信息有:
最简单的做法:
如果担心把权限表全放到一个zk znode下会开销较大,可以考虑稍微优化下:
其他建议
开发和使用的时候可能会有很多的问题,请修改、补充、完善或者废弃这个文档。
The text was updated successfully, but these errors were encountered: