这可以分解为两部分:如何限制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