couchdb默认是把权限关闭的,打开方法为进入Futon->Configuration->couch_httpd_auth->require_valid_user改为true.
或者直接修改其local.ini文件,路径如:
/opt/couchdb-1.0.1/etc/couchdb/local.ini
一、couchdb中的授权用户分为三种
1、database readers:针对每个数据库,此类用户可以修改普通文檔,不能修改_design文档。
2、database admins:针对每个数据库,可以修改些数据库的admins和readers,可以修改普通文檔和_design文档.设置数据库的游览限制,执行临时view.但不能创建删除数据库。
3、server admins:针对每个couchdb服务,拥有所有权限。
二、授权用户的创建
对于server admins,可以直接点Futon右下角的Setup more admins创建用户,也可修改local.ini。
database readers和database admins的用户就需要在_users里插入文档实现,格式如下:
{
"_id" : "org.couchdb.user:joe",
"type" : "user",
"name" : "joe",
"roles" : ["erlanger"],
"password_sha" : "fe95df1ca59a9b567bdca5cbaf8412abd6e06121",
"salt" : "4e170ffeb6f34daecfd814dfb4001a73"
}
对于_id,必须以org.couchdb.user:为前綴,然后加上name的值,type也只能为user,roles为一字符串数组.password_sha是密碼加上salt的SHA-1 hash值.
三、权限应用于数据库
随便进入一个数据库,在上方点Security,設定格式如:
{
"admins" : {
"names" : ["joe", "phil"],
"roles" : ["boss"]
},
"readers" : {
"names" : ["dave"],
"roles" : ["producer", "consumer"]
}
}
此文件位于/db_name/security,如若admins和readers都为空,則意味者此数据庫只能由server admins全部控制,任何用户可以修改此数据库的文档(除_design文档).
分享到:
相关推荐
CouchDB是一款面向文档、分布式且具有容错性的NoSQL数据库系统,它使用JSON来存储数据,JavaScript作为查询语言并通过HTTP进行通信。CouchDB的设计目标之一是易于复制和扩展,这意味着可以在多个服务器之间轻松地...
视图是CouchDB的一种强大的数据处理工具,通过编写JavaScript Map和Reduce函数,可以对文档进行聚合、过滤和排序。Map函数遍历所有文档,将结果发送到Reduce函数进行进一步处理。视图可以动态生成,无需预先构建索引...
6. **安全与认证**:jcouchdb支持CouchDB的用户管理和权限控制,如创建、管理用户和角色,设置数据库访问权限。 【jcouchdb-1.0.1-1.jar】是jcouchdb库的特定版本,其中包含了jcouchdb的所有类和方法,供Java开发者...
- **文档存储**:CouchDB以JSON格式存储数据,每个数据单元称为文档,文档包含一系列键值对,易于理解和操作。 - **RESTful API**:CouchDB使用HTTP协议进行通信,遵循REST原则,使得通过Web服务与数据库交互变得...
- **文档(Documents)**:CouchDB中的数据以JSON格式的文档形式存储,每个文档都有一个唯一的_id和_rev(修订版本号),用于版本控制和并发访问。 - **数据库(Databases)**:CouchDB中的数据组织在数据库中,...
5. **安全性和权限控制**:阐述了如何设置用户认证、权限管理和数据加密等安全措施。 6. **高可用性和扩展性**:讲解了如何通过复制、分区等技术实现CouchDB集群的高可用性和水平扩展。 7. **案例分析**:通过具体的...
4. 操作文档:对数据库中的文档进行增删改查操作。 5. 定义和使用视图:如果需要索引和查询数据,可以创建视图。 6. 处理错误和异常:在操作过程中,应适当地处理可能出现的错误和异常。 7. 关闭连接:在完成所有...
8. **安全与权限**:支持角色和权限控制,可以为不同的用户或角色设置读写权限,确保数据安全性。 **CouchDB在Windows上的安装**: - 解压缩“apache-couchdb-3.1.1.zip”,得到“apache-couchdb-3.1.1.msi”安装...
1. 视频课程:提供的视频课程涵盖了CouchDB的基本概念、安装配置、数据操作、复制与同步、安全与权限管理等多个方面,是快速掌握CouchDB的好帮手。 2. 心梓知识:心梓知识可能包含了关于CouchDB的深入讲解、实践案例...
- **地理空间索引**:介绍如何使用CouchDB进行地理位置数据的存储和查询。 - **安全性和授权**:讲解如何设置用户权限,确保数据的安全访问。 - **备份与恢复**:提供备份策略和灾难恢复计划的建议。 #### 六、案例...
3. 身份验证和权限:CouchDB提供了基于角色的访问控制(RBAC),确保数据安全。 4. MapReduce:学习如何编写Map和Reduce函数,进行复杂的数据聚合和检索。 5. 复制和同步:CouchDB的实时复制功能使得多数据中心或...
【位子:CouchDB包装器】是一个专为CouchDB设计的TypeScript库,它提供了方便、高效的接口,使得开发者能够更轻松地在TypeScript环境中与CouchDB数据库进行交互。CouchDB是一款开源的非关系型(NoSQL)文档型数据库...
Pouchdb-access插件模仿了这一机制,使得在本地PouchDB数据库中也可以实现类似的权限控制,这对于需要在客户端进行数据存储和管理的应用尤其重要。 **插件使用** 使用Pouchdb-access,开发者首先需要安装插件,这...
2. **数据库操作**:用户可以创建、删除和列举CouchDB中的数据库,并对数据库进行读写操作,例如保存、更新和删除文档。 3. **文档处理**:Sofa提供了丰富的API来处理CouchDB中的JSON文档,包括创建、获取、更新和...
10. **安全与认证**:CouchDB支持基本的HTTP认证和OAuth,可以设置用户权限,限制对数据库和文档的访问。 11. **RESTful API**:CouchDB使用HTTP协议提供了一套完整的RESTful API,允许通过简单的HTTP方法(GET、...
6. **错误处理**:封装还包括对可能出现的错误进行捕获和处理,例如网络问题、数据库不存在、权限错误等,以提供健壮的API。 7. **性能优化**:考虑到效率,可能还需要实现批量操作,比如批量插入文档,以及使用...
CouchDB 则是一个开源的文档数据库系统,它支持JSON文档、版本控制和通过HTTP进行的数据同步。在开发Web应用时,PouchDB 允许开发者在客户端存储和操作数据,同时与服务器上的CouchDB保持数据的一致性。 "pouch-...
CouchDB 是一个开源的、基于文档的 NoSQL 数据库,它支持多版本并发控制和自动冲突解决。其最大的特点之一是“面向文档”的存储方式,以及内置的复制功能,这使得数据可以在多个服务器、设备之间轻松地进行同步。 ...