web-dev-qa-db-ja.com

Node.js、Express、およびMongooseで認証を行う方法

Nodejs + expressを使用して、簡単なnodejsアプリケーションを作成しました。次に、ユーザー認証を行います。 mongooseを使用してセッション処理を実現したい。いくつかの例をアドバイスできますか?

51
Erik

便利なリンク:

node.jsでログイン認証を実装する方法

node.jsおよびmongodbでの登録およびログインフォームの作成

また、セッション管理はMongooseではなく、connect-mongodbまたはconnect-redisによって行われます。ここで、実際のアプリケーションでユーザー認証とセッション管理を行う方法の例をチェックアウトできます。

https://github.com/alexyoung/nodepad/blob/master/app.js

このアプリの詳細については、こちらをご覧ください。 http://dailyjs.com/tag/lmawa または http://dailyjs.com/2010/12/06/node-tutorial -5 /

48
alessioalex

ブライアン・ノグチによるmongoose-authを使用してください https://github.com/bnoguchi/mongoose-auth

それはあなたの質問に対する解決策のドロップであり、十分に文書化されており、拡張可能です。

[〜#〜] edit [〜#〜]

mongoose-authは維持されなくなりました。最新バージョンのmongoose(つまり> v3.xx)およびexpress(つまり> v3.xx)で動作させる必要がある場合、ここで現在運用中に使用しているpackage.jsonファイルからの抜粋を示します(それはハッキーですが、動作します):

"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",

I新しいプロジェクトを開始していますmongoose-authを使用せず、代わりに パスポート を試してください。同じ機能を提供し、非常に柔軟ですが、APIは異なります。 機関車 MVCフレームワークの一部であるため、積極的に維持されています。

14

ご覧になりたい場合のために、mongoose + expressjsを使用した完全な認証システムの完全な例をここに投稿しました。

mongodbでexpressとpassportを使用するnodejsのシンプルなログインページ

5
David Oliveros