我用django使用cqlengine。在某些情况下,Cassandra会抛出一个错误,指示用户没有权限。有时这是选择,有时这是更新或有时它是其他东西。我没有要共享的代码,因为没有特定的行来执行此操作。我非常确定用户拥有所有权限,有时它可以正常工作。因此,如果用户没有权限,则应始终不会抛出权限错误。
那么这可能是什么原因以及如何找到问题?
答案 0 :(得分:0)
system_auth
密钥空间RF是否与节点数量相同?您是否尝试在system_auth
密钥空间上运行修复?如果不这样做。
对我而言,这听起来像是一致性问题。
答案 1 :(得分:0)
如果您启用了身份验证,请确保为密钥空间system_auth
设置适当的RF(应该等于节点数)。
其次,确保您创建的用户对所有键空间具有以下权限。 {'ALTER', 'CREATE', 'DROP', 'MODIFY', 'SELECT'}
。如果您以超级用户身份拥有该用户,请确保添加'AUTHORIZE'
作为权限以及上面列出的用户权限。
第三,您可以通过运行system_auth
CONSISTENCY ALL;
SELECT * from system_auth.users ;
SELECT * from system_auth.permissions ;
SELECT * from system_auth.credentials ;
密钥空间中的所有数据设置读取修复作业
希望这能解决问题!