Redis
 sql >> Database >  >> NoSQL >> Redis

Connessione a redis gestite con auth nome utente/password nodejs

Il AUTH comando, come indicato nei documenti:

Quando vengono utilizzati gli ACL, il modulo a argomento singolo del comando, in cui viene specificata solo la password, presuppone che il nome utente implicito sia "predefinito".

Quindi, anche se stai utilizzando Redis 6, dove sono supportati utenti aggiuntivi, la tua autenticazione per default dovrebbe funzionare.

L'errore visualizzato è il risultato di una connessione interrotta , per esempio. in qualche modo hai perso la connessione con il server Redis. node-redis sta affrontando uno dei due scenari (o entrambi):la connessione è scaduta o i tentativi di riconnessione hanno superato il numero massimo specificato in una configurazione. Ricontrollerei le informazioni sulla tua connessione e come è configurato il tuo server redis.

Vedo che stai usando TLS, potresti trovarlo utile:Secureing Node Redis

Se vuoi autenticare il client node-redis con un utente diverso, quando usi Redis 6, dovrai usare send_command , ma prima devi rimuovere l'attuale AUTH comando, poiché attualmente node-redis non supporta il nuovo comando AUTH <username> <password> .

client['auth'] = null;
client.send_command('AUTH', ['<username>', '<password>'], redis.print);