- Security Fix: Do not publish all of people collection.

Thanks to Adrian Genaid !
This commit is contained in:
Lauri Ojansivu 2018-06-12 21:13:50 +03:00
parent 53bd527947
commit dda49d2f07

View file

@ -1,7 +1,25 @@
Meteor.publish('people', (limit) => {
Meteor.publish('people', function(limit) {
check(limit, Number);
return Users.find({}, {
limit,
sort: {createdAt: -1},
});
if (!Match.test(this.userId, String)) {
return [];
}
const user = Users.findOne(this.userId);
if (user && user.isAdmin) {
return Users.find({}, {
limit,
sort: {createdAt: -1},
fields: {
'username': 1,
'profile.fullname': 1,
'isAdmin': 1,
'emails': 1,
'createdAt': 1,
'loginDisabled': 1,
},
});
} else {
return [];
}
});