Redis genpass

Redis genpass
Redis er en ytelsesoptimalisert datalager i minnet som bruker et nøkkelverdi-parformat for å lagre data. Redis tillater enhver ny klientforbindelse å få tilgang til hver tast og kommando i datalageret til versjonen 6.0.0. Fra versjon 6.0.0, Redis introduserte et nytt sikkerhetslag med funksjonen for tilgangskontrollliste. Med ACL -funksjonen kan Redis begrense tilgangsnivåene til kommandoer og nøkler for forskjellige klientforbindelser. Når Redis ACL er på plass, bør klientforbindelsen autentisere med et brukernavn og passord. Derfor varierer hver tilkoblings tilgangsnivå fra alle nøkler og kommandoer til en delmengde av dem. "Standard" -brukeren kan få tilgang til hver kommando og nøkkel i datalageret.

Som vist i forrige illustrasjon har visse brukere tilgang til avgrensede nøkler og kommandoer, mens standardbrukeren har tilgang til alle nøkler og operasjoner i butikken.

Vanligvis støtter Redis Auth -kommandoen med brukernavn og passordargumenter for å autentisere som en spesifikk bruker med visse begrensninger som er brukt.

ACL -passord

Redis ACL -passord er lagret i SHA256 Hashed -format. Vanligvis er disse mer som delte hemmeligheter. Disse passordene er heksadesimale strenger som inneholder pseudorandom -tall, som vist i følgende eksempel:

"TY6C75273D91T32DF726FB545C8A4EDC14RF0A95A6FD993950B10I814AD2R57U"

ACL -passordene legges ikke inn av et menneske. Det er lagret i en eller annen type klientprogramvare. Derfor er ikke passordlengden et problem i denne sammenhengen.

For å generere Redis ACL -passord, må du bruke en spesiell kommando kalt ACL Genpass, som vi vil diskutere i følgende avsnitt.

ACL Genpass -kommandoen

ACL Genpass-kommandoen brukes til å generere en alfanumerisk streng som har en størrelse på 64-byte som inneholder 256 biter av pseudorandom-data. For å gjøre passordet sterkere og vanskeligere å knekke, bruker denne kommandoen pseudorandomnummergeneratorene som /dev/urandom eller /dev/tilfeldig. Dette er spesielle typer filer som brukes til å lage sekvenser med tilfeldige tallverdier der de genererte tilfeldige tallene har egenskaper til en sekvens med tilfeldige tall. Disse passordene er ti ganger vanskeligere å sprekke enn et vanlig passord.

Syntaks

ACL Genpass [Number_of_bits_per_output_string]

NUMMER_OF_BITS_PER_OUTPUT_STRING: Dette er et valgfritt argument som spesifiserer antall biter som må være inneholdt i utgangsstrengen.

Denne kommandoen vil returnere en 64 byte alfanumerisk streng, som inkluderer 256 biter av pseudorandom -dataverdier. Hver gang du passerer det valgfrie argumentet der antall biter varierer fra 1 til 1024, vil utgangsstrenglengden endres deretter. Vanligvis vil utgangsstrenglengden bli beregnet ved å dele det spesifiserte antallet biter med 4. I tillegg er biter alltid avrundet til neste multiplum av 4.

Eksempel 01 - Generer standard lengde passord

La oss anta at vi må generere et ACL -passord for standardbrukeren som har tilgang til hver kommando og nøkkel i Redis Data Store. Vi vil bruke ACL Genpass -kommandoen, som er mindre kompleks og raskere på grunn av konstant tidskompleksitet.

Som forventet er utgangen en 64-byte alfanumerisk streng med 256 biter av pseudorandom-data. Utgangspassordlengden er 64 HEX -tegn. Det innebærer 256 biter er der.

Eksempel 02 - Generer passord for tilpasset lengde

ACL Genpass -kommandoen gir full kontroll til brukeren for å definere antall biter som trengs for å være i den endelige strengen. Den valgfrie parameteren kan sendes i form av antall biter i det genererte passordet.

La oss opprette et ACL -passord med størrelsen 16 biter. Derfor bør den endelige alfanumeriske strenglengden være 16 biter delt med fire som tilsvarer 4 sekskantkarakterer.

ACL Genpass 16

La oss prøve å spesifisere antall biter til 6. Kommandoen vil runde dette nummeret til neste flere av fire. Derfor blir antall biter 8 under panseret.

Som forventet er utgangsstrenglengden 2 sekskant tegn som representerer 8 biter av pseudorandom -data.

Som diskutert i de foregående eksemplene, kan ACL Genpass -kommandoen være en pålitelig passordgenerator for Redis Data Stores.

Konklusjon

For å oppsummere, introduserte Redis tilgangskontrolllistefunksjonen fra versjon 6.0.0. Det muliggjør et nytt sikkerhetslag der visse klientforbindelser kan få tilgang til begrensede kommandoer og nøkler i Redis Data Store. Hver klientforbindelse kan autentiseres ved hjelp av Auth kommando med brukernavnet og passordet som er gitt. Disse passordene lagres som SHA256 Hashed -verdier i Redis Storage. Derfor anbefales det å generere sterke Redis -passord ved hjelp av ACL Genpass -kommandoen. Det genererer en 64-byte alfanumerisk streng som er sterk nok til å unngå angrep.