2011-05-02 59 views
3

我正在嘗試設置一個CouchDB數據庫,該數據庫可以公開寫入,並且只能由「管理員」角色讀取。我怎樣才能做到這一點。是否有類似validate_doc_update函數來訪問文檔?CouchDB只寫數據庫

+0

我想將日誌/分析數據存儲在數據庫中,不應與其他任何人共享......太糟糕了如果沒有應用服務器來處理安全元素,這種功能就無法使用。 – 2011-09-09 11:44:11

回答

1

一種可能的解決方法是「濫用」Apache(儘管不是100%安全):

您可以使用Apache來禁止從大家除了這是管理員使用......這樣,用戶就可以寫,但不能讀取和管理員可以讀取那些特定主機GET ...

如果將Apache配置爲反向代理,您甚至可以爲管理員(讀取+寫入)和用戶(只寫入)設置不同的URL ...

1

在wiki上檢出this page,它提供了在數據庫級別設置讀/寫級安全性的介紹。

從CouchDB 1.1.0開始,不可能擁有寫入權限,但也不能讀取數據庫的權限。你可以做的是寫入數據庫A,然後將其複製到數據庫B中,並且只有管理員可以讀取數據庫B.

+0

我沒有找到任何方法來做我想要的文件。事實是,當您將Reader用戶或Reader角色影響到數據庫時,數據庫將變爲私有(您需要進行身份驗證才能寫入)。 – Maxime 2011-05-04 13:28:09

+0

儘管這個答案來自我的拱門剋星,我編輯推薦最常見的解決方法和+1 :) – JasonSmith 2011-09-02 02:49:51