From 7e00eafd0a519b48b69dd209026cfe3a9cf353c2 Mon Sep 17 00:00:00 2001
From: guoshilong <123456>
Date: Wed, 16 Aug 2023 09:16:59 +0800
Subject: [PATCH] 微信登录设置标识

---
 skjcmanager/skjcmanager-auth/src/main/java/cn/gistack/auth/granter/WxPhoneNumberTokenGranter.java |    9 +++++++++
 1 files changed, 9 insertions(+), 0 deletions(-)

diff --git a/skjcmanager/skjcmanager-auth/src/main/java/cn/gistack/auth/granter/WxPhoneNumberTokenGranter.java b/skjcmanager/skjcmanager-auth/src/main/java/cn/gistack/auth/granter/WxPhoneNumberTokenGranter.java
index 93a20f7..50902da 100644
--- a/skjcmanager/skjcmanager-auth/src/main/java/cn/gistack/auth/granter/WxPhoneNumberTokenGranter.java
+++ b/skjcmanager/skjcmanager-auth/src/main/java/cn/gistack/auth/granter/WxPhoneNumberTokenGranter.java
@@ -44,6 +44,15 @@
 	protected OAuth2Authentication getOAuth2Authentication(ClientDetails client, TokenRequest tokenRequest) {
 		Map<String, String> parameters = new LinkedHashMap<String, String>(tokenRequest.getRequestParameters());
 		String phone = parameters.get("username");
+		String code = parameters.get("password");
+
+		//password和redis中的对比
+		String redisCode = bladeRedis.get(CacheNames.WX_KEY + phone);
+		// 判断验证码
+		if (code == null || !StringUtil.equalsIgnoreCase(redisCode, code)) {
+			throw new UserDeniedAuthorizationException("登录失败");
+		}
+
 		// 通过手机号查询用户
 		Authentication userAuth = new UsernamePasswordAuthenticationToken(phone, "CUSTOM_LOGIN_WX");
 		((AbstractAuthenticationToken) userAuth).setDetails(parameters);

--
Gitblit v1.9.3