Dodawanie dodatkowych informacji w obiekcie użytkownika w paszportu.js lub gdzieś w sesji

Chcę dodać niestandardowe klucze do obiektu użytkownika pochodzącego z mongodb, który będzie używany przez passport.js, ale zastanawiam się, dlaczego nie mogę dodać więcej kluczy do tego obiektu, oto mój kod.

passport.use(new LocalStrategy(
    function(username, password, done) {
        Users.model(false).findOne( {email:username,password:encodePassword(password) }, function(err, user) {
            if( err ){ // validation failed
                console.log('Error Occurred');
                return done(err);
            }
            else if(user != null){

                user['customKey'] = "customValue"; // it is not setting

                console.log(user);

                return done(null, user);
            }
            else {

                return done(null, false, { message: 'Incorrect username.' });
            }
        });
    }
));
///Session handling
passport.serializeUser(function(user, done) {
    done(null, user.id);
});

passport.deserializeUser(function(id, done) {
    Users.model(false).findById(id, function(err, user) {
        done(err, user);
    });
});

questionAnswers(2)

yourAnswerToTheQuestion