如何列出 Cassandra shell 中的所有用户?

How to list all users in the Cassandra shell?

在 CQL shell 中,如何列出所有用户?我似乎无法在 Stack Overflow 的任何地方找到它。

你可以做到LIST USERS;

输出为:

 name      | super
-----------+-------
 cassandra |  True
     boone | False
     akers |  True
  spillman | False

请参阅 CQL for Apache Cassandra 文档 - https://docs.datastax.com/en/cql/3.3/cql/cql_reference/cqlListUsers.html

在 Cassandra 2.2 中引入角色之前,身份验证和授权是基于用户的概念。

Cassandra 2.2 以后的 CQL 使用数据库角色来表示用户和用户组。因此,要列出用户,请相应地使用以下命令。

LIST USERS;  -- cassandra version < 2.2

LIST ROLES;  -- cassandra version >= 2.2

来自 CQL 3.x LIST USERS 命令已弃用

您可以通过查询检索 users/roles:

SELECT * FROM system_auth.roles;

参考:https://docs.datastax.com/en/cql-oss/3.x/cql/cql_reference/cqlListUsers.html