MongoDB にデータ アクセス許可制御機能を実装する方法
最新のデータ アプリケーションでは、多くの場合、承認されたユーザーのみがデータ アクセス許可制御を実行できるようにする必要があります。特定のデータにアクセスして操作するため。人気の NoSQL データベースとして、MongoDB はデータ権限制御を実装するためのメカニズムもいくつか提供します。この記事では、MongoDB にデータ権限制御機能を実装する方法と具体的なコード例を紹介します。
use admin db.createUser({ user: "adminUser", pwd: "adminPassword", roles: [ { role: "userAdminAnyDatabase", db: "admin" }, { role: "dbAdminAnyDatabase", db: "admin" }, { role: "readWriteAnyDatabase", db: "admin" } ] })
上記のコードでは、「adminUser」という名前のユーザーが作成され、userAdminAnyDatabase、dbAdminAnyDatabase、readWriteAnyDatabase の 3 つのロールが指定されています。これらのロールは、ユーザー、データベース、およびデータの読み取りと書き込みの権限をそれぞれ管理するために使用されます。
use admin db.createRole({ role: "customRole", privileges: [ { resource: { db: "testDB", collection: "testCollection" }, actions: ["find", "insert"] } ], roles: [] })
上記のコードでは、「customRole」という名前のロールが定義され、データベース「testDB」とコレクション「」に与えられています。 testCollection" データを検索して挿入する権限。
use admin db.grantRolesToUser("adminUser", [ { role: "customRole", db: "testDB" } ])
上記のコードでは、ユーザー「adminUser」は、前に定義されデータベースに割り当てられた「customRole」ロールに関連付けられています。テストDB」。
mongod --auth
上記のコマンドで MongoDB サービスを開始すると、認証機能が有効になります。
use testDB db.auth("adminUser", "adminPassword")
上記のコードでは、まずアクセスするデータベースに切り替えてから、auth
メソッドで認証します。対応するユーザー名とパスワードを入力します。
上記の手順により、MongoDB にデータ権限制御機能を実装できます。ユーザーとロールを作成し、ロールの権限を定義し、ユーザーにロールを割り当て、最後にデータベース認証を有効にすることで、データへのユーザーのアクセスと操作を制御できます。この記事のコード例が、MongoDB でのデータ アクセス許可制御の実装に役立つことを願っています。
以上がMongoDBにデータ権限制御機能を実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。