Его можно разбить на две части:Как ограничить создание учетной записи Meteor администратором?
1) Как указать учетную запись как администратор?
Это то, что у меня сейчас происходит, и это не работает.
Meteor.startup(function() {
if (Meteor.users.find().count() === 0) {
console.log("Adding fake data");
Accounts.createUser({username:"admin", email:"[email protected]", password:"1234", admin: true, profile:{name:"Administrator"}});
}
Свойство «admin» пользователя не работает. Я не уверен, что вставить его в профиль - это правильная вещь ... Любые предложения здесь?
2) Как я могу ограничить создание пользователей только администраторами?
Это то, что я собираюсь, и это также не работает
Meteor.users.allow({
insert: function(userId, doc) {
// only admin and create
return (userId && Meteor.users(userId).admin);
},
Я рассмотрю это и вернусь к вам. выглядит хорошо, хотя – Chet
Пакет метеорных ролей также может представлять интерес. Пакет авторизации @Cuberto - это вилка метеорных ролей. Разница заключается в том, что авторизация позволяет разделить роли и разрешения, в то время как роли обрабатывают все одинаково (в основном, только теги). Таким образом, роли, как правило, немного проще, тогда как авторизация разрешает вложенные разрешения внутри ролей. Метеорные роли - https://github.com/alanning/meteor-roles – alanning
btw, вот пример ограничения создания нового пользователя: https://github.com/alanning/meteor-roles/blob/master/examples/ mini-pages/server/server.js # L77-L85 – alanning