This commit is contained in:
2026-08-15 01:40:51 +08:00
parent 2f165d3a45
commit e55fb57432
29 changed files with 163 additions and 124 deletions
+3 -3
View File
@@ -25,7 +25,7 @@ type refreshedToken struct {
expiresAt int64
}
func Auth(runtime *conf.Runtime, settings *service.SettingsService) gin.HandlerFunc {
func Auth(runtime *conf.Runtime, security *service.SecurityService, tokens *service.TokenService) gin.HandlerFunc {
return func(c *gin.Context) {
token := c.GetHeader("x-token")
if token == "" {
@@ -57,7 +57,7 @@ func Auth(runtime *conf.Runtime, settings *service.SettingsService) gin.HandlerF
httpx.NoAuth(c, message)
return
}
if disabled, checkErr := settings.IsTokenDisabled(c.Request.Context(), token); checkErr != nil || disabled {
if disabled, checkErr := tokens.IsTokenDisabled(c.Request.Context(), token); checkErr != nil || disabled {
httpx.SetTokenCookie(c, "", -1)
httpx.NoAuth(c, "您的帐户异地登陆或令牌失效")
return
@@ -82,7 +82,7 @@ func Auth(runtime *conf.Runtime, settings *service.SettingsService) gin.HandlerF
if generateErr != nil {
return nil, generateErr
}
if rotateErr := settings.RotateActiveToken(c.Request.Context(), claims.Username, token, newToken, expires); rotateErr != nil {
if rotateErr := security.RotateActiveToken(c.Request.Context(), claims.Username, token, newToken, expires); rotateErr != nil {
return nil, rotateErr
}
return refreshedToken{token: newToken, expiresAt: newClaims.ExpiresAt.Unix()}, nil
+1 -1
View File
@@ -10,7 +10,7 @@ import (
"github.com/gin-gonic/gin"
)
func SecurityRateLimit(settings *service.SettingsService) gin.HandlerFunc {
func SecurityRateLimit(settings *service.SecurityService) gin.HandlerFunc {
return func(c *gin.Context) {
path := strings.TrimSuffix(c.Request.URL.Path, "/")
if !strings.HasSuffix(path, "/base/login") && !strings.HasSuffix(path, "/base/captcha") {