修改conf目錄下cassandra.yaml文件
1.將authenticator修改為PassWordAuthenticator ,決定是否繼續用戶登錄
將authorizer修改為CassandraAuthorizer,通過授權決定登錄之后用戶具有哪些權限
重新啟動cassandra并且根據默認用戶登錄cqlsh,用戶名密碼都是cassandra
2. ./cqlsh –u cassandra –p cassandra
如果要修改默認用戶,進入cqlsh后,一般都是創建一個新的超級用戶,然后刪除默認的cassandra用戶,或者將其用戶類型修改為NOSUPERUSER
CREATE USER test WITH PASSWORD '123456' SUPERUSER; //創建一個超級用戶
CREATE USER test1 WITH PASSWORD '123456' NOSUPERUSER; //創建一個普通用戶
ALTER USER test WITH PASSWORD '654321' ( NOSUPERUSER |SUPERUSER ); //修改用戶
DROP USER cassandra; //刪除默認用戶
LIST USERS; //顯示所有用戶和用戶類型
3.創建一個新的超級用戶作為管理員,然后就可以創建普通用戶,通過授權使其只具有操作某一keyspace或者table的權限,對象權限管理基于內部授權,與關系型數據庫GRANT/REVOKE語法類似,通過設置permissions_validity_in_ms選項調整權限有效期,授權語句如下:
GRANTpermission_name ON resource TO user_name //增加某一權限
REVOKEpermission_name ON resource FROM user_name//刪掉某一權限
LISTpermission_nameON resource OF user_name
其中permission_name為如下,你可以賦予某幾個權限,也可以賦予ALL
ALL,ALTER,AUTHORIZE,CREATE,DROP, MODIFY,SELECT
resource為
ALL KEYSPACES
KEYSPACE keyspace_name
TABLE keyspace_name.table_name
授權完畢之后,可以通過system_auth中的role_permissions表來查詢用戶的權限,如果所建立的普通用戶只能操作特定的keyspace,這個時候就需要使用
管理員賬號來登陸。
新聞熱點
疑難解答