我想獲得一些關於如何構建我的CouchDB應用程序的用戶數據的建議。如何限制CouchApp訪問CouchDB的`_user`表?
以下是我們正在構建的內容:我們正在創建一套應用程序(主要利用html5的視頻api)來培訓不同技能的人。我們將從幾個簡單的視頻講座開始,再加上互動活動。我們希望保存個人用戶的進度,並且在不久的將來,我們希望創建一些用戶在小型和大型團體中進行的迷你課程。多個用戶可以參與相同的活動(例如google文檔),也可以在一段較長的時間內(如wiki)參與相同的活動。
我擔心的是私人用戶數據。最終,對我們和用戶來說,這是最簡單的方式,讓他們用自己的電子郵件地址和密碼註冊。但是,在CouchDB的_user數據庫中,對數據的讀取訪問本質上是公開的,我寧願不公開所有用戶的電子郵件地址。如何使這些電子郵件地址私密是我最關心的問題。另外,如果我們可以讓所有的用戶數據都是私人的,除非用戶選擇公開,否則會更好。
我已經想到了幾個選項,並通過這篇文章和許多其他在wiki上寫着:http://wiki.apache.org/couchdb/PerDocumentAuthorization
我真的沒有任何東西走向尚未傾斜,並希望一些建議。
真相?因此,如果我以特定用戶身份登錄,我無法閱讀其他用戶的數據? – Costa 2012-03-26 18:59:39
是的,但僅限於_users數據庫。 – 2012-03-27 09:30:09
剛剛測試過,效果非常好。用戶可以獲取POST和(可能)刪除他們自己的_user文檔,但甚至不能讀取其他人的文檔。當他們獲取他人的文檔時,他們會在回覆中「失蹤」。其他用戶甚至存在的唯一提示是_user db上的doc_count。非常感謝Marcello! – Costa 2012-03-27 16:20:37