Konfigurera MongoDB med Kerberos-autentisering: X.509-certifikat

Innehållsförteckning:

Anonim

Medan auktorisering ser på att säkerställa klientåtkomst till systemet kontrollerar autentiseringen vilken typ av åtkomst klienten har i MongoDB när de har godkänts till systemet.

Det finns olika autentiseringsmekanismer, nedan är bara några av dem.

MongoDB-autentisering med x.509-certifikat

Använd x.509-certifikat för att autentisera klienten - Ett certifikat är i grunden en pålitlig signatur mellan klienten och MongoDB-servern.

Så istället för att ange ett användarnamn och lösenord för att ansluta till servern skickas ett certifikat mellan klienten och MongoDB-servern. Klienten har i princip ett klientcertifikat som skickas till servern för att autentisera till servern. Varje klientcertifikat motsvarar en enda MongoDB-användare. Så varje användare från MongoDB måste ha sitt eget certifikat för att autentiseras till MongoDB-servern.

För att säkerställa att detta fungerar måste följande steg följas;

  1. Ett giltigt certifikat måste köpas från en giltig tredjepartsmyndighet och installera det på MongoDB-servern.
  2. Klientcertifikatet måste ha följande egenskaper (En enda certifikatutfärdare (CA) måste utfärda certifikaten för både klienten och servern. Klientcertifikaten måste innehålla följande fält - keyUsage och extendedKeyUsage).
  3. Varje användare som ansluter till MongDB-servern måste ha ett separat certifikat.

Mongodb-autentisering med Kerberos

Steg 1) Konfigurera MongoDB med Kerberos-autentisering på Windows - Kerberos är en autentiseringsmekanism som används i stora klientservermiljöer.

Det är en mycket säker mekanism där lösenordet endast är tillåtet om det är krypterat. MongoDB har möjlighet att autentisera mot ett befintligt Kerberos-baserat system.

Steg 2) Starta mongod.exe-serverprocessen.

Steg 3) Starta mongo.exe-klientprocessen och anslut till MongoDB-servern.

Steg 4) Lägg till en användare i MongoDB, som i grunden är ett Kerberos-huvudnamn till $ extern databas. Extern databas $ är en speciell databas som säger till MongoDB att autentisera den här användaren mot ett Kerberos-system istället för sitt eget interna system.

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

Steg 5) Starta mongod.exe med Kerberos-stöd genom att använda följande kommando

mongod.exe -auth -setParameter authenticationMechanisms=GSSAPI

Och sedan kan du nu ansluta till Kerberos-användaren och Kerberos-autentisering till databasen.

Sammanfattning:

  • Det finns olika autentiseringsmekanismer för att ge bättre säkerhet i databaser. Ett exempel är användningen av certifikat för att autentisera användare istället för att använda användarnamn och lösenord.