diff --git a/lidee-common/lidee-boot-security/src/main/java/top/lidee/taie/security/security/SecurityConfiguration.java b/lidee-common/lidee-boot-security/src/main/java/top/lidee/taie/security/security/SecurityConfiguration.java
index 95ef8ac..ea081c3 100644
--- a/lidee-common/lidee-boot-security/src/main/java/top/lidee/taie/security/security/SecurityConfiguration.java
+++ b/lidee-common/lidee-boot-security/src/main/java/top/lidee/taie/security/security/SecurityConfiguration.java
@@ -178,7 +178,7 @@ public class SecurityConfiguration extends WebSecurityConfigurerAdapter {
.sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS)
.and()
.authorizeRequests()
- .antMatchers("/login/**","/logout", "/health", "/user/loginCode/**").permitAll()
+ .antMatchers("/login/**","/logout","/outlogcas", "/health", "/user/loginCode/**").permitAll()
.mvcMatchers(HttpMethod.GET,"/dict/item/**").permitAll()
.anyRequest().authenticated()
.and()
diff --git a/lidee-common/lidee-boot-taie/pom.xml b/lidee-common/lidee-boot-taie/pom.xml
index 14d32e6..bca9c4c 100644
--- a/lidee-common/lidee-boot-taie/pom.xml
+++ b/lidee-common/lidee-boot-taie/pom.xml
@@ -106,6 +106,14 @@
org.projectlombok
lombok
+
+ org.apache.httpcomponents
+ httpcore
+
+
+ org.apache.httpcomponents
+ httpclient
+
diff --git a/lidee-common/lidee-boot-taie/src/main/java/top/lidee/taie/http/HttpClientUtils.java b/lidee-common/lidee-boot-taie/src/main/java/top/lidee/taie/http/HttpClientUtils.java
index 19100ec..81fdf0f 100644
--- a/lidee-common/lidee-boot-taie/src/main/java/top/lidee/taie/http/HttpClientUtils.java
+++ b/lidee-common/lidee-boot-taie/src/main/java/top/lidee/taie/http/HttpClientUtils.java
@@ -1,6 +1,12 @@
package top.lidee.taie.http;
import com.alibaba.fastjson.JSONObject;
+import org.apache.http.client.methods.CloseableHttpResponse;
+import org.apache.http.client.methods.HttpPost;
+import org.apache.http.entity.StringEntity;
+import org.apache.http.impl.client.CloseableHttpClient;
+import org.apache.http.impl.client.HttpClients;
+import org.apache.http.util.EntityUtils;
import top.lidee.taie.http.ssl.SslSocketClient;
import okhttp3.*;
@@ -135,4 +141,40 @@ public class HttpClientUtils {
Request request = new Request.Builder().url(url).headers(headers).delete().build();
httpClient.newCall(request).enqueue(callback);
}
+
+
+ public static String getPost(String url,String Token)
+ {
+
+ try {
+ // 创建HttpClient实例
+ CloseableHttpClient httpClient = HttpClients.createDefault();
+ // 创建POST请求
+ HttpPost httpPost = new HttpPost(url);
+
+ // 设置请求体
+ StringEntity params = new StringEntity("refreshToken="+Token);
+ httpPost.setEntity(params);
+
+ httpPost.setHeader("Authorization",Token);
+
+ // 发送请求并获取响应
+ CloseableHttpResponse response = httpClient.execute(httpPost);
+ try {
+ // 获取响应状态码
+ System.out.println(response.getStatusLine().getStatusCode());
+ // 获取响应体内容
+ String result = EntityUtils.toString(response.getEntity());
+ System.out.println(result);
+ return result;
+ } finally {
+ response.close();
+ }
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ return "";
+ }
+
+
}
diff --git a/lidee-common/pom.xml b/lidee-common/pom.xml
index ab60b2b..7456968 100644
--- a/lidee-common/pom.xml
+++ b/lidee-common/pom.xml
@@ -8,7 +8,7 @@
spring-boot-starter-parent
2.7.14
-
+
top.lidee.taie
lidee-common
diff --git a/lidee-server/src/main/java/top/lidee/taie/business/modules/accessuser/controller/AccessUserController.java b/lidee-server/src/main/java/top/lidee/taie/business/modules/accessuser/controller/AccessUserController.java
index e6664e2..234d7ef 100644
--- a/lidee-server/src/main/java/top/lidee/taie/business/modules/accessuser/controller/AccessUserController.java
+++ b/lidee-server/src/main/java/top/lidee/taie/business/modules/accessuser/controller/AccessUserController.java
@@ -21,6 +21,7 @@ import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
+import java.io.IOException;
import java.util.Map;
/**
@@ -99,9 +100,19 @@ public class AccessUserController extends LideeBaseController result = new HashMap();
@@ -146,7 +156,7 @@ public class AccessUserServiceImpl implements AccessUserService {
throw BusinessExceptionBuilder.build("用户不存在");
}
//默认密码
- accessUser.setPassword(MD5Util.encrypt(MD5Util.encrypt(defaultPassword.concat("lidee@123"))));
+ accessUser.setPassword(MD5Util.encrypt(MD5Util.encrypt(defaultPassword.concat("Lidee@654!"))));
accessUserMapper.updateById(accessUser);
return true;
}
@@ -220,20 +230,19 @@ public class AccessUserServiceImpl implements AccessUserService {
@Override
public LideeUserDto logincas(LideeUserDto lideeUserDto) {
+ String loginName="";
+ String url = casLoginUrl+"?refreshToken="+ lideeUserDto.getLoginName();
- //根据ticker获取用户信息
+ String response = HttpClientUtils.getPost(url, lideeUserDto.getLoginName());
- String loginName = lideeUserDto.getLoginName();
+ JSONObject jsonObject = null;
+ jsonObject= JSONObject.parseObject(response);
+ if(Integer.parseInt(jsonObject.getString("code"))==0)
+ {
+ loginName=jsonObject.getJSONObject("data").getString("username");
+ }
- loginName="admin";
-// String password = lideeUserDto.getPassword();
String password ="Lidee@654!";
- //将ticket保存到 redis 方便退出使用 key为username_ticket
-
-
-
-
-
// 1.判断用户是否存在
LambdaQueryWrapper wrapper = Wrappers.lambdaQuery();
wrapper.eq(AccessUser::getLoginName, loginName);
@@ -290,10 +299,25 @@ public class AccessUserServiceImpl implements AccessUserService {
String ldUserStr = JSONObject.toJSONString(lduser);
cacheHelper.stringSetExpire(userKey, ldUserStr, 3600);
-
+ cacheHelper.stringSetExpire(loginName+"_cas", lideeUserDto.getLoginName(), 360000);
+// String ss= cacheHelper.stringGet(loginName+"_cas");
return lduser;
}
+ @Override
+ public Boolean outlogincas(LideeUserDto lideeUserDto) {
+
+ String token= cacheHelper.stringGet(lideeUserDto.getLoginName()+"_cas");
+
+ String url = casoutlogouturl+"?refreshToken="+ token;
+
+ String response = HttpClientUtils.getPost(url, token);
+
+ return true;
+ }
+
+
+
/**
* 修改密码
@@ -341,7 +365,7 @@ public class AccessUserServiceImpl implements AccessUserService {
switch (operationEnum) {
case INSERT:
//lidee是为了和前端加密保持一致
- entity.setPassword(MD5Util.encrypt(MD5Util.encrypt(defaultPassword.concat("lidee"))));
+ entity.setPassword(MD5Util.encrypt(MD5Util.encrypt(defaultPassword.concat("Lidee@654!"))));
break;
case UPDATE:
//更新用户不允许修改密码
@@ -353,4 +377,7 @@ public class AccessUserServiceImpl implements AccessUserService {
}
}
+
+
+
}
diff --git a/lidee-server/src/main/resources/bootstrap.yml b/lidee-server/src/main/resources/bootstrap.yml
index 7b8649f..d24dafe 100644
--- a/lidee-server/src/main/resources/bootstrap.yml
+++ b/lidee-server/src/main/resources/bootstrap.yml
@@ -145,3 +145,8 @@ customer:
##新增用户默认密码
default:
password: Lidee@654!
+cas:
+# loginurl: http://127.0.0.1:48080/admin-api/system/auth/user-info
+# outlogouturl: http://127.0.0.1:48080/admin-api/system/auth/logout-client
+ loginurl: http://192.168.1.241/admin-api/system/auth/user-info
+ outlogouturl: http://192.168.1.241/admin-api/system/auth/logout-client