`
ivan19861025
  • 浏览: 41922 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

cassandra 学习之旅<三> 内部认证与授权

阅读更多

在关系型数据库中, 我们一般都有用户名,密码登陆, 那么 cassandra如何配置后, 必须使用用户名密码登陆呢.

很简单, 修改配置文件 cassandra.yaml

vim confg/cassandra.yaml

 

authenticator: PasswordAuthenticator

authorizer: CassandraAuthorizer

 

重新启动cassandra, 再次使用./cqlsh 192.168.0.101,此时登陆失败,系统提示如下:

$./cqlsh 192.168.0.101
Connection error: ('Unable to connect to any servers', {'192.168.0.101': AuthenticationFailed('Remote end requires authentication.',)})

 使用如下脚本指定用户名密码即可登陆成功, 

./cqlsh 192.168.0.101 -u cassandra -p cassandra

 使用 PasswordAuthenticator 后, cassandra会默认创建super user,用户名和密码均为:cassandra

那么, 如何修改该super user的密码呢?

 

cassandra@cqlsh> alter user cassandra with password 'cassandra1';

 

执行该cql语句后,密码立即修改生效.

 

下面列出操作用户的cql语法

 

#只有SUPERUSER可创建用户,创建的用户默认为NOSUPERUSER
CREATE USER (user_name) WITH PASSWORD ('password')  [NOSUPERUSER|SUPERUSER]
#只有SUPERUSER可删除用户,用户不能自己删除自己。
DROP USER (user_name)
#列出所有用户
LIST USERS

 

2、授权

对象权限管理基于内部授权,与关系型数据库GRANT/REVOKE语法类似。

语法

GRANT permission_name PERMISSION

| ( GRANT ALL PERMISSIONS ) ON (resource) TO (user_name)

 

REVOKE (permission_name PERMISSION )

| ( REVOKE ALL PERMISSIONS )

ON resource FROM user_name

 

LIST permission_name PERMISSION

| ( 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

 

 

 

 

 

 

 

 

分享到:
评论

相关推荐

    Cassandra单元测试CassandraUnit.zip

    CassandraUnit是一个Cassandra数据操作的单元测试框架,其功能与关系型数据库测试框架DBunit类似,只是其测试对象是Cassandra,下面是一个最简单使用例子: 创建一个用于存储数据的xml文件,命名为 simpleDataSet....

    Java连接cassandra实现简单的增删查demo

    List&lt;User&gt; users = new ArrayList&lt;&gt;(); for (Row row : resultSet) { User user = new User(); user.setId(row.getString("id")); user.setName(row.getString("name")); user.setEmail(row.getString("email...

    spring boot与cassandra集成,使用原生驱动。

    &lt;artifactId&gt;spring-boot-starter-data-cassandra&lt;/artifactId&gt; &lt;/dependency&gt; ``` - 接着,配置`application.properties`文件,设置Cassandra的连接信息: ``` spring.data.cassandra.contact-points=...

    cassandra2.1.2 JDBC最少依赖jar

    请注意,上述代码只是一个基本示例,实际使用时需要替换`&lt;hostname&gt;`、`&lt;keyspace&gt;`、`&lt;username&gt;`和`&lt;password&gt;`为你的Cassandra集群的实际信息。 总结来说,"cassandra2.1.2 JDBC最少依赖jar"是一个包含连接...

    spring boot与cassandra集成,使用JPA方式。

    &lt;artifactId&gt;spring-boot-starter-data-cassandra&lt;/artifactId&gt; &lt;/dependency&gt; ``` 接下来,我们需要配置Cassandra的数据源。在`application.properties`或`application.yml`中,提供Cassandra集群的信息,如主机...

    windows下安装cassandra与C#访问配置

    ### Windows 下安装 Cassandra 与 C# 访问配置 #### 安装 Cassandra 在 Windows 平台上安装 Apache Cassandra 的步骤如下: 1. **下载 Cassandra** 首先访问官方站点 [http://cassandra.apache.org/]...

    java实现SparkSteamming接受发送Kafka消息

    JavaOutputDStream&lt;String&gt; output = wordCountPairs.mapToPair(t -&gt; new Tuple2&lt;&gt;("output_topic", t._1() + ":" + t._2())); KafkaUtils.createDirectStream(jssc, Topics.outputTopic, kafkaParams, output); ...

    cassandra-extra

    安装方式通过从Maven Central提取工件来完成安装: &lt; dependency&gt; &lt; groupId&gt;com.spotify&lt;/ groupId&gt; &lt; artifactId&gt;cassandra-extra&lt;/ artifactId&gt; &lt; version&gt;0.0.1&lt;/ version&gt;&lt;/ dependency&gt;嵌入式卡桑德拉...

    JAVA操作cassandra数据库

    这个驱动允许Java应用程序与Cassandra集群通信。确保在项目中添加相应的依赖: ```xml &lt;dependency&gt; &lt;groupId&gt;com.datastax.oss&lt;/groupId&gt; &lt;artifactId&gt;java-driver-core&lt;/artifactId&gt; &lt;version&gt;4.x.x&lt;/version&gt;...

    cassandra数据库 java链接 jar包

    &lt;groupId&gt;com.datastax.cassandra&lt;/groupId&gt; &lt;artifactId&gt;cassandra-driver-core&lt;/artifactId&gt; &lt;version&gt;3.x.x&lt;/version&gt; &lt;!-- 替换为最新稳定版本 --&gt; &lt;/dependency&gt; ``` 2. **创建Cluster实例**: 连接到...

    cassandra 学习

    ### Cassandra学习知识点详解 #### 一、Cassandra简介与历史 **Cassandra**是一款高性能的分布式NoSQL数据库系统,由Facebook开发并在2008年开源。它最初是为了支持Facebook的收件箱搜索功能而设计的,其核心设计...

    hadoop-2.7.5.zip

    &lt;name&gt;fs.defaultFS&lt;/name&gt; &lt;value&gt;file:///&lt;/value&gt; &lt;/property&gt; &lt;/configuration&gt; ``` 接下来,我们需要配置Hadoop的分布式文件系统(HDFS)参数。在hdfs-site.xml中,指定名称节点和数据节点的数据目录,例如...

    腾讯 APIJSON 6.1.0+ 的 Cassandra 数据库插件,可通过 Maven, Gradle 等远程依赖

    &lt;artifactId&gt;apijson-cassandra&lt;/artifactId&gt; &lt;version&gt;6.1.0+&lt;/version&gt; &lt;/dependency&gt; ``` 对于 Gradle,则在 `build.gradle` 文件中添加: ```groovy implementation 'org.apijson:apijson-cassandra:6.1.0+'...

    xml 做数据库的 留言板 【——转——】

    &lt;datetime&gt;2022-03-01 14:30:00&lt;/datetime&gt; &lt;content&gt;这是我的第一条留言!&lt;/content&gt; &lt;/entry&gt; &lt;entry&gt; &lt;username&gt;用户B&lt;/username&gt; &lt;datetime&gt;2022-03-02 09:45:00&lt;/datetime&gt; &lt;content&gt;很高兴看到这个XML...

    spark-cassandra-bulkloader:使用 spark 将数据上传到 cassandra 的测试应用程序

    spark-submit --master &lt;master&gt; --class uk.co.pinpointlabs.App --input &lt;path&gt; --host &lt;host&gt; --keyspace &lt;keyspace&gt; --table &lt;table&gt; 使用 CqlBulkOutputFormat 使用 datastax cassandra 连接器(当前不起作用...

    java NoSql Cassandra hector

    Java与Cassandra的接口:Hector: Hector是Java客户端库,为Cassandra提供了易于使用的API,使得开发者能方便地在Java应用中集成Cassandra。Hector提供了对Cassandra的各种操作,包括CRUD(创建、读取、更新和删除)...

    Cassandra Java Client.zip

    &lt;version&gt;4.x.x&lt;/version&gt; &lt;!-- 根据最新版本号替换 --&gt; &lt;/dependency&gt; ``` 配置驱动时,我们需要指定Cassandra集群的地址、端口以及其他参数,这通常在应用的配置文件中完成。 三、连接管理 连接管理是Cassandra...

    cassandra-maven-plugin

    &lt;artifactId&gt;cassandra-maven-plugin&lt;/artifactId&gt; &lt;version&gt;2.0.0-1-klappo&lt;/version&gt; &lt;configuration&gt; &lt;cqlVersion&gt;3.0&lt;/cqlVersion&gt; &lt;keyspace&gt;userservice&lt;/keyspace&gt; &lt;addTestClasspath&gt;true&lt;/...

    nosql cassandra学习教程

    Cassandra是一个混合型的非关系的数据库,类似于Google的BigTable。其主要功能比Dynomite(分布式的Key-Value存储系统)更丰富,但支持度却不如文档存储MongoDB(介于关系数据库和非关系数据库之间的开源产品,是非...

    Cassandra个人学习笔记总结

    ### Cassandra 1.0新特性解析与集群部署规划 #### 一、Cassandra 1.0新特性概览 Cassandra 1.0版本引入了一系列关键改进,旨在增强其存储能力、读写效率以及整体系统稳定性。以下是该版本中值得注意的新特性: 1....

Global site tag (gtag.js) - Google Analytics