我有註冊用戶下面的方法:如何自動將角色分配給CouchDB用戶?
// Registration method
exports.register = function(req, res) {
var username = req.body.username,
password = req.body.password,
first = req.body.first;
last = req.body.last;
role = req.body.institution;
nano = require('nano')('http://127.0.0.1:5984');
var users = nano.use('_users');
var user = {
"_id": "org.couchdb.user:" + username,
"name": username,
"type": "user",
"roles": [],
"password": password,
"realname": first + " " + last
};
users.insert(user, function(err, body) {
if(err) {
res.send(err.reason, err.status_code);
} else {
res.send(body, 200);
}
});
};
正如你所看到的,我有我想的「角色」陣列中設置一個變量叫做作用。不幸的是,你可能知道,CouchDB只允許管理員設置角色。我對此沒有問題,但是我將這些角色當作機構使用,所以我希望註冊用戶能夠選擇他們正在註冊的機構,因此它應該自動將這些角色分配給他們。沒有將我的管理憑據硬編碼到此方法中,即 nano.config.url = "http://admin:[email protected]:5984/"
如我所述,如何自動將新用戶分配給他們指定的角色?
謝謝!你是對的,這是一個非安全功能。我認爲我會很聰明並且使用角色而不是添加自己的領域,但是你解釋它的方式是有道理的。謝謝! – 2013-03-10 02:44:56