From 807d0524a6e965599f9cdbfc7bbf7504c4d9b917 Mon Sep 17 00:00:00 2001 From: 648540858 <648540858@qq.com> Date: 星期二, 23 五月 2023 10:34:00 +0800 Subject: [PATCH] 修复推流鉴权 --- src/main/java/com/genersoft/iot/vmp/service/impl/UserServiceImpl.java | 23 +++++++++++++++++------ 1 files changed, 17 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/genersoft/iot/vmp/service/impl/UserServiceImpl.java b/src/main/java/com/genersoft/iot/vmp/service/impl/UserServiceImpl.java index aeba9ed..efbb24d 100644 --- a/src/main/java/com/genersoft/iot/vmp/service/impl/UserServiceImpl.java +++ b/src/main/java/com/genersoft/iot/vmp/service/impl/UserServiceImpl.java @@ -7,8 +7,7 @@ import com.github.pagehelper.PageInfo; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import org.springframework.util.ObjectUtils; -import org.springframework.util.StringUtils; +import org.springframework.util.DigestUtils; import java.util.List; @@ -61,11 +60,23 @@ @Override public boolean checkPushAuthority(String callId, String sign) { - if (ObjectUtils.isEmpty(callId)) { - return userMapper.checkPushAuthorityByCallId(sign).size() > 0; - }else { - return userMapper.checkPushAuthorityByCallIdAndSign(callId, sign).size() > 0; + + List<User> users = userMapper.getUsers(); + if (users.size() == 0) { + return false; } + for (User user : users) { + if (user.getPushKey() == null) { + continue; + } + String checkStr = callId == null? user.getPushKey():(callId + "_" + user.getPushKey()) ; + System.out.println(checkStr); + String checkSign = DigestUtils.md5DigestAsHex(checkStr.getBytes()); + if (checkSign.equals(sign)) { + return true; + } + } + return false; } @Override -- Gitblit v1.8.0