如何使用Node.js,Express和Mongoose进行身份validation?

我已经通过使用nodejs + express做了简单的nodejs应用程序。 现在我想让用户authentication。 我想通过使用mongoose来实现会话处理。 你能build议一些例子吗?

一些有用的链接:

如何在node.js中实现loginauthentication

在node.js和mongodb中创build注册和login表单

此外,会话pipe理不是由Mongoose完成,而是由connect-mongodb或connect-redis完成。 您可以在这里查看关于如何在真实应用程序中进行用户身份validation和会话pipe理的示例:

alexyoung/nodepad/blob/master/app.html

该应用程序的进一步解释,你可以在这里find: http : //dailyjs.com/tag/lmawa或http://dailyjs.com/2010/12/06/node-tutorial-5/

只要使用Brian Noguchi的mongooseauthenticationhttps://github.com/bnoguchi/mongoose-auth

这是对你的问题的解决scheme的一个下降,它是有据可查的和可扩展的。

编辑

mongoose-auth不再维护。 如果你需要使用更新版本的mongoose(即> v3.xx)和express(即> v3.xx),这里是我正在使用的package.json文件摘录(这是hacky但它的作品):

 "everyauth": "https://github.com/bnoguchi/everyauth/tarball/express3", "mongoose-3x-types": "~1.0.5", "mongoose-auth": "https://github.com/cbou/mongoose-auth/tarball/everymodule-fix", 

现在正在开始一个新项目 ,不要使用mongoose-auth ,而是试用护照 。 它提供了相同的function,非常灵活,但它有不同的API。 它是机车 MVC框架的一部分,因此它被主动维护。

我已经在这里发布了一个完整的使用mongoose + expressjs的authentication系统的例子,以防万一你想看看:

简单的login页面在nodejs中使用快速和护照与mongodb