我想配置一个只登录并"查看"特定密钥空间/表的 cassandra 角色/用户。
这是我的测试设置:
1. CREATE KEYSPACE keyspace_test WITH replication = {'class':'SimpleStrategy', 'replication_factor' : 3};
2. CREATE ROLE role_test WITH PASSWORD = 'role_test$pw' AND LOGIN = true;
3. GRANT ALL PERMISSIONS ON KEYSPACE keyspace_test to role_test;
现在,我的角色"role_test"只能查询键速度"keyspace_test",而不能查询其他键空间,这没关系,但是"role_test"可以登录并描述其他键空间,尽管它不能做什么我真的想阻止这种情况。
有什么建议吗?
根据 cassandra 关于撤销权限的文档,某些表"不能撤销其SELECT
权限"。 这些表是:
* `system_schema.keyspaces`
* `system_schema.columns`
* `system_schema.tables`
* `system.local`
* `system.peers`
DESCRIBE KEYSPACE
命令将从system_schema.keyspaces
中检索信息,因此该命令可供任何授权用户使用。