mirror of
https://github.com/TeaOSLab/EdgeNode.git
synced 2026-02-10 20:35:37 +08:00
改进Captcha认证计数
This commit is contained in:
@@ -5,6 +5,7 @@ package waf
|
||||
import (
|
||||
"github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs/firewallconfigs"
|
||||
"github.com/TeaOSLab/EdgeNode/internal/ttlcache"
|
||||
"github.com/TeaOSLab/EdgeNode/internal/utils"
|
||||
"github.com/TeaOSLab/EdgeNode/internal/waf/requests"
|
||||
"github.com/iwind/TeaGo/types"
|
||||
"time"
|
||||
@@ -50,5 +51,14 @@ func CaptchaDeleteCacheKey(req requests.Request) {
|
||||
|
||||
// CaptchaCacheKey 获取Captcha缓存Key
|
||||
func CaptchaCacheKey(req requests.Request, pageCode CaptchaPageCode) string {
|
||||
return "CAPTCHA:FAILS:" + pageCode + ":" + req.WAFRemoteIP() + ":" + types.String(req.WAFServerId()) + ":" + req.WAFRaw().URL.String()
|
||||
var requestPath = req.WAFRaw().URL.Path
|
||||
|
||||
if req.WAFRaw().URL.Path == CaptchaPath {
|
||||
m, err := utils.SimpleDecryptMap(req.WAFRaw().URL.Query().Get("info"))
|
||||
if err == nil && m != nil {
|
||||
requestPath = m.GetString("url")
|
||||
}
|
||||
}
|
||||
|
||||
return "CAPTCHA:FAILS:" + pageCode + ":" + req.WAFRemoteIP() + ":" + types.String(req.WAFServerId()) + ":" + requestPath
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user