Found some strange behavious as List roles gives output
cassandra@cqlsh> list ROLES ; role | super | login | options ----------------+-------+-------+--------- cassandra | True | True | {} kaicloud | False | True | {} kaicloud_ro | False | True | {} kaicloud_subpo | False | False | {}
Above output says kaicloud_subpo role is NOT a SUPER
but doing select * from system_auth.roles
cassandra@cqlsh> SELECT * from system_auth.roles ; role | can_login | is_superuser | member_of | salted_hash ----------------+-----------+--------------+-----------+-------------------------------------------------------------- kaicloud_ro | True | False | null | $################# kaicloud_subpo | True | True | null | $################# kaicloud | True | False | null | $################# cassandra | True | True | null | $##################
in above output it says kaicloud_subpo IS super and Login is true also.
AND same strange behavior in granting permissions too.
cassandra@cqlsh> grant all PERMISSIONS ON KEYSPACE kaicloud_subpo to kaicloud; cassandra@cqlsh>
cassandra@cqlsh> list all; role | username | resource | permission -------------+-------------+-----------------------------+------------ kaicloud | kaicloud | <keyspace app_metrics_prod> | CREATE kaicloud | kaicloud | <keyspace app_metrics_prod> | MODIFY kaicloud | kaicloud | <keyspace kaicloud> | CREATE kaicloud | kaicloud | <keyspace kaicloud> | ALTER kaicloud | kaicloud | <keyspace kaicloud> | SELECT kaicloud | kaicloud | <keyspace kaicloud> | MODIFY kaicloud_ro | kaicloud_ro | <keyspace kaicloud> | SELECT (7 rows) cassandra@cqlsh>
cassandra@cqlsh> select * from system_auth.role_permissions ; role | resource | permissions -------------+--------------------------+-------------------------------------------------------------- kaicloud_ro | data/kaicloud | {'SELECT'} kaicloud | data/OpsCenter | {'ALTER', 'AUTHORIZE', 'CREATE', 'DROP', 'MODIFY', 'SELECT'} kaicloud | data/app_metrics_prod | {'CREATE', 'MODIFY'} kaicloud | data/kaicloud | {'ALTER', 'CREATE', 'MODIFY', 'SELECT'} kaicloud | data/kaicloud_subpo | {'ALTER', 'AUTHORIZE', 'CREATE', 'DROP', 'MODIFY', 'SELECT'} cassandra | data/kaicloud_subpo | {'ALTER', 'AUTHORIZE', 'CREATE', 'DROP', 'MODIFY', 'SELECT'} cassandra | functions/kaicloud_subpo | {'ALTER', 'AUTHORIZE', 'CREATE', 'DROP', 'EXECUTE'} cassandra | roles/kaicloud_subpo | {'ALTER', 'AUTHORIZE', 'DROP'}
Why i cant see permission i just grant in list all and can see in system_auth.role_permissions
> run full repair on system_auth
>nodetool describecluster || schema version is same across the cluster.
Please help to understand the behavior.