From b4048fbe80dba8e7756ae557a15ab60b4f80a44b Mon Sep 17 00:00:00 2001 From: 648540858 <648540858@qq.com> Date: 星期二, 04 四月 2023 09:09:07 +0800 Subject: [PATCH] 合并开源主线 --- src/main/java/com/genersoft/iot/vmp/conf/security/SecurityUtils.java | 16 +++++++++++++--- 1 files changed, 13 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/genersoft/iot/vmp/conf/security/SecurityUtils.java b/src/main/java/com/genersoft/iot/vmp/conf/security/SecurityUtils.java index fd29d11..a8d3568 100644 --- a/src/main/java/com/genersoft/iot/vmp/conf/security/SecurityUtils.java +++ b/src/main/java/com/genersoft/iot/vmp/conf/security/SecurityUtils.java @@ -1,6 +1,7 @@ package com.genersoft.iot.vmp.conf.security; import com.genersoft.iot.vmp.conf.security.dto.LoginUser; +import com.genersoft.iot.vmp.storager.dao.dto.User; import org.springframework.security.authentication.AuthenticationManager; import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; import org.springframework.security.core.Authentication; @@ -9,6 +10,7 @@ import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; import javax.security.sasl.AuthenticationException; +import java.time.LocalDateTime; public class SecurityUtils { @@ -25,9 +27,12 @@ public static LoginUser login(String username, String password, AuthenticationManager authenticationManager) throws AuthenticationException { //浣跨敤security妗嗘灦鑷甫鐨勯獙璇乼oken鐢熸垚鍣� 涔熷彲浠ヨ嚜瀹氫箟銆� UsernamePasswordAuthenticationToken token =new UsernamePasswordAuthenticationToken(username,password); + //璁よ瘉 濡傛灉澶辫触锛岃繖閲屼細鑷姩寮傚父鍚庤繑鍥烇紝鎵�浠ヨ繖閲屼笉闇�瑕佸垽鏂繑鍥炲�兼槸鍚︿负绌猴紝纭畾鏄惁鐧诲綍鎴愬姛 Authentication authenticate = authenticationManager.authenticate(token); - SecurityContextHolder.getContext().setAuthentication(authenticate); LoginUser user = (LoginUser) authenticate.getPrincipal(); + + SecurityContextHolder.getContext().setAuthentication(token); + return user; } @@ -49,8 +54,13 @@ if(authentication!=null){ Object principal = authentication.getPrincipal(); if(principal!=null && !"anonymousUser".equals(principal)){ - LoginUser user = (LoginUser) authentication.getPrincipal(); - return user; +// LoginUser user = (LoginUser) authentication.getPrincipal(); + + String username = (String) principal; + User user = new User(); + user.setUsername(username); + LoginUser loginUser = new LoginUser(user, LocalDateTime.now()); + return loginUser; } } return null; -- Gitblit v1.8.0