fix: 解决请求信息通过伪造绕过校验的问题 (#166)

This commit is contained in:
二丫讲梵
2023-04-03 17:17:36 +08:00
committed by GitHub
parent b4ff4d275a
commit 5d648a8ce4
2 changed files with 7 additions and 11 deletions

View File

@@ -72,7 +72,7 @@ func ProcessRequest(rmsg *dingbot.ReceiveMsg) error {
logger.Warning(fmt.Errorf("send message error: %v", err))
}
case "查对话":
msg := "使用如下指令进行查询:\n\n---\n\n**#查对话 username:张三**\n\n---\n\n需要注意格式必须严格与上边一致否则会查询失败\n\n只有钉钉管理员,程序系统管理员,与查自己的情况下,才会被允许"
msg := "使用如下指令进行查询:\n\n---\n\n**#查对话 username:张三**\n\n---\n\n需要注意格式必须严格与上边一致否则会查询失败\n\n只有程序系统管理员有权限查询即config.yml中的admin_users指定的人员。"
_, err := rmsg.ReplyToDingtalk(string(dingbot.MARKDOWN), msg)
if err != nil {
logger.Warning(fmt.Errorf("send message error: %v", err))
@@ -264,8 +264,8 @@ func ImageGenerate(rmsg *dingbot.ReceiveMsg) error {
}
func SelectHistory(rmsg *dingbot.ReceiveMsg) error {
name := strings.TrimSpace(strings.Split(rmsg.Text.Content, ":")[1])
if !rmsg.IsAdmin && name != rmsg.SenderNick && !public.JudgeAdminUsers(rmsg.SenderNick) {
_, err := rmsg.ReplyToDingtalk(string(dingbot.MARKDOWN), "**🤷 抱歉,您没有权限查询其他人的对话记录**")
if !public.JudgeAdminUsers(rmsg.SenderNick) {
_, err := rmsg.ReplyToDingtalk(string(dingbot.MARKDOWN), "**🤷 抱歉,您没有查询对话记录的权限,只有程序管理员可以查询**")
if err != nil {
logger.Error(fmt.Errorf("send message error: %v", err))
return err