MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

L'authentification de la stratégie locale Passport semble ne fonctionner que sur localhost avec une instance MongoDB partagée

OK - j'ai compris.

Sur mon système local, j'avais une version plus récente de node, mais sur ma version déployée (sur AWS ElasticBeanstalk), il utilisait la v0.10.36.

Si vous regardez le code pour passport-local-mongoose vous verrez ceci :

var pbkdf2DigestSupport = semver.gte(process.version, '0.12.0');
...
var pbkdf2 = function(password, salt, callback) {
  if (pbkdf2DigestSupport) {
    crypto.pbkdf2(password, salt, options.iterations, options.keylen, options.digestAlgorithm, callback);
  } else {
    crypto.pbkdf2(password, salt, options.iterations, options.keylen, callback);
  }
};

Donc, si les deux versions différentes du nœud en ont une au-dessus de 0.12.0 et une en dessous, vous obtiendrez des fonctionnalités de chiffrement différentes.