使用python创建cassandra db用户/角色

使用python创建cassandra db用户/角色,python,cassandra,cql,cassandra-3.0,Python,Cassandra,Cql,Cassandra 3.0,我正在尝试使用python驱动程序在cassandra中创建用户。 定义变量密码 password=abcde rows = session.execute("create user test_user with 'password') CQL查询]message=“行密码需要K_密码”中的语法错误 您的语法中缺少密码保留字。此外,创建用户仅用于3.x之前的Cassandra版本。如果您使用的是3.x之前的版本,则为创建角色 3.x以下版本 3.x+ 请注意,较新版本要求密码和passwor

我正在尝试使用python驱动程序在cassandra中创建用户。 定义变量密码

password=abcde
rows = session.execute("create user test_user with 'password') 
CQL查询]message=“行密码需要K_密码”中的语法错误


您的语法中缺少
密码
保留字。此外,
创建用户
仅用于3.x之前的Cassandra版本。如果您使用的是3.x之前的版本,则为
创建角色

3.x以下版本

3.x+

请注意,较新版本要求密码和
password
之间用等号('=')分隔

因此,在Python脚本中,它看起来像这样:

rows = session.execute("create role test_user with password='" + password1 + "' and login=true")

你正在运行哪个版本的卡桑德拉?@cadCassandra 3.11。1@cad好的,然后根据我的例子,确保使用等号和“角色”而不是“用户”另外,请尝试将密码文本置于引号中。具有上述语法的角色可以正常工作,但无法登录,因为未提及login=true。并且尝试了login=true,它会以无效的synatx出错。
CREATE role test\u user with password='“+password1+”,login=true
@cad edit make。对不起,我以为密码是最难的部分,其余的你都能猜出来。您必须将`and login=true`视为子字符串,并连接到原始字符串。
CREATE USER test_user WITH PASSWORD 'abcde';
CREATE ROLE test_user WITH PASSWORD='abcde';
rows = session.execute("create role test_user with password='" + password1 + "' and login=true")