Penetración de red / redes dinámicas / puerta de enlace de video en la nube La plataforma de red EasyNTS no puede iniciar sesión al ingresar la cuenta y contraseña, cómo resolver

EasyNTS, como puerta de enlace de video en la nube, tiene funciones como redes de video y operación y mantenimiento remotos. Antes de conectarse, se someterá a múltiples pruebas del departamento de I + D, el departamento de pruebas, el departamento de proyectos. En este proceso, el producto se mejora continuamente.

Diagrama de arquitectura EasyNTS 12.5D.png

Recientemente, nuestros desarrolladores probaron la compatibilidad de EasyNTS y ​​descubrieron que cuando EasyNTS y ​​EasyNVS se implementan en el mismo servidor, se accede a las páginas web de los dos servicios en el mismo navegador. En este momento, si inicia sesión en EasyNVS primero, causará EasyNTS no puede iniciar sesión; si ingresa EasyNTS directamente, mostrará que la solicitud de red falló.

Análisis de causa

La razón es que el token se establece en la Cookie después de iniciar sesión en EasyNVS. Después de que EasyNTS envía la solicitud, obtiene el token de EasyNVS para verificación. Sin embargo, la verificación debe haber fallado, por lo que no es posible iniciar sesión.

Valor en cookie:

34.png

Después de iniciar sesión en EasyNVS, EasyNTS informa un error:

35.png

Resolver el problema

Al principio, para verificar si el usuario está conectado se verifica primero a través del token, pero EasyNTS no usa el token, sino que usa el sid como clave para obtener el valor correspondiente para la verificación. Así que elimine el código de verificación del token en EasyNTS.

// 判断用户是否已经登录
func userIsLogin(c *gin.Context) (bool, error) {

   token := sessions.GetToken(c)

   // 如果查找到了 token
   if token != consts.EmptyString {
      username, password, str := security.ResolveToken(token)
      if str == consts.EmptyString && username != consts.EmptyString && password != consts.EmptyString {
         // 从 session 中获取用户 ID 同 token 中解析,二次验证防止出错
         userID := sessions.GetUserID(c)
         if userID == username {
            return true, nil
         } else {
            return false, errors.New("Session信息与令牌信息不一致,请重新登录!")
         }
      } else {
         return false, errors.New("令牌已过期,请重新登录!")
      }
   }

   return false, errors.New("未查找到令牌信息,请重新登录!")
}

Después de la solución, se puede usar normalmente e iniciar sesión normalmente:

36.png

Más sobre las redes en la nube EasyNTS

  • Estable y confiable El
    poderoso grupo de servidores es compatible con el entorno de redes, con múltiples tipos de servidores para elegir, alto rendimiento y alta disponibilidad;
  • Simple y fácil de usar
    Cree una red inteligente basada en servicios de redes dinámicos y seleccione miembros de la red que necesiten redes para lograr una interconexión punto a punto;
  • Seguridad de los datos
    Se adopta el protocolo de cifrado MQTT, que tiene las ventajas de una velocidad de cálculo rápida, alta seguridad y bajo consumo de recursos;
  • Gestión eficiente Gestión
    centralizada de cada red a través de la web, soluciona por completo el problema de despliegue complejo y bajo mantenimiento.

Si desea saber más al respecto, puede ingresar al video del rinoceronte verde TSINGSEE para navegar y verificar. El equipo de TSINGSEE Qingxi Video se centra en el desarrollo y la investigación en los campos de la visión por computadora y el reconocimiento de patrones. Sus principales productos abarcan servidores de análisis inteligente multiprotocolo y multicanal que admiten ONVIF, RTSP, GB / T28181, etc. Los productos principales incluyen el servicio en la nube de video estándar nacional EasyGBS, el servicio en la nube de video por Internet EasyDSS, el servicio en la nube de video de seguridad EasyCVR, el servicio en la nube de videoconferencia EasyRTC, la puerta de enlace de computación en el borde de video EasyNVR, la puerta de enlace en la nube EasyNTS, etc.También tiene una comunidad de código abierto y una plataforma abierta EasyDarwin.

EasyDarwin es una comunidad de código abierto desarrollada y mantenida por el equipo de transmisión de video doméstico TSINGSEE Qingxi Video. Desde su establecimiento y desarrollo en diciembre de 2012, se ha expandido desde la forma original de servidor de medios de transmisión de servicio único al proyecto actual de código abierto de la arquitectura de la plataforma en la nube.

Supongo que te gusta

Origin blog.csdn.net/EasyNTS/article/details/108747702
Recomendado
Clasificación