========================================================

启用用户认证和创建超级用户

需要针对每个节点进行配置修改和重启,但授权操作仅需要在任一节点进行即可。

// 修改配置文件 cassandra.yaml 并重启
authenticator: PasswordAuthenticator
authorizer: CassandraAuthorizer // 使用默认账号登录
python27 ./cqlsh.py -u 'cassandra' -p 'cassandra' 192.168.1.101 // 修改system_auth,避免单点故障
ALTER KEYSPACE system_auth WITH REPLICATION = { 'class' : 'SimpleStrategy', 'replication_factor' : 3 }; // 创建带有超级权限的用户
CREATE ROLE cassandra_dba WITH SUPERUSER = true AND LOGIN = true AND PASSWORD = 'cassandra_dba.com'; // 使用新账号登录
python27 ./cqlsh.py -u 'cassandra_dba' -p 'cassandra_dba.com' 192.168.1.101 // 禁用默认账号
ALTER ROLE cassandra WITH SUPERUSER = false AND LOGIN = false;

========================================================

设置超级用户

// 创建超级用户
CREATE USER test WITH PASSWORD '123456' SUPERUSER; // 创建普通用户
CREATE USER test1 WITH PASSWORD '123456' NOSUPERUSER; // 修改用户
ALTER USER test WITH PASSWORD '654321' ( NOSUPERUSER |SUPERUSER ); // 删除用户
DROP USER test; // 列出所有用户
LIST USERS;

========================================================

用户创建和授权

permission_name: ALL/ALTER/AUTHORIZE/CREATE/DROP/MODIFY/SELECT
resource: ALL KEYSPACES/KEYSPACE keyspace_name/TABLE keyspace_name.table_name // 对用户授权
GRANT permission_name ON resource TO user_name; // 对用户取消权限
REVOKE permission_name ON resource FROM user_name; // 列出用户权限
LIST permission_name ON resource OF user_name;

demo:

// 如创建exps_rw用户,并授予对数据库exps的读写权限
CREATE USER exps_rw WITH PASSWORD '123.com' NOSUPERUSER;
GRANT SELECT ON KEYSPACE exps TO exps_rw;
GRANT MODIFY ON KEYSPACE exps TO exps_rw; // 查看exps_rw用户在数据库exps上的权限
LIST ALL ON KEYSPACE exps OF exps_rw;

========================================================

授权数据存储

用户账号和用户权限存放在数据库system_auth中。

// 查看用户
SELECT * FROM system_auth.roles; // 查看用户权限
SELECT * FROM system_auth.role_permissions;

抄自:https://blog.csdn.net/a476585070/article/details/54962224

Cassandra--启用用户认证和用户管理的更多相关文章

  1. Nodejs之MEAN栈开发(八)---- 用户认证与会话管理详解

    用户认证与会话管理基本上是每个网站必备的一个功能.在Asp.net下做的比较多,大体的思路都是先根据用户提供的用户名和密码到数据库找到用户信息,然后校验,校验成功之后记住用户的姓名和相关信息,这个信息 ...

  2. flask设置cookie,设置session,模拟用户认证、模拟管理后台admin、模拟用户logout

    设置cookie HTTP协议是无状态的,在一次请求响应结束后,服务器不会留下关于客户端状态的信息.但是对于某些web程序来说,客户端的信息有必要被记住,比如用户的登录状态,这样就可以根据用户的状态来 ...

  3. mongodb之用户/认证/角色/权限管理

    前言 用户权限管理很重要,只给需要的权限,防止应用系统漏洞导致脱库 认证和授权 Authentication 认证识别,解决我是谁 Authorization 操作授权,我能做什么 认证机制 MONG ...

  4. 基于 django 自带的用户认证进行用户认证

    django admin 默认已经存在了一个用户认证,这个时候可以偷个小懒,直接用 django 自带的,就不需要自己写用户认证了 1.目录结构: 2.代码 在 settings.py 中添加一行 # ...

  5. restful架构风格设计准则(五)用户认证和session管理

    读书笔记,原文链接:http://www.cnblogs.com/loveis715/p/4669091.html,感谢作者! Authentication REST提倡无状态约束,这就要求:用户状态 ...

  6. [Django实战] 第4篇 - 用户认证(用户登录)

    今天来实现用户登录模块 首先,我们创建一个表单(forms.py): from django import forms from django.contrib.auth.models import U ...

  7. MongoDB增加用户认证: 增加用户、删除用户、修改用户密码、读写权限、只读权限

    1.添加并验证用户 > use admin> db.addUser("zjx","tsjianxin") #添加用户 > db.auth(&q ...

  8. SVN+Apache域用户认证配置方法_Windows(转,重新排版,部分内容更新优化)

    欢迎和大家交流技术相关问题: 邮箱: jiangxinnju@163.com 博客园地址: http://www.cnblogs.com/jiangxinnju GitHub地址: https://g ...

  9. [SharePoint 2010]关于基于声明(Claims)的用户认证模式

    转:http://blog.csdn.net/zw_2011/article/details/7417132 SharePoint 2010在用户认证模式上,较之以前的版本有了非常大的改变.在Shar ...

随机推荐

  1. java的类class 和对象object

    java 语言的源代码是以类为单位存放在文件中,已public修饰的类名须和存放这个类的源文件名一样.而 一个源文件中只能有一个public的类,类名的首字母通常为大写. 使用public修饰的类可以 ...

  2. mysql中sql查询使用注意

    1.注意DESC关键字仅适用于在它前面的列名(birth):不影响species列的排序顺序. SELECT name, species, birth FROM pet ORDER BY specie ...

  3. js 唤起APP

    常常有这样的场景,咱们开发出来的APP需要进行推广,比如在页面顶部来一张大Banner图片,亦或一张二维码.但往往我们都是直接给推广图片加了一个下载链接(App Store中的).所以咱们来模拟一下用 ...

  4. 装饰器-wrapper

    我跟别人说我精通python,别人问我wrapper是啥,我说不知道,尼玛,原来wrapper就是装饰器,熟的不得了啊,英语真是我的克星啊. 闭包 closure 在认识装饰器之前先认识下闭包 闭包, ...

  5. FMX取得屏分辨率

    procedure Tfrm_Main.FormCreate(Sender: TObject); var ScreenSvc: IFMXScreenService; Size: TPointF; be ...

  6. Python中替换敏感字

    敏感词在文本文件document.txt中,当用户输入敏感词语时,用*号代替并打印出来 document.txt中的文件内容如下: 北京 上海 广州 深圳 领导 test.py content=inp ...

  7. golang写的反弹shell(自作孽不可活,切记,切记!)

    仅作安全研究 package main import ( "os/exec" "go-pop3" "log" "strings&q ...

  8. 排序jq

    var arr = [1,2,3,4,5,6,7]; arr.sort(function (a, b) { 从大到小 if (a > b) { return 1; } else if (a &l ...

  9. ES6 对象的扩展 Object.is()

    ES5 比较两个值是否相等,只有两个运算符:相等运算符(==)和严格相等运算符(===).它们都有缺点,前者会自动转换数据类型,后者的NaN不等于自身,以及+0等于-0. ES6 提出“Same-va ...

  10. weex--手机调试

    Weex Playground 我的是小米应用市场,没有搜索到,不过这是官方的二维码,我是扫描这个二维码下载的.