2016-12-17 13 views
2

PouchDBとCloudantを使用してWebアプリケーション(単純なショッピングリスト)を作成しています。セキュリティサーバーPouchDB

そうなど、

をすべての新しいユーザーは、自分の「アカウント」を作成する可能性があります(すべてのユーザーが自分のcloudantアカウントでDBを持つことになります)、すべてのユーザーが自分の買い物リストが保存されます、データ、問題は、すべてのユーザーが相互作用するようにCloudantの資格情報を隠したり保護してメインデータベースにアクセスする方法はありますか?このデータは、.jsファイルにアクセスできるインターネット上で一人一人の内側に配置されているので

var remoteDB = ('https://myDB.cloudant.com/myMainDB', { 
    auth: { 
     username: "myUsername", 
     password: "myPassword" 
}); 

は、構文は次のとおりですpouchDBでDBを作成します。あるいは、私は間違っていて、PouchDBはこの目的のために設計されていません。 ありがとうございます! :)

+0

あなたが公共の.jsファイルにユーザー名とパスワード1)を格納し、2)すべきではないようですねクリアテキストでこれに対してOAuthのようなものを使用できませんか? – Mikkel

答えて

1

一つの方法は、環境変数からユーザー名とパスワードで読むために次のようになります。

var username = process.env.COUCH_USER; 
var pass = process.env.COUCH_PASS; 
+0

どうすればいいですか? – emi89

+0

ブラウザでこれを完全に実行していますか?そうであれば、モデルを再考する必要があります。各ユーザーは、アカウントレベルのパスワードではなく、自分の資格情報にしかアクセスできないようにすることができます。ユーザーを設定するには、別のメカニズムが必要です。 Cloudantはこれに使用できるAPIキーをサポートしています(https://docs.cloudant.com/authorization.htmlを参照)。また、CouchDBの '_users'データベース(https://docs.cloudant.com/authorization)を使用することもできます。 html#enabled-the-_users-database-with-cloudantを使用します。または、Cloudant Envoy(https://github.com/cloudant-labs/envoy)のような中間層を使用して、 – xpqz

関連する問題