Comment écrire une mangouste requête pour filtrer les sous-documents

J'ai une Mangouste schéma appelé "Utilisateurs" qui a un "Rôle" sous-document en tant que l'une de ses variables comme:

var UserSchema = new mongoose.Schema({
    email: { type: String, required: true, unique: true },
    password: { type: String, required: true },
    roles: [ { type: Number, ref: 'Role' } ]
});

var RoleSchema = new mongoose.Schema({
    _id: Number,
    name: { type: String, required: true, unique: true },
    description: { type: String, required: true }
});

Je veux créer une Mangouste requête qui permettra de trouver tous les utilisateurs avec des rôles.les noms de "admin" ou "propriétaire". J'ai essayé d'utiliser cette requête, ce qui me semblait, mais je n'ai pas tout les utilisateurs lorsque j'utilise le where...in partie.

var roles = ["owner", "admin"];
User.find()
    .populate('roles')
    .where('roles.name').in(roles)
    .sort({'_id': 1})
    .exec(function (err, users) {
        res.send(users);
    });

Quelqu'un peut-il me dire d'où ma logique est faux?