From 83fdf8582cd37b0603dba3f4d0a869453722e292 Mon Sep 17 00:00:00 2001
From: wayne <wayne8692wayne8692@gmail.com>
Date: 星期一, 29 十一月 2021 12:03:38 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 pamapi/src/main/java/com/pollex/pam/security/jwt/TokenProvider.java |    6 +++++-
 1 files changed, 5 insertions(+), 1 deletions(-)

diff --git a/pamapi/src/main/java/com/pollex/pam/security/jwt/TokenProvider.java b/pamapi/src/main/java/com/pollex/pam/security/jwt/TokenProvider.java
index d17fca0..1986286 100644
--- a/pamapi/src/main/java/com/pollex/pam/security/jwt/TokenProvider.java
+++ b/pamapi/src/main/java/com/pollex/pam/security/jwt/TokenProvider.java
@@ -24,6 +24,7 @@
     private final Logger log = LoggerFactory.getLogger(TokenProvider.class);
 
     private static final String AUTHORITIES_KEY = "auth";
+    private static final String AUTHORITIES_DETAILS = "details";
 
     private final Key key;
 
@@ -69,6 +70,7 @@
             .builder()
             .setSubject(authentication.getName())
             .claim(AUTHORITIES_KEY, authorities)
+            .claim(AUTHORITIES_DETAILS, authentication.getDetails())
             .signWith(key, SignatureAlgorithm.HS512)
             .setExpiration(validity)
             .compact();
@@ -84,8 +86,10 @@
             .collect(Collectors.toList());
 
         User principal = new User(claims.getSubject(), "", authorities);
+        UsernamePasswordAuthenticationToken authInfo = new UsernamePasswordAuthenticationToken(principal, token, authorities);
+        authInfo.setDetails(claims.get(AUTHORITIES_DETAILS));
 
-        return new UsernamePasswordAuthenticationToken(principal, token, authorities);
+        return authInfo;
     }
 
     public boolean validateToken(String authToken) {

--
Gitblit v1.8.0