2011-12-01 30 views
12

私はスタンドアロンのcouchdbアプリケーションを構築しています。これらはcouchappsと呼ばれています。アイデアは、データベース自体がポート80で提供され、HTMLを返し、実際のWebサイトとして機能するというものです。これは非常に強力なアイデアです。あなたのコードをデータベースの中に生かすというこの新しいコンセプトに驚いています。CouchAppユーザー登録

しかし、ユーザー登録に問題があります。 couchdbに組み込まれているものは、クッキーを設定することができ、あなたのウェブサイトに簡単に接続することができます。しかし、私のアプリが「適切な」ユーザー登録システムを持っていると言うために必要な、いくつかの非常に重要なことがあります。

  1. 申し訳ありません。電子メールは送信されず、キャプチャが表示されません。これは誰でもあなたの_usersデータベースを迷惑して、好きなだけ多くの新しいユーザーを作成できることを意味します。

  2. ユーザーがパスワードを忘れた場合、パスワードを回復するための機能はありません。

私は低いレベル(ないErlangの男)で任意のハードコアErlangの開発を行うことなく、これらの問題を克服することができる方法任意のアイデア?また、TwitterやGitHubのアカウントに対して認証するためにOAuthを使用でき、couchdbデータの処理方法(validate_doc_updateの機能)と無関係に統合できるかどうかは、誰かが分かっていれば嬉しいことです。

は、ユーザデータベースに組み込まれて動作することができますが、あなたが

答えて

11

、私はあなたが記述ワークフローのためにそれをお勧めしませんありがとうございました。その他のオプションは次のとおりです。

ブラウザID

ブラウザIDの使用をお勧めします。 IrisCouchは、ここでCouchDBのためのプラグインを提供しています

https://github.com/iriscouch/browserid_couchdb

これは、通常の登録ワークフローの世話をします。

あなたはさらに一歩それを取ると、あなたのユーザーを持つようにしたい場合は、「かなり匿名」、あなたは「ミングル」

https://github.com/thedod/Mingle

Twitterの統合

マックスと呼ばれるこのcouchappの例に従うことができますOgdenの "DataCouch"プロジェクトでは、Twitter経由でログインしていますが、一部のノード外部プロセッサを使用して動作させています。ここを参照してください:

https://github.com/maxogden/datacouch/blob/master/processors/auth/twitterauth.js

Facebookとの統合

https://github.com/ocastalabs/CouchDB-Facebook-Authentication

のOpenID

https://github.com/mcaprari/couchdb-openid


私は、あなたがソファーで純粋にOAuthを使用することができると思ういけませんSこの記事は示唆:

http://bennolan.com/2011/01/11/couchdb-oath.html

あなたはDatacouchが何をしたかが、次のされますので、最も近いです。

これらの提案が役立つことを願っています。

+0

ありがとうございました。これは、私が遭遇した材料のすべてです。そして、あなたのブラウザが開かれるまで、Cookieの有効期限が続くという別の問題(Max Odgenと話した後)もあるようです...これは全くひどいことです。私はあなたの答えを受け入れ、うまくいけば1.2はこれのいくつかを修正します。 –

+2

1.3のようにoauthを使うことができます –