2011-03-24 60 views
4

我想限制用戶權限,以便普通用戶只能讀/寫自己的用戶文檔。CouchDB對_users數據庫的讀/寫限制

我設法設置寫權限,使用戶只能編輯自己的文檔(通過設計文檔中的validate_doc_update函數)。

現在我只需限制用戶查看用戶列表或其他用戶文檔。如果我將數據庫讀取權限設置爲'_admin'角色,那麼用戶將無法查看他們自己的文檔,這不是我想要的。

這可以用更一般的方式來完成嗎?即設置讀取權限,以便用戶只能讀取數據庫中的某些特定文檔?

回答

1

不幸的是,每個文檔的讀取控制可能是而不是

但是,如果您使用list function,則可以執行「查詢後過濾器」,以限制基於當前會話用戶的查看查詢的結果。 (通過參數userCtx

+1

正如其他人在類似的問題中提到的一樣,只要輸入url視圖或_all_docs會給任何人讀取權限? – 2011-09-06 12:02:46

+1

這個改變了嗎,我知道這已經過去了一年,CouchDB已經發展了。你現在可以調整每個文件的閱讀權限嗎? – Costa 2012-03-24 18:10:44

0

在CouchDB中創建一個新的數據庫很便宜,它的設計目的是儘可能使數據儘可能靠近需要它的用戶。 所以建議的方法是爲每個用戶設置一個數據庫。

+0

看起來像一個死鏈接? – thejh 2013-03-26 21:08:03

+0

@thejh是的,不幸的是Couchbase已經清除了許多舊帖子。我已刪除鏈接。 – 2013-03-27 11:37:55