我不希望普通用戶能夠創建數據庫。CouchDB和PouchDB普通用戶可以創建數據庫
在被褥屏幕/ _utils中,以普通用戶身份登錄時,所有功能都按預期運行。只有管理員可以創建數據庫。
但是,當我將我的pouchDB與couchDB同步時,普通用戶也可以創建(複製?)數據庫。我想添加新的數據庫僅限於管理員用戶。
另外我剛剛注意到,即使用戶被限制,現有的數據庫也會被編輯。
我該如何解決這個問題?
var remoteCouch = http://testuser:[email protected]{domain}.iriscouch.com/testdb;
PouchDB.debug.disable();
if (remoteCouch) {
sync();
} else {
console.log("No remote server.");
}
function sync() {
var opts = {live: true};
db.replicate.to(remoteCouch, opts, syncError);
db.replicate.from(remoteCouch, opts, syncError);
}
編輯
TESTUSER也沒有/ _config /管理員
TESTUSER:
{ "_id": "org.couchdb.user:testuser", "_rev": "1-7d28b3388a62cfca103cbe3642549bee", "password_scheme": "pbkdf2", "iterations": 10, "type": "user", "name": "testuser", "roles": [ "testuser" ], "derived_key": "2181a44141d6d6aa2061bb2c5c057451acc6461e", "salt": "2184888b099f37605feca0a22e5b6bb9" }
沒有CouchDB的是不是在派對模式。我修正了這一點。 curl -x把CMD給出一個未經授權的錯誤:你不是服務器管理員。但是用remoteCouch將我的pouchdb複製到http:// someuser:[email protected]:5984/somedatabase會添加新的數據庫。 –
當我查看/ _config/admins時,我只看到一個服務器管理員(不是testuser)。用戶只在/ _users中。我還使用/ _user/testuser doc –
編輯了該問題當您查看Chrome控制檯時,您看到了什麼?你應該看到一個正常的PUT請求來創建數據庫。它還將包含所有標題信息,告訴你用戶名和密碼是什麼。我很確定數據庫已經存在或者其他事情正在發生。 PouchDB沒有比捲曲更多的特殊憑據... – nlawson