MongoDB Biztonság, felügyelet és biztonsági mentés (Mongodump)

Az egyik kulcsfogalom a MongoDB az adatbázisok kezelése. Az olyan fontos szempontok, mint a biztonság, a biztonsági mentés, az adatbázisokhoz való hozzáférés, mind fontos fogalmak az adatbázis-adminisztráció során.

MongoDB Biztonsági áttekintés

MongoDB képes adatbázisok biztonsági mechanizmusait meghatározni. Alapértelmezés szerint nem akarjuk, hogy mindenki nyílt hozzáféréssel rendelkezzen az összes adatbázishoz MongoDB, ezért az a követelmény, hogy legyen valamilyen biztonsági mechanizmus MongoDB fontos.

Az alábbiakban bemutatjuk a legjobb gyakorlatokat az adatbázisok biztonságának megvalósításához

  1. Hozzáférés-vezérlés engedélyezése – Felhasználók létrehozása, hogy minden alkalmazás és felhasználó valamilyen hitelesítési mechanizmust kényszerítsen ki az adatbázisokhoz való hozzáféréskor. MongoDB.
  2. Szerep alapú hozzáférés-vezérlés konfigurálása – Néha előfordulhat, hogy az engedélyek logikai csoportosítására van szükség, amely szerepkörökbe foglalható. A felhasználók ezután ezekhez a szerepkörökhöz rendelhetők.
  3. Próbáld meg konfigurálni MongoDB valamilyen titkosítási protokoll, például TLS vagy SSL használatához. Ezek a protokollok használhatók az ügyfél és a mongo DB környezet között folyó forgalom titkosítására.
  4. Auditálás konfigurálása – A rendszergazdáknak általában tudniuk kell, hogy ki mit csinál, ami segít a későbbi problémák elemzésében. A legjobb módszer az auditálás engedélyezése MongoDB.
  5. Futtassa a MongDB kiszolgálópéldányt egy külön felhasználói azonosítóval, amely hozzáfér a kiszolgálókörnyezet szükséges erőforrásaihoz.

Mongodb biztonsági mentési eljárások – mongodump

Amikor MongDB-vel dolgozik, fontos, hogy mindig biztosítsa a biztonsági mentési eljárást arra az esetre, ha az adatok benne vannak MongoDB bármilyen okból megsérül.

Az alábbiakban bemutatjuk a belülről elérhető biztonsági mentési mechanizmusokat MongoDB

  1. Biztonsági mentés a mögöttes adatfájlok másolásával – Valószínűleg ez a legegyszerűbb mechanizmus, csak át kell másolni azokat az adatfájlokat, amelyekre MongoDB lakik, és másolja át egy másik helyre, amely ideális esetben egy másik szerver lehet.
  2. Biztonsági másolat készítése az adatbázisról a mongodump segítségével – A mongodump eszköz adatokat olvas be a MongoDB adatbázist, és nagy pontosságú BSON fájlokat hoz létre. Amit figyelembe kell venni, hogy ha az adatkészlet nagy volumenű, akkor a mongodump nagyon erőforrásigényes lehet, ezért a probléma enyhítése érdekében a segédprogramot egy másodlagos szerveren kell futtatni.
  3. MongoDB Cloud Manager biztonsági mentés - MongoDB A Cloud Manager folyamatosan biztonsági másolatot készít MongoDB replikakészletek és szilánkos fürtök az oplog adatok kiolvasásával a MongoDB környezetben. MongoDB A Cloud Manager létrehozhat egy adott időpontban történő helyreállítást az oplog adatok tárolásával, így bármikor létrehozhat egy visszaállítást egy adott replikakészlethez vagy szilánkos fürthöz.

Mongodb megfigyelés

A monitorozás az egyik legkritikusabb adminisztratív tevékenység MongoDB. Ennek az az oka, hogy proaktívabb lehet, ha figyelemmel kíséri a környezetet az esetleges problémák miatt.

Az alábbiakban bemutatunk néhány példát a monitoring megvalósítására

  1. mongosztát megmondja, hányszor történnek ténylegesen a szerveren az adatbázis-műveletek, mint pl. beszúrás, lekérdezés, frissítés, törlés stb. Ez jó képet ad arról, hogy mekkora terhelést kezel a szerver, és jelzi, hogy szükség van-e további erőforrásokra a szerveren, vagy esetleg további szerverekre a terhelés elosztásához.
  2. mongotop nyomon követi és jelenti a jelenlegi olvasási és írási tevékenységét MongoDB példát, és ezeket a statisztikákat gyűjtésenként jelenti.
  3. MongoDB webes felületet biztosít, amely egy egyszerű weboldalon teszi közzé a diagnosztikai és megfigyelési információkat. A webes adminisztrációs segédprogram megnyitásához a helyi szerveren tallózhat az alábbi URL-címre http://localhost:28017
  4. A serverStatus parancs vagy a rendszerhéjból származó db.serverStatus() áttekintést ad vissza az adatbázis állapotáról, a lemezhasználatról, a memóriahasználatról és a MongoDB környezet stb.

MongoDB Indexelés és teljesítmény szempontok

  1. Az indexek nagyon fontosak minden adatbázisban, és felhasználhatók a keresési lekérdezések hatékonyságának javítására MongoDB. Ha folyamatosan keres a dokumentumban, akkor jobb, ha indexeket ad hozzá a dokumentum mezőihez, amelyek a keresési feltételekben szerepelnek.
  2. Próbálja mindig korlátozni a visszaadott lekérdezési eredmények számát. Tegyük fel, hogy 2 mezőnév van egy dokumentumban, de csak 2 mezőt szeretne látni a dokumentumból. Ezután győződjön meg arról, hogy a lekérdezés csak a 2 szükséges mező megjelenítését célozza meg, és nem az összes mezőt.
  3. Ha bizonyos mezőértékeket szeretne megtekinteni, akkor csak ezeket a mezőket használja a lekérdezésben. Ne kérdezzen le a gyűjtemény összes mezőjére, ha nem kötelező.

konfigurálása MongoDB Kerberos hitelesítéssel

Míg az engedélyezés azt vizsgálja, hogy az ügyfél hozzáférést biztosítson a rendszerhez, a hitelesítés ellenőrzi, hogy az ügyfél milyen típusú hozzáféréssel rendelkezik MongoDB, miután engedélyezték őket a rendszerbe.

Különféle hitelesítési mechanizmusok léteznek, az alábbiakban csak néhányat mutatunk be közülük.

MongoDB Hitelesítés x.509 tanúsítványokkal

Használjon x.509-es tanúsítványokat a kliens hitelesítésére – A tanúsítvány alapvetően egy megbízható aláírás az ügyfél és a MongoDB Szerver.

Tehát ahelyett, hogy a szerverhez való csatlakozáshoz beírnánk a felhasználónevet és a jelszót, egy tanúsítványt ad át a kliens és a MongoDB Szerver. A kliensnek alapvetően lesz egy kliens tanúsítványa, amelyet átadnak a szervernek, hogy hitelesítse a kiszolgálón. Minden ügyféltanúsítvány egyetlennek felel meg MongoDB felhasználó. Tehát minden felhasználó a MongoDB saját tanúsítvánnyal kell rendelkeznie a hitelesítéshez MongoDB szervert.

A működés biztosításához a következő lépéseket kell követni;

  1. Érvényes tanúsítványt kell vásárolni egy érvényes harmadik féltől, és telepíteni kell a készülékre MongoDB Szerver.
  2. Az ügyféltanúsítványnak a következő tulajdonságokkal kell rendelkeznie (Egyetlen tanúsító hatóságnak (CA) kell kiadnia a tanúsítványokat mind a kliens, mind a szerver számára. Az ügyféltanúsítványoknak a következő mezőket kell tartalmazniuk – keyUsage és extendedKeyUsage).
  3. Minden felhasználónak, aki a MongDB szerverhez csatlakozik, külön tanúsítvánnyal kell rendelkeznie.

Konfigurálás MongoDB Kerberos hitelesítéssel

Az alábbiakban bemutatjuk a konfigurálás lépéseit MongoDB bekapcsolt Kerberos hitelesítéssel Windows:

Step 1) konfigurálása MongoDB bekapcsolt Kerberos hitelesítéssel Windows
A Kerberos egy hitelesítési mechanizmus, amelyet nagy kliens-szerver környezetekben használnak.

Ez egy nagyon biztonságos mechanizmus, amelyben a jelszó csak akkor engedélyezett, ha titkosítva van. Jól, MongoDB képes hitelesíteni egy meglévő Kerberos alapú rendszert.

Step 2) mongod.exe szerver folyamat
Ezután indítsa el a mongod.exe szerverfolyamatot.

Step 3) mongo.exe kliens feldolgozza és csatlakozzon
Ezután indítsa el a mongo.exe ügyfélfolyamatot, és csatlakozzon a MongoDB szervert.

Step 4) Felhasználó hozzáadása MongoDB
Ami alapvetően egy Kerberos főnév a $external adatbázishoz. A $external adatbázis egy speciális adatbázis, amely megmondja MongoDB hogy ezt a felhasználót Kerberos rendszerrel hitelesítse a saját belső rendszere helyett.

konfigurálása MongoDB Kerberos hitelesítéssel

use $external
db.createUser(
{
	user: "user1@example.NET",

	roles:[
	{
		role: "read" , db:"Marketing"}
		
	}
		  ]
}

Step 5) Kezdje el használni a parancsot
Indítsa el a mongod.exe-t Kerberos támogatással a következő paranccsal

mongod.exe –auth –setParameter authenticationMechanisms=GSSAPI

Ezután már csatlakozhat a Kerberos felhasználóval és Kerberos hitelesítéssel az adatbázishoz.

Összegzésként

  • Nagyon fontos a biztonság megvalósítása az adatbázisokban, hogy az adatbázisban lévő adatok biztonságban legyenek.
  • Az adatbázisban felhasználókat a createUser paranccsal hozhatunk létre. Konkrét szerepkörök rendelhetők a felhasználókhoz, hogy konkrét engedélyeket kapjanak magán az adatbázison.
  • Adminisztrátorok minden adatbázishoz hozzáadhatók, csak bizonyos adatbázisokhoz. Ez a userAdmin vagy a userAdminAnyDatabase szerepkör megadásával érhető el.
  • Mindig készítsen biztonsági másolatot MongoDB környezetbe, hogy bármilyen katasztrófa esetén az adatok könnyen visszaállíthatóak legyenek.
  • Mindig figyelje meg MongoDB olyan környezetet, ahol proaktívabbak legyünk, és látjuk a problémákat, mielőtt azok előfordulnának.
  • Különféle hitelesítési mechanizmusok léteznek az adatbázisok jobb biztonságának biztosítására. Az egyik példa a tanúsítványok használata a felhasználók hitelesítésére a felhasználónevek és jelszavak használata helyett.