MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

cara mendapatkan otentikasi mongodb dengan benar

Setiap kali Anda mengatur mongodb, Anda harus membuat pengguna admin dengan peran userAdminAnyDatabase, dan Anda akan dapat membuat pengguna ini bahkan mongod dimulai dengan --auth atau tidak. Anda dapat membuat pengguna ini dengan perintah di bawah ini.

use admin

db.createUser(
  {
    user: "myUserAdmin",
    pwd: "abc123",
    roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
  }
)

Setelah ini jika otorisasi tidak diaktifkan, aktifkan dengan menjalankan mongod dengan flag --auth, atau aktifkan otorisasi di mongod.conf dan mulai ulang server mongod.

Kemudian login ke mongo shell dengan perintah di bawah ini dengan pengguna admin

mongo --port 27017 -u "myUserAdmin" -p "abc123" --authenticationDatabase "admin"

Buka database, dan buat pengguna dengan izin readWrite.

use myapplication

db.createUser(
  {
    user: "myTester",
    pwd: "xyz123",
    roles: [ { role: "readWrite", db: "myapplication" }]
  }
)

Sekarang Anda dapat menggunakan pengguna myTester untuk membaca/menulis di database aplikasi saya, dan setiap kali Anda membuat database baru, mulai mongo shell dengan pengguna myUserAdmin dan buat pengguna baru untuk database baru.

Di mongodb Anda juga dapat membuat satu pengguna, dan memberinya semua izin untuk semua basis data, tetapi Anda tidak boleh melakukannya.

Jika Anda ingin meneliti lebih lanjut, Anda dapat memeriksa tautan di bawah ini. https://docs.mongodb.com/v3.2/tutorial/ aktifkan-otentikasi/

Dan ketika Anda secara tidak sengaja mengunci mongodb, Anda dapat mematikan otorisasi dari file mongod.conf dan mengakses data Anda.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Rata-rata bergerak dengan kerangka agregasi MongoDB?

  2. MongoDB:Memperbarui dokumen menggunakan data dari dokumen yang sama

  3. Luwak:Koleksi tidak terisi saat digunakan sebagai referensi di dokumen lain

  4. Passport.js dan Mongoose.js mengisi Pengguna saat masuk - kehilangan bidang yang terisi di req.user

  5. Memulai dengan MongoDB dan Mongoose