sql >> Databasteknik >  >> NoSQL >> MongoDB

Auth för lokal strategi för pass verkar bara fungera på localhost med en delad MongoDB-instans

OK - jag kom på det här.

På mitt lokala system hade jag en nyare version av noden, men på min distribuerade version (på AWS ElasticBeanstalk) använde den v0.10.36.

Om du tittar på koden för passport-local-mongoose du kommer att se detta:

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);
  }
};

Så om de två olika versionerna av noden har en över 0.12.0 och en under, kommer du att få olika kryptofunktioner.




  1. Hitta ett dokument baserat på en hänvisning till föräldern i barnet

  2. Docker-compose - Redis vid 0.0.0.0 istället för 127.0.0.1

  3. alternativ till att använda 'vänta' med lazy_static! makro i rost?

  4. MongoDB - är DBREF nödvändigt?