快速应用程序的简单密码authentication

我花了很长时间试图find一个简单的方法来密码保护使用Express(4)构build的网站,但我一直无法find一个教程或模块,这将有所帮助。 看起来似乎有任何复杂的, 成熟的用户注册/login程序使用护照 ,或者过于简单和不安全的HTTP基本authentication( 像这样 ),没有任何types的会话支持(以及上述主题的大量变化)。

我正在寻找的东西是将索引页面redirect到login页面,除非login,与会议支持某种注销选项。 我不需要数据库,只要相对安全,我会很乐意硬编码用户密码组合。

有没有什么资源可以帮助这个呢?

任何帮助或指针将不胜感激。

您仍然可以使用护照和本地护照一起,并编写您自己的身份validation处理程序,如护照本地文档中所示 。 身份validation处理程序的实现可能如下所示

var LocalStrategy = require('passport-local').Strategy; var users = { 'mike' : 'secret' }; passport.use(new LocalStrategy( function(username, password, done) { if (!users[username] || users[username] != password) { return done(null, false); } return done(null, { username : username }); } )); 

这种方法在你的源代码中以纯文本的forms存储密码,这不好也不值得推荐。

要扩展上面的实现来支持哈希(和腌制)密码,你可以看看passport-local-mongoose authenticate函数的实现。

使用passport.js方法的最大的好处是可以在将来迁移到另一个身份validation机制,并且passport.js处理所有令人讨厌的事情,比如检查用户是否未通过身份validation。