Commit f0b21d20 by zhangxingmin

日志

parent 2571d69f
package com.yd.auth.core.security; package com.yd.auth.core.security;
import lombok.extern.slf4j.Slf4j;
import org.springframework.security.core.AuthenticationException; import org.springframework.security.core.AuthenticationException;
import org.springframework.security.web.AuthenticationEntryPoint; import org.springframework.security.web.AuthenticationEntryPoint;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
...@@ -8,6 +9,7 @@ import javax.servlet.http.HttpServletRequest; ...@@ -8,6 +9,7 @@ import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import java.io.IOException; import java.io.IOException;
@Slf4j
@Component @Component
public class JwtAuthenticationEntryPoint implements AuthenticationEntryPoint { public class JwtAuthenticationEntryPoint implements AuthenticationEntryPoint {
...@@ -16,6 +18,7 @@ public class JwtAuthenticationEntryPoint implements AuthenticationEntryPoint { ...@@ -16,6 +18,7 @@ public class JwtAuthenticationEntryPoint implements AuthenticationEntryPoint {
HttpServletResponse response, HttpServletResponse response,
AuthenticationException authException) throws IOException { AuthenticationException authException) throws IOException {
log.info("JwtAuthenticationEntryPoint commence:{}","未经授权的访问");
// 设置响应类型为JSON // 设置响应类型为JSON
response.setContentType("application/json;charset=UTF-8"); response.setContentType("application/json;charset=UTF-8");
// 直接设置401状态码 // 直接设置401状态码
......
...@@ -9,6 +9,7 @@ import com.yd.user.feign.request.sysuser.ApiSysUserDetailBodyRequest; ...@@ -9,6 +9,7 @@ import com.yd.user.feign.request.sysuser.ApiSysUserDetailBodyRequest;
import com.yd.user.feign.response.sysuser.ApiSysUserDetailResponse; import com.yd.user.feign.response.sysuser.ApiSysUserDetailResponse;
import com.yd.user.service.model.SysUser; import com.yd.user.service.model.SysUser;
import com.yd.user.service.service.ISysUserService; import com.yd.user.service.service.ISysUserService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.beans.factory.annotation.Qualifier;
...@@ -26,6 +27,7 @@ import javax.servlet.http.HttpServletResponse; ...@@ -26,6 +27,7 @@ import javax.servlet.http.HttpServletResponse;
import java.io.IOException; import java.io.IOException;
import java.util.Objects; import java.util.Objects;
@Slf4j
@Component @Component
public class JwtAuthenticationFilter extends OncePerRequestFilter { public class JwtAuthenticationFilter extends OncePerRequestFilter {
...@@ -52,6 +54,7 @@ public class JwtAuthenticationFilter extends OncePerRequestFilter { ...@@ -52,6 +54,7 @@ public class JwtAuthenticationFilter extends OncePerRequestFilter {
// 1. 从HTTP请求中解析JWT令牌(通常从Authorization头获取) // 1. 从HTTP请求中解析JWT令牌(通常从Authorization头获取)
String token = resolveToken(request); String token = resolveToken(request);
log.info("从HTTP请求中解析JWT令牌(通常从Authorization头获取):{}",token);
// 2. 检查令牌是否存在且有效 // 2. 检查令牌是否存在且有效
if (token != null && tokenProvider.validateToken(token)) { if (token != null && tokenProvider.validateToken(token)) {
......
package com.yd.auth.core.service.impl; package com.yd.auth.core.service.impl;
import com.alibaba.fastjson.JSON;
import com.yd.auth.core.config.LoginConfig; import com.yd.auth.core.config.LoginConfig;
import com.yd.auth.core.dto.AuthUserDto; import com.yd.auth.core.dto.AuthUserDto;
import com.yd.auth.core.request.LoginRequest; import com.yd.auth.core.request.LoginRequest;
...@@ -11,6 +12,7 @@ import com.yd.common.utils.RedisUtil; ...@@ -11,6 +12,7 @@ import com.yd.common.utils.RedisUtil;
import com.yd.common.utils.SM3Util; import com.yd.common.utils.SM3Util;
import com.yd.user.service.model.SysUser; import com.yd.user.service.model.SysUser;
import com.yd.user.service.service.ISysUserService; import com.yd.user.service.service.ISysUserService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.security.authentication.AuthenticationManager; import org.springframework.security.authentication.AuthenticationManager;
...@@ -23,6 +25,7 @@ import org.springframework.stereotype.Service; ...@@ -23,6 +25,7 @@ import org.springframework.stereotype.Service;
import java.util.Objects; import java.util.Objects;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
@Slf4j
@Service @Service
public class AuthServiceImpl implements AuthService { public class AuthServiceImpl implements AuthService {
...@@ -61,6 +64,7 @@ public class AuthServiceImpl implements AuthService { ...@@ -61,6 +64,7 @@ public class AuthServiceImpl implements AuthService {
throw new UsernameNotFoundException("用户不存在"); throw new UsernameNotFoundException("用户不存在");
} }
log.info("通过Feign调用yd-user-service服务获取用户信息:{}", JSON.toJSONString(sysUser));
//密码:SM3国密算法 //密码:SM3国密算法
//生成盐值 //生成盐值
String salt = sysUser.getPasswordSalt(); String salt = sysUser.getPasswordSalt();
...@@ -91,6 +95,7 @@ public class AuthServiceImpl implements AuthService { ...@@ -91,6 +95,7 @@ public class AuthServiceImpl implements AuthService {
// - 令牌中包含用户标识和权限信息 // - 令牌中包含用户标识和权限信息
String token = jwtTokenProvider.generateToken(authenticated); String token = jwtTokenProvider.generateToken(authenticated);
log.info("生成JWT令牌:{}", token);
// 5. 构建登录响应对象 // 5. 构建登录响应对象
LoginResponse response = new LoginResponse(); LoginResponse response = new LoginResponse();
response.setToken(token); // 设置生成的JWT令牌 response.setToken(token); // 设置生成的JWT令牌
......
package com.yd.auth.core.service.impl; package com.yd.auth.core.service.impl;
import com.alibaba.fastjson.JSON;
import com.yd.auth.core.dto.AuthUserDto; import com.yd.auth.core.dto.AuthUserDto;
import com.yd.common.result.Result; import com.yd.common.result.Result;
import com.yd.user.feign.client.sysuser.ApiSysUserFeignClient; import com.yd.user.feign.client.sysuser.ApiSysUserFeignClient;
...@@ -7,6 +8,7 @@ import com.yd.user.feign.request.sysuser.ApiSysUserDetailBodyRequest; ...@@ -7,6 +8,7 @@ import com.yd.user.feign.request.sysuser.ApiSysUserDetailBodyRequest;
import com.yd.user.feign.response.sysuser.ApiSysUserDetailResponse; import com.yd.user.feign.response.sysuser.ApiSysUserDetailResponse;
import com.yd.user.service.model.SysUser; import com.yd.user.service.model.SysUser;
import com.yd.user.service.service.ISysUserService; import com.yd.user.service.service.ISysUserService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.beans.factory.annotation.Qualifier;
...@@ -21,6 +23,8 @@ import java.util.Objects; ...@@ -21,6 +23,8 @@ import java.util.Objects;
* authenticationManager.authenticate(authentication) -->进行spring security 登录认证 * authenticationManager.authenticate(authentication) -->进行spring security 登录认证
* --> spring security 登录认证会走到这里去获取用户表的数据进行用户名和密码对比返回最后认证是否成功的结果 * --> spring security 登录认证会走到这里去获取用户表的数据进行用户名和密码对比返回最后认证是否成功的结果
*/ */
@Slf4j
@Service @Service
public class AuthUserDetailsService implements UserDetailsService { public class AuthUserDetailsService implements UserDetailsService {
...@@ -39,6 +43,7 @@ public class AuthUserDetailsService implements UserDetailsService { ...@@ -39,6 +43,7 @@ public class AuthUserDetailsService implements UserDetailsService {
ApiSysUserDetailBodyRequest request = new ApiSysUserDetailBodyRequest(); ApiSysUserDetailBodyRequest request = new ApiSysUserDetailBodyRequest();
request.setUserName(username); request.setUserName(username);
Result<ApiSysUserDetailResponse> result = apiSysUserFeignClient.detail(request); Result<ApiSysUserDetailResponse> result = apiSysUserFeignClient.detail(request);
log.info("loadUserByUsername获取用户信息:{}", JSON.toJSONString(result));
if (Objects.isNull(result.getData())) { if (Objects.isNull(result.getData())) {
throw new UsernameNotFoundException("用户不存在"); throw new UsernameNotFoundException("用户不存在");
} }
......
...@@ -37,6 +37,7 @@ public enum CommonEnum { ...@@ -37,6 +37,7 @@ public enum CommonEnum {
UID_TYPE_EMAIL_VARIABLE_GROUP("email_variable_group","变量分组表"), UID_TYPE_EMAIL_VARIABLE_GROUP("email_variable_group","变量分组表"),
UID_TYPE_EMAIL_CONTACT_IMPORT("email_contact_import","邮件联系人导入临时表"), UID_TYPE_EMAIL_CONTACT_IMPORT("email_contact_import","邮件联系人导入临时表"),
UID_TYPE_EMAIL_TASK("email_task","邮件任务表"), UID_TYPE_EMAIL_TASK("email_task","邮件任务表"),
UID_TYPE_ANSWER_SESSIONS("answer_sessions","答题会话表"),
//作用域枚举 //作用域枚举
SCOPE_SYS("1","系统级(全局)"), SCOPE_SYS("1","系统级(全局)"),
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment