zoukankan      html  css  js  c++  java
  • 国标GB28181协议视频智能分析人脸/车牌识别平台EasyCVR角色管理账户列表显示错误排查

    关于TSINGSEE青犀视频平台内的通道管理和角色管理,是我们对所有平台性能进行重新优化后的功能提升。我们之前的博文和大家分享过EasyCVR给用户分配通道后仍显示所有通道问题排查,在EasyCVR开发测试中,角色管理也出现了相同的问题,下面和大家分享下。

    EasyCVR添加某个普通用户角色过后,给这个角色分配用户,然后用该用户登录后台,发现原本应该只显示该用户的账户列表中,却显示了所有人的列表。

    通过排查代码发现,此时的sql语句为:

    SELECT user.*,t_roles.name as role_name,t_roles.id as role_id FROM “user” left join t_user_roles on user.id = t_user_roles.uid left join t_roles on t_user_roles.rid = t_roles.id LIMIT 10 OFFSET 0

    因为sql语句并没有添加筛选用户的条件,所以显示的是所有用户,我们需要添加如下代码,增加筛选条件,解决该问题:

    auth := utils.Conf().Section("base_config").Key("api_auth").MustBool(false)
    params := make(map[string]string)
    for k, v := range c.Request.URL.Query() {
           params[strings.ToLower(k)] = strings.Join(v, ",")
    }
    
    if session.Get("uname") != defAdminUser && auth {
           querysql = fmt.Sprintf(`  %s.name='%s'`, userTableName, session.Get("uname"))
           findSqlGorm = findSqlGorm.Where(querysql)
    }
    

    再次登录新添加的普通用户,列表返回正常

    EasyCVR视频协议融合平台支持传统网络摄像机、NVR、编码器、SDK等设备,最大程度的提高了硬件设备的兼容性,并且能够对接阿里云、腾讯云、华为云、七牛云等,支持S3和Swift接口的对象存储服务,简单配置,部署更高效,

    如果对EasyCVR有兴趣,欢迎联系我们获取测试账号进行测试,当然TSINGSEE青犀视频其他智能分析平台皆提供测试,更多详情可了解TSINGSEE青犀视频官方网站。

  • 相关阅读:
    CSRF跨站请求伪造
    FineReport 导出汉字乱码
    Java 程序中中文没有乱码,存入数据库后中文乱码问题
    分析函数
    Redis的持久化与主从复制
    分布式Redis的使用
    redis的介绍和安装
    Solr后台管理及SolrJ的使用
    Solr总结
    bootstrap 点击回到顶部 超简单
  • 原文地址:https://www.cnblogs.com/TSINGSEE/p/14272908.html
Copyright © 2011-2022 走看看