Redis Genpass

Redis Genpass
Redis ist ein leistungsoptimiertes In-Memory-Datenspeicher, in dem ein Schlüsselwertpaarformat verwendet wird, um Daten zu speichern. Redis ermöglicht jede neue Client -Verbindung, auf jeden Schlüssel und Befehl im Datenspeicher bis zu seiner Version 6 zugreifen zu können.0.0. Aus Version 6.0.0, Redis führte eine neue Sicherheitsschicht mit der Funktion "Access Control List" ein. Mit der ACL -Funktion kann Redis die Zugriffsebenen auf Befehle und Schlüssel für verschiedene Clientverbindungen beschränken. Wenn Redis ACL vorhanden ist, sollte sich die Client -Verbindung mit einem Benutzernamen und einem Passwort authentifizieren. Daher reicht die Zugriffsniveau jeder Verbindung von allen Schlüssel und Befehlen bis zu einer Teilmenge von diesen ab. Der Benutzer "Standard" kann auf jeden Befehl und die Schlüssel im Datenspeicher zugreifen.

Wie in der vorherigen Abbildung gezeigt, haben bestimmte Benutzer Zugriff auf abgrenzende Schlüssel und Befehle, während der Standardbenutzer Zugriff auf alle Schlüssel und Vorgänge im Store hat.

Normalerweise unterstützt Redis den Auth -Befehl mit Benutzernamen- und Kennwortargumenten, um sich als bestimmter Benutzer mit bestimmten Einschränkungen zu authentifizieren.

ACL -Passwörter

Redis -ACL -Passwörter werden im Hashed -Format SHA256 gespeichert. Normalerweise sind diese eher gemeinsame Geheimnisse. Diese Passwörter sind hexadezimale Zeichenfolgen, die Pseudorandomnummern enthalten, wie im folgenden Beispiel gezeigt:

"TY6C75273D91T32DF726FB545C8A4EDC14RF0A95A6FD993950B10I814AD2R57U"

Die ACL -Passwörter werden von einem Menschen nicht eingegeben. Es wird in einer Art Client -Software gespeichert. Daher ist die Passwortlänge in diesem Zusammenhang überhaupt kein Problem.

Um die Redis -ACL -Passwörter zu generieren, müssen Sie einen speziellen Befehl namens verwenden ACL Genpass, was wir im folgenden Abschnitt diskutieren werden.

Der Befehl ACL Genpass

Der Befehl ACL-GenPass wird verwendet, um eine alphanumerische Zeichenfolge zu erzeugen, die eine Größe von 64 Byte hat, die 256 Bit Pseudorandom-Daten enthält. Um das Passwort stärker und schwerer zu knacken, verwendet dieser Befehl die Pseudorandom -Zahlengeneratoren wie /dev/urandom oder /dev/random. Dies sind spezielle Arten von Dateien, die zum Erstellen von Sequenzen von Zufallszahlenwerten verwendet werden. Diese Passwörter sind zehnmal schwerer zu knacken als ein übliches Passwort.

Syntax

ACL Genpass [number_of_bits_per_output_string]

number_of_bits_per_output_string: Dies ist ein optionales Argument, das die Anzahl der Bits angibt, die in der Ausgangszeichenfolge enthalten sind.

Dieser Befehl gibt eine alphanumerische String von 64 Bytes zurück, die 256 Bit Pseudorandom -Datenwerte enthält. Immer wenn Sie das optionale Argument übergeben, bei dem die Anzahl der Bits von 1 bis 1024 reicht, ändert sich die Ausgangszeichenfolge entsprechend entsprechend. Normalerweise wird die Ausgangszeichenfolgelänge berechnet, indem die angegebene Anzahl von Bits durch 4 geteilt wird. Außerdem werden Bits immer auf das nächste Mehrfaches von 4 gerundet.

Beispiel 01 - Standard -Länge Passwort generieren

Nehmen wir an, wir müssen ein ACL. Wir werden den Befehl ACL Genpass verwenden, der aufgrund der konstanten Zeitkomplexität weniger komplex und schneller ist.

Wie erwartet ist die Ausgabe eine alphanumerische 64-Byte-Zeichenfolge mit 256 Bit Pseudorandom-Daten. Die Ausgabekennwortlänge beträgt 64 Sechskantzeichen. Das bedeutet, dass 256 Bit da sind.

Beispiel 02 - Kennwort für benutzerdefinierte Länge generieren

Der Befehl ACL Genpass gibt dem Benutzer die vollständige Kontrolle, um die Anzahl der Bits zu definieren, die in der endgültigen Zeichenfolge erforderlich sind. Der optionale Parameter kann in Form der Anzahl der Bits im generierten Passwort übergeben werden.

Erstellen wir ein ACL -Passwort mit der Größe 16 Bits. Daher sollte die endgültige alphanumerische Saitenlänge 16 Bits geteilt werden, die 4 Sechskantzeichen entsprechen.

ACL Genpass 16

Versuchen wir, die Anzahl der Bits auf 6 anzugeben. Der Befehl rundet diese Nummer auf das nächste von vier Vierern um. Daher wird die Anzahl der Bits unter der Motorhaube 8.

Wie erwartet beträgt die Ausgangszeichenfolge 2 Hex -Zeichen, die 8 Bit Pseudorandom -Daten darstellen.

Wie in den vorherigen Beispielen erläutert, kann der Befehl ACL Genpass ein zuverlässiger Kennwortgenerator für Redis -Datenspeicher sein.

Abschluss

Zusammenfassend hat Redis die Funktion "Access Control List" aus Version 6 eingeführt.0.0. Es ermöglicht eine neue Sicherheitsebene, bei der bestimmte Clientverbindungen im Redis -Datenspeicher auf begrenzte Befehle und Schlüssel zugreifen können. Jede Clientverbindung kann mit dem authentifiziert werden Auth Befehl mit dem angegebenen Benutzernamen und Passwort. Diese Passwörter werden als SHA256 -Hash -Werte im Redis -Speicher gespeichert. Daher wird empfohlen, starke Redis -Passwörter mit dem Befehl ACL Genpass zu generieren. Es erzeugt eine alphanumerische 64-Byte-Schnur, die stark genug ist, um Angriffe zu vermeiden.