欢迎投稿

今日深度:

[Cassandra] Cassandra 设置用户权限,cassandra用户权限

[Cassandra] Cassandra 设置用户权限,cassandra用户权限


1. 创建用户账号

# 创建非超级用户
cassandra@cqlsh> CREATE USER user1 WITH PASSWORD 'password1' NOSUPERUSER;
# 创建超级用户
cassandra@cqlsh> CREATE USER user2 WITH PASSWORD 'password2' SUPERUSER;
# 查看所有用户
cassandra@cqlsh> LIST USERS;

 name        | super
-------------+-------
   cassandra |  True
       user1 | False
       user2 |  True

(11 rows)
cassandra@cqlsh> 

注意:

只有SUPERUSER可以创建用户,创建的用户默认为NOSUPERUSER;

只有SUPERUSER可以删除用户,任何用户不能删除自己。

2. 账号授权

  • 授权:

GRANT permission_name PERMISSION ON resource TO user_name;

GRANT ALL PERMISSIONS ON resource TO user_name;

  • 收回权限:

REVOKE permission_name PERMISSION ON resource FROM user_name;

REVOKE ALL PERMISSIONS ON resource FROM user_name;

  • 查看权限:

LIST permission_name PERMISSION ON resource OF user_name NORECURSIVE;

LIST ALL PERMISSIONS ON resource OF user_name NORECURSIVE;

其中,

permission_name为:  ALL/ALTER/AUTHORIZE/CREATE/DROP/MODIFY/SELECT

resource为:ALL KEYSPACES/KEYSPACE keyspace_name/TABLE keyspace_name.table_name


# 给用户user1授予KEYSPACE test的所有权限
cassandra@cqlsh> GRANT ALL PERMISSIONS ON KEYSPACE test TO user1;
# 查看已授权情况
cassandra@cqlsh> LIST ALL PERMISSIONS ON KEYSPACE test OF user1;

 role  | username | resource        | permission
-------+----------+-----------------+------------
 user1 |    user1 | <keyspace test> |     CREATE
 user1 |    user1 | <keyspace test> |      ALTER
 user1 |    user1 | <keyspace test> |       DROP
 user1 |    user1 | <keyspace test> |     SELECT
 user1 |    user1 | <keyspace test> |     MODIFY
 user1 |    user1 | <keyspace test> |  AUTHORIZE

(6 rows)
cassandra@cqlsh> 
# 取消user1对test的CREATE权限
cassandra@cqlsh> REVOKE CREATE PERMISSION ON KEYSPACE test FROM user1;
cassandra@cqlsh> 
# 再次查看,user1对test已经没有CREATE权限了
cassandra@cqlsh> LIST ALL PERMISSIONS ON KEYSPACE test OF user1;

 role  | username | resource        | permission
-------+----------+-----------------+------------
 user1 |    user1 | <keyspace test> |      ALTER
 user1 |    user1 | <keyspace test> |       DROP
 user1 |    user1 | <keyspace test> |     SELECT
 user1 |    user1 | <keyspace test> |     MODIFY
 user1 |    user1 | <keyspace test> |  AUTHORIZE

(5 rows)
cassandra@cqlsh> 

3. 删除用户账号

cassandra@cqlsh> DROP USER user1;
cassandra@cqlsh> DROP USER user2;

www.htsjk.Com true http://www.htsjk.com/cassandra/25970.html NewsArticle [Cassandra] Cassandra 设置用户权限,cassandra用户权限 1. 创建用户账号 # 创建非超级用户cassandra@cqlsh CREATE USER user1 WITH PASSWORD 'password1' NOSUPERUSER;# 创建超级用户cassandra@cqlsh CREATE USER user2 WITH...
相关文章
    暂无相关文章
评论暂时关闭