sql >> Base de Datos >  >> NoSQL >> Redis

Conectarse a redis administrado con nombre de usuario/contraseña de autenticación nodejs

El AUTH comando, como se indica en los documentos:

Cuando se utilizan ACL, la forma de argumento único del comando, donde solo se especifica la contraseña, asume que el nombre de usuario implícito es "predeterminado".

Entonces, incluso si está utilizando Redis 6, donde se admiten usuarios adicionales, su autenticación para default debería funcionar.

El error que ves es el resultado de una conexión rota , p.ej. de alguna manera perdiste la conexión con el servidor Redis. node-redis está lidiando con uno de dos escenarios (o ambos):la conexión se agotó o los intentos de reconexión excedieron el número máximo especificado en una configuración. Verificaría dos veces la información de su conexión y cómo está configurado su servidor redis.

Veo que está utilizando TLS, puede encontrar esto útil:Asegurar Node Redis

Si desea autenticar el cliente node-redis con un usuario diferente, cuando use Redis 6, deberá usar send_command , pero antes debe eliminar el AUTH actual comando, ya que actualmente node-redis no admite el nuevo comando AUTH <username> <password> .

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