From ff93662b75dc7398f00649c11916f82552efebc5 Mon Sep 17 00:00:00 2001 From: vincent Date: Mon, 31 Aug 2026 14:50:49 +0800 Subject: [PATCH] =?UTF-8?q?=E7=9B=91=E7=9D=A3=E7=AB=AF=E7=99=BB=E5=BD=95?= =?UTF-8?q?=E8=B4=A6=E5=8F=B7=E9=99=90=E5=88=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/web/controller/AuthController.java | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/zdxt-web-server/zdxt-admin-web-server/src/main/java/org/dromara/web/controller/AuthController.java b/zdxt-web-server/zdxt-admin-web-server/src/main/java/org/dromara/web/controller/AuthController.java index 9f20f301..519596eb 100644 --- a/zdxt-web-server/zdxt-admin-web-server/src/main/java/org/dromara/web/controller/AuthController.java +++ b/zdxt-web-server/zdxt-admin-web-server/src/main/java/org/dromara/web/controller/AuthController.java @@ -16,13 +16,11 @@ import me.zhyd.oauth.request.AuthRequest; import me.zhyd.oauth.utils.AuthStateUtils; import org.dromara.common.core.constant.SystemConstants; import org.dromara.common.core.domain.R; -import org.dromara.common.core.domain.model.LoginBody; -import org.dromara.common.core.domain.model.LoginUser; -import org.dromara.common.core.domain.model.RegisterBody; -import org.dromara.common.core.domain.model.SocialLoginBody; +import org.dromara.common.core.domain.model.*; import org.dromara.common.core.utils.*; import org.dromara.common.encrypt.annotation.ApiEncrypt; import org.dromara.common.encrypt.utils.EncryptUtils; +import com.fasterxml.jackson.databind.JsonNode; import org.dromara.common.json.utils.JsonUtils; import org.dromara.common.ratelimiter.annotation.RateLimiter; import org.dromara.common.ratelimiter.enums.LimitType; @@ -96,6 +94,16 @@ public class AuthController { public R login(@RequestBody String body) { LoginBody loginBody = JsonUtils.parseObject(body, LoginBody.class); ValidatorUtils.validate(loginBody); + + // 仅允许admin登录限制 + String loginAccount = configService.selectConfigByKey("login.account"); + if ("1".equals(loginAccount)) { + PasswordLoginBody passwordLoginBody = JsonUtils.parseObject(body, PasswordLoginBody.class); + if (!"admin".equals(passwordLoginBody.getUsername())) { + return R.fail("当前仅允许管理员登录"); + } + } + // 授权类型和客户端id String clientId = loginBody.getClientId(); String grantType = loginBody.getGrantType();