- MongoDBバージョンv4.0.5
- システムWin10
スーパー管理者
管理者を設定する
use admin
db.createUser({
user: 'admin', // 用户名
pwd: '123456', // 密码
roles:[{
role: 'root', // 角色
db: 'admin' // 数据库
}]
})
セットアップが完了しshow users
たら、入力して設定が成功したかどうかを確認できます。
検証をオンにします
MongoDBはインストールディレクトリを見つけ、mongod.cfg
ファイルを開き、次の文を見つけます。
#security:
着替える:
security:
authorization: enabled
MongoDBを再起動します
タスクマネージャーを開く
タスクマネージャーインターフェイス
MongoDBサービスを見つけ、右クリックして再起動します。
この時点で、PowerShellを開いてデータベースに接続できます。
mongoを入力してください:
スクリーンショット
接続が成功したことを示していますが、他のコマンドを入力すると、権限がないことを示すプロンプトが表示されます。
スクリーンショット
データベースにログインします
// 方式一
mongo
use admin
db.auth('admin', '123456')
// 方式二
mongo admin -u admin -p 123456
この時点で、データに通常どおりアクセスして操作できます。
データベースユーザーを追加
データベースのスーパー管理者を設定するだけでなく、データベースごとに個別の管理者を設定することもできます。個々のデータを操作するための特定の権限しかありません。
use test // 跳转到需要添加用户的数据库
db.createUser({
user: 'fooadmin', // 用户名
pwd: '123456', // 密码
roles:[{
role: 'readWrite', // 角色
db: 'test' // 数据库名
}]
})
一般的なコマンド
show users // 查看当前库下的用户
db.dropUser('testadmin') // 删除用户
db.updateUser('admin', {pwd: '654321'}) // 修改用户密码
db.auth('admin', '654321') // 密码认证
MongoDBデータベースのデフォルトの役割
- データベースのユーザーロール:読み取り、読み取り/書き込み
- データベース管理の役割:dbAdmin、dbOwner、userAdmin
- クラスター管理の役割:clusterAdmin、clusterManager、clusterMonitor、hostManager
- バックアップと復元の役割:バックアップ、復元
- すべてのデータベースロール:readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、
dbAdminAnyDatabase - スーパーユーザーの役割:root