15

我正在使用 Java 1.7.0_60-b19 在 Cassandra 2.0.8 上的 Ubuntu 14.10 上登录

cqlsh -u cassandra -p cassandra

我在跑:

CREATE USER a WITH PASSWORD 'a' NOSUPERUSER;

我收到错误:

Bad Request: Only superusers are allowed to perform CREATE USER queries

推理的问题 - 我以超级用户身份登录。

我的问题是:如果我以 Cassandra 用户身份登录 cqlsh,为什么会告诉我我不是超级用户?

4

2 回答 2

21

您需要在 cassandra.yaml 文件中启用 PasswordAuthenticator。要启用 PasswordAuthenticator,您需要更改 cassandra.yaml 中的验证器属性

改变

authenticator: AllowAllAuthenticator

authenticator: PasswordAuthenticator

使用以下命令登录后,您将能够添加新用户

cqlsh -u cassandra -p cassandra
于 2014-06-14T18:55:26.573 回答
2

1 在您的计算机上找到并打开“cassandra.yaml”文件。

2 找到并删除文件中的“身份验证器:AllowAllAuthenticator”。

3 将其替换为“身份验证器:PasswordAuthenticator”

4 另外,添加这一行:'authorizer: CassandraAuthorizer'

重新启动卡桑德拉。如果你使用 brew,你可以重新使用

brew 服务重新启动 cassandra

然后再次登录cql shell:

cqlsh -u cassandra -p cassandra localhost;

创建一个新的超级用户

使用 SUPERUSER = TRUE 和 LOGIN = TRUE 和 PASSWORD = '' 创建角色;

退出卡桑德拉

出口

使用新的超级用户登录名登录

cql -u

然后你输入你的密码,你就进去了!

https://gist.github.com/GHesericsu/83aca87b60c853945e242b3b9a6ceef0/edit

于 2020-07-15T04:33:25.277 回答