2011-06-23 8 views
1

長時間のルーラー、初回ポスター、私にご負担ください。モンゴブオートキャッシング対認証

私はshardedで安全なMongodb環境を設定しようとしています。私はMongoのオートシャーディング機能を利用したいと思っています。私はデータベースに慣れていないし、タイトなスケジュールだからです。

自動停止は個々のコレクション(テーブル)にのみ適用されますが、ユーザーがコレクション全体にアクセスすることは望ましくありません。さらに、mongoDBはデータベースへの認証だけを許可するので、一度認証されると、ユーザーは1)db内のすべてのコレクションと、2)各コレクション内のすべてのデータを見ることができます。したがって、私が知る限り、私はオートシャーディングと認証なし、またはマニュアルシャーディングと認証を行うことができます。

私は両方の世界のベストを願っています。つまり、オートシャーディングと認証です。これは可能ですか?そうでない場合は、MongoDBのマニュアルシャーディングについてはどうすればよいですか?

このシステムの簡略化された使用例:コレクション「ユーザー」には、すべてのユーザーのデータがあります。私はXがユーザーのコレクション内のXのデータだけを見ることができるようにユーザーXを認証したいと思います。ユーザーは、user_nameによってパーティション化(分割)された複数のサーバーに分散されます。

答えて

5

MongoDbには従来のSQLデータベースのような認証がありません。実際には、マニュアルを読んだ場合は、認証を使用する代わりに安全な環境を使用することをお勧めします。データへのアクセス制御は、アプリケーション内で実装されます。

従来のSQLの場合でも、アクセスは行単位で制御されません。それは通常、データ内の何らかの種類のキーに基づいてアプリケーションレベルで実装されたものです。

+0

ありがとうdatasage。私は、各ユーザーが独自のデータベースを持ち、各userdb.collectionをシャドーするように、ユーザーごとに手動でパーティションを作成するハイブリッドシステムを試してみようと考えています。私はおそらくまた、クライアントを通してシステム全体へのある種のセキュリティを実装するでしょう。 – jacobra

関連する問題