Nakonfigurujte MongoDB s autentifikáciou Kerberos: certifikáty X.509

Obsah:

Anonim

Zatiaľ čo sa autorizácia zameriava na zabezpečenie prístupu klienta do systému, autentifikácia kontroluje, aký typ prístupu má klient v MongoDB, keď už bol autorizovaný do systému.

Existujú rôzne mechanizmy autentifikácie, nižšie je iba niekoľko z nich.

Autentifikácia MongoDB pomocou certifikátov x.509

Na autentifikáciu klienta použite certifikáty x.509 - Certifikát je v podstate dôveryhodný podpis medzi klientom a serverom MongoDB.

Namiesto zadania používateľského mena a hesla na pripojenie k serveru sa teda medzi klientom a serverom MongoDB odovzdá certifikát. Klient bude mať v podstate certifikát klienta, ktorý sa odošle serveru na autentifikáciu na serveri. Každý certifikát klienta zodpovedá jednému používateľovi MongoDB. Každý užívateľ z MongoDB musí mať svoj vlastný certifikát, aby sa mohol autentifikovať na server MongoDB.

Aby to fungovalo, musia byť dodržané nasledujúce kroky;

  1. Platný certifikát je potrebné zakúpiť od platného orgánu tretej strany a nainštalovať ho na serveri MongoDB.
  2. Certifikát klienta musí mať nasledujúce vlastnosti (Jedna certifikačná autorita (CA) musí vydávať certifikáty pre klienta aj server. Certifikáty klienta musia obsahovať nasledujúce polia - keyUsage a extendedKeyUsage.
  3. Každý používateľ, ktorý sa pripája k serveru MongDB, musí mať samostatný certifikát.

Autentifikácia Mongodb pomocou protokolu Kerberos

Krok 1) Konfigurácia MongoDB s autentifikáciou Kerberos v systéme Windows - Kerberos je autentifikačný mechanizmus používaný v prostrediach veľkých klientov a serverov.

Je to veľmi bezpečný mechanizmus, pri ktorom je heslo povolené iba v prípade, že je šifrované. MongoDB má zariadenie na autentifikáciu proti existujúcemu systému založenému na protokole Kerberos.

Krok 2) Spustite proces servera mongod.exe.

Krok 3) Spustite proces klienta mongo.exe a pripojte sa k serveru MongoDB.

Krok 4) Pridajte používateľa do MongoDB, čo je v podstate hlavné meno protokolu Kerberos, do externej databázy $. Externá databáza $ je špeciálna databáza, ktorá informuje MongoDB o autentifikácii tohto používateľa proti systému Kerberos namiesto jeho vlastného interného systému.

use $externaldb.createUser({user: "This email address is being protected from spambots. You need JavaScript enabled to view it.",roles:[{role: "read" , db:"Marketing"}}]}

Krok 5) Spustite program mongod.exe s podporou protokolu Kerberos pomocou nasledujúceho príkazu

mongod.exe -auth -setParameter authenticationMechanisms=GSSAPI

Potom sa teraz môžete spojiť s používateľom Kerberos a autentifikáciou Kerberos do databázy.

Zhrnutie:

  • Na zabezpečenie lepšej bezpečnosti v databázach existujú rôzne mechanizmy autentifikácie. Jedným z príkladov je použitie certifikátov na autentifikáciu používateľov namiesto používania používateľských mien a hesiel.