11
我正在考虑编写一个CouchDB支持的应用程序来存储敏感数据。是否可以进行设置,以便我可以获得诸如MySQL和PostgreSQL的访问控制之类的东西,系统中的特定用户(Unix系统用户意义上的用户)可以被拒绝或被授予对特定CouchDB数据库的访问权限?CouchDB数据库是否有访问控制,如PostgreSQL和MySQL特权管理?
我正在考虑编写一个CouchDB支持的应用程序来存储敏感数据。是否可以进行设置,以便我可以获得诸如MySQL和PostgreSQL的访问控制之类的东西,系统中的特定用户(Unix系统用户意义上的用户)可以被拒绝或被授予对特定CouchDB数据库的访问权限?CouchDB数据库是否有访问控制,如PostgreSQL和MySQL特权管理?
绝对可以在_users
数据库中设置用户。您可以为每个用户分配角色,组以及任何其他自定义字段。在设计文档中的validate_doc_update
函数中,您可以检查用户角色,并根据该角色批准或拒绝访问。您还可以将用户全局分配为“读者”和“作者”。您可以通过基本HTTP身份验证,OAuth和各种其他方法来验证用户身份。
请参阅wiki上的Security Features Overview和Document Update Validation页面以开始。
优秀的答案。我不确定Dan是否意味着**实际的** Unix系统用户,或者只是多个用户共享一种资源的概念。为了让Unix用户使用他们的Couch凭证登录(例如,通过SSH),您必须为Couch后端编写或查找PAM模块。要让Couch用户使用他们的Unix凭证登录,您必须编写或查找CouchDB身份验证模块以使用系统帐户而不是_users。 – JasonSmith 2011-02-15 04:55:43