Kullanıcı Oluşturma ve Rol Ekleme MongoDB
MongoDB Yönetici Kullanıcı Oluştur
Kullanıcı yöneticisi oluşturma MongoDB createUser metodu kullanılarak yapılır. Aşağıdaki örnek bunun nasıl yapılabileceğini gösterir.
db.createUser( { user: "Guru99", pwd: "password", roles:[{role: "userAdminAnyDatabase" , db:"admin"}]})
Kod Açıklaması:
- İlk adım, oluşturulması gereken “kullanıcı adı” ve “şifre”yi belirlemektir.
- İkinci adım kullanıcıya bir rol atamaktır. Veritabanı yöneticisi olması gerektiğinden bu durumda “userAdminAnyDatabase” rolünü atadık. Bu rol, kullanıcının tüm veritabanlarında yönetici ayrıcalıklarına sahip olmasını sağlar. MongoDB.
- db parametresi, içinde özel bir Meta veritabanı olan admin veritabanını belirtir. MongoDB bu kullanıcıya ait bilgileri tutan.
Komut başarıyla yürütülürse, aşağıdaki Çıktı gösterilecektir:
Çıktı:
Çıktı, “Guru99” adında bir kullanıcının oluşturulduğunu ve bu kullanıcının, içindeki tüm veritabanları üzerinde ayrıcalıklara sahip olduğunu gösterir. MongoDB.
MongoDB Tek Veritabanı için Kullanıcı Oluştur
Tek bir veritabanını yönetecek kullanıcı oluşturmak için yukarıda bahsettiğimiz komutun aynısını kullanabiliriz ancak sadece “userAdmin” seçeneğini kullanmamız gerekiyor.
Aşağıdaki örnek bunun nasıl yapılabileceğini göstermektedir;
db.createUser( { user: "Employeeadmin", pwd: "password", roles:[{role: "userAdmin" , db:"Employee"}]})
Kod Açıklaması:
- İlk adım, oluşturulması gereken “kullanıcı adı” ve “şifre”yi belirlemektir.
- İkinci adım, kullanıcıya bir rol atamak olup, bu durumda veritabanı yöneticisi olması gerektiğinden “userAdmin” rolüne atanır. Bu rol, kullanıcının yalnızca db seçeneğinde belirtilen veritabanında yönetici ayrıcalıklarına sahip olmasını sağlar.
- db parametresi kullanıcının yönetici ayrıcalıklarına sahip olması gereken veritabanını belirtir.
Komut başarıyla yürütülürse, aşağıdaki Çıktı gösterilecektir:
Çıktı:
Çıktı, “Employeeadmin” adında bir kullanıcının oluşturulduğunu ve bu kullanıcının yalnızca “Employee” veritabanında ayrıcalıklara sahip olduğunu gösterir.
Kullanıcıları yönetme
Öncelikle tanımlamanız gereken rolleri anlayın. Tam bir rol listesi mevcut MongoDB. Örneğin, veritabanlarına yalnızca salt okunur erişime izin veren bir "okuma rolü" vardır ve ardından veritabanına okuma ve yazma erişimi sağlayan "okuma yazma" rolü vardır; bu, kullanıcının ekleme, silme ve yazma işlemlerini gerçekleştirebileceği anlamına gelir. o veritabanındaki koleksiyonlardaki komutları güncelleyin.
db.createUser( { user: "Mohan", pwd: "password", roles:[ { role: "read" , db:"Marketing"}, { role: "readWrite" , db:"Sales"} } ] })
Yukarıdaki kod parçacığı, Mohan adında bir kullanıcının oluşturulduğunu ve bu kullanıcıya birden çok veritabanında birden çok rol atandığını gösterir. Yukarıdaki örnekte kendisine “Pazarlama” veritabanı için salt okunur izin, “Satış” veritabanı için ise okuma yazma izni verilmiştir.