Browse Source

引入 cn.reghao.jutil.auth 依赖提供的 JwtUtil

reghao 4 tháng trước cách đây
mục cha
commit
7b0fc8a86f

+ 0 - 20
oss-api/src/main/java/cn/reghao/oss/api/dto/OssPayload.java

@@ -1,20 +0,0 @@
-package cn.reghao.oss.api.dto;
-
-import lombok.AllArgsConstructor;
-import lombok.Getter;
-
-import java.io.Serializable;
-
-/**
- * @author reghao
- * @date 2023-08-23 10:26:01
- */
-@AllArgsConstructor
-@Getter
-public class OssPayload implements Serializable {
-    private static final long serialVersionUID = 1L;
-
-    private String action;
-    private int channelCode;
-    private int userId;
-}

+ 1 - 1
oss-store/bin/oss.yml

@@ -11,4 +11,4 @@ oss:
   store-dirs:
     - /disk/13f654c8-af87-4710-aac9-7aa086c99aec/
   console-host: 127.0.0.1
-  console-port: 6104
+  console-port: 6103

+ 6 - 26
oss-store/pom.xml

@@ -35,6 +35,12 @@
     </dependencyManagement>
 
     <dependencies>
+        <dependency>
+            <groupId>cn.reghao.jutil</groupId>
+            <artifactId>auth</artifactId>
+            <version>1.0.0-SNAPSHOT</version>
+        </dependency>
+
         <dependency>
             <groupId>cn.reghao.jutil</groupId>
             <artifactId>jdk</artifactId>
@@ -138,32 +144,6 @@
             <artifactId>oshi-core</artifactId>
             <version>6.6.3</version>
         </dependency>
-
-        <dependency>
-            <groupId>io.jsonwebtoken</groupId>
-            <artifactId>jjwt-api</artifactId>
-            <version>0.12.6</version>
-        </dependency>
-        <dependency>
-            <groupId>javax.xml.bind</groupId>
-            <artifactId>jaxb-api</artifactId>
-            <version>2.3.0</version>
-        </dependency>
-        <dependency>
-            <groupId>com.sun.xml.bind</groupId>
-            <artifactId>jaxb-impl</artifactId>
-            <version>2.3.3</version>
-        </dependency>
-        <dependency>
-            <groupId>com.sun.xml.bind</groupId>
-            <artifactId>jaxb-core</artifactId>
-            <version>2.3.0</version>
-        </dependency>
-        <dependency>
-            <groupId>javax.activation</groupId>
-            <artifactId>activation</artifactId>
-            <version>1.1.1</version>
-        </dependency>
     </dependencies>
 
     <profiles>

+ 2 - 2
oss-store/src/main/java/cn/reghao/oss/store/config/inerceptor/TokenFilter.java

@@ -1,9 +1,9 @@
 package cn.reghao.oss.store.config.inerceptor;
 
 import cn.reghao.oss.store.util.AuthContext;
-import cn.reghao.oss.store.util.JwtUtil;
 import cn.reghao.jutil.web.ServletUtil;
-import cn.reghao.jutil.jdk.model.jwt.OssPayload;
+import cn.reghao.jutil.auth.JwtUtil;
+import cn.reghao.jutil.auth.model.OssPayload;
 import com.github.benmanes.caffeine.cache.Cache;
 import org.springframework.stereotype.Component;
 

+ 2 - 2
oss-store/src/main/java/cn/reghao/oss/store/controller/ObjectGetController.java

@@ -8,10 +8,10 @@ import cn.reghao.oss.api.dto.ObjectMeta;
 import cn.reghao.oss.store.db.repository.ObjectRepository;
 import cn.reghao.oss.store.service.ConsoleServiceWrapper;
 import cn.reghao.oss.store.service.GetObjectService;
-import cn.reghao.oss.store.util.JwtUtil;
+import cn.reghao.jutil.auth.JwtUtil;;
 import cn.reghao.oss.store.util.ObjectUtil;
 import cn.reghao.oss.store.util.SignatureUtil;
-import cn.reghao.jutil.jdk.model.jwt.OssPayload;
+import cn.reghao.jutil.auth.model.OssPayload;
 import com.github.benmanes.caffeine.cache.Cache;
 import org.springframework.web.bind.annotation.*;
 

+ 2 - 2
oss-store/src/main/java/cn/reghao/oss/store/controller/ObjectMultipartUploadController.java

@@ -2,9 +2,9 @@ package cn.reghao.oss.store.controller;
 
 import cn.reghao.jutil.web.ServletUtil;
 import cn.reghao.oss.api.dto.ObjectChannel;
-import cn.reghao.jutil.jdk.model.jwt.OssPayload;
+import cn.reghao.jutil.auth.model.OssPayload;
 import cn.reghao.oss.store.util.AuthContext;
-import cn.reghao.oss.store.util.JwtUtil;
+import cn.reghao.jutil.auth.JwtUtil;;
 import cn.reghao.oss.api.rest.UploadFilePart;
 import cn.reghao.oss.api.rest.UploadFileRet;
 import cn.reghao.oss.api.rest.UploadedPart;

+ 2 - 2
oss-store/src/main/java/cn/reghao/oss/store/controller/ObjectUploadController.java

@@ -6,12 +6,12 @@ import cn.reghao.oss.api.rest.UploadFileRet;
 import cn.reghao.oss.store.model.vo.ObjectProp;
 import cn.reghao.oss.store.model.vo.ObjectResult;
 import cn.reghao.oss.store.service.*;
-import cn.reghao.oss.store.util.JwtUtil;
+import cn.reghao.jutil.auth.JwtUtil;;
 import cn.reghao.jutil.jdk.result.Result;
 import cn.reghao.jutil.jdk.result.WebResult;
 import cn.reghao.jutil.jdk.security.DigestUtil;
 import cn.reghao.jutil.web.ServletUtil;
-import cn.reghao.jutil.jdk.model.jwt.OssPayload;
+import cn.reghao.jutil.auth.model.OssPayload;
 import com.github.benmanes.caffeine.cache.Cache;
 import org.apache.commons.io.FileUtils;
 import org.springframework.http.HttpStatus;

+ 3 - 3
oss-store/src/main/java/cn/reghao/oss/store/rpc/StoreServiceImpl.java

@@ -1,7 +1,7 @@
 package cn.reghao.oss.store.rpc;
 
 import cn.reghao.jutil.jdk.db.PageList;
-import cn.reghao.jutil.jdk.model.jwt.OssPayload;
+import cn.reghao.jutil.auth.model.OssPayload;
 import cn.reghao.jutil.jdk.security.RandomString;
 import cn.reghao.oss.api.constant.ChannelAction;
 import cn.reghao.oss.api.constant.ObjectScope;
@@ -11,7 +11,7 @@ import cn.reghao.oss.api.dto.media.AudioInfo;
 import cn.reghao.oss.api.dto.media.ConvertedImageInfo;
 import cn.reghao.oss.api.dto.media.ImageInfo;
 import cn.reghao.oss.api.dto.media.VideoInfo;
-import cn.reghao.oss.store.util.JwtUtil;
+import cn.reghao.jutil.auth.JwtUtil;;
 import cn.reghao.oss.store.db.repository.ObjectRepository;
 import cn.reghao.oss.store.model.po.FileMeta;
 import cn.reghao.oss.api.dto.ObjectMeta;
@@ -82,7 +82,7 @@ public class StoreServiceImpl implements StoreService {
         String action = ChannelAction.upload.getName();
         long expireAt = System.currentTimeMillis() + expire*1000L;
         OssPayload ossPayload = new OssPayload(channelCode, action, owner);
-        String uploadToken = JwtUtil.createToken(ossPayload, expireAt, secretKey);
+        String uploadToken = JwtUtil.createOssToken(ossPayload, expireAt, secretKey);
         cache.put(uploadToken, secretKey);
         return uploadToken;
     }

+ 3 - 3
oss-store/src/main/java/cn/reghao/oss/store/service/SignService.java

@@ -1,10 +1,10 @@
 package cn.reghao.oss.store.service;
 
 import cn.reghao.jutil.jdk.security.RandomString;
-import cn.reghao.oss.store.util.JwtUtil;
+import cn.reghao.jutil.auth.JwtUtil;;
 import cn.reghao.oss.store.util.SignatureUtil;
 import cn.reghao.oss.api.constant.ChannelAction;
-import cn.reghao.jutil.jdk.model.jwt.OssPayload;
+import cn.reghao.jutil.auth.model.OssPayload;
 import com.github.benmanes.caffeine.cache.Cache;
 import org.springframework.stereotype.Service;
 
@@ -36,7 +36,7 @@ public class SignService {
 
         //String secretKey = consoleService.getSecretKey();
         String secretKey = RandomString.getString(128);
-        String token = JwtUtil.createToken(ossPayload, timestamp, secretKey);
+        String token = JwtUtil.createOssToken(ossPayload, timestamp, secretKey);
         cache.put(token, secretKey);
 
         String nonce = UUID.randomUUID().toString();

+ 0 - 34
oss-store/src/main/java/cn/reghao/oss/store/util/JwtUtil.java

@@ -1,34 +0,0 @@
-package cn.reghao.oss.store.util;
-
-import cn.reghao.jutil.jdk.model.jwt.OssPayload;
-import io.jsonwebtoken.Claims;
-import io.jsonwebtoken.Jwts;
-import io.jsonwebtoken.SignatureAlgorithm;
-
-import java.util.Date;
-
-/**
- * JWT 令牌
- *
- * @author reghao
- * @date 2023-08-23 09:10:58
- */
-public class JwtUtil {
-    public static String createToken(OssPayload ossPayload, long expireAt, String signKey) {
-        return Jwts.builder()
-                .claim("action", ossPayload.getAction())
-                .claim("channelCode", ossPayload.getChannelCode())
-                .setSubject(String.valueOf(ossPayload.getUserId()))
-                .setExpiration(new Date(expireAt))
-                .signWith(SignatureAlgorithm.HS256, signKey)
-                .compact();
-    }
-
-    public static OssPayload getOssPayload(String token, String signKey) {
-        Claims claims = Jwts.parser().setSigningKey(signKey).parseClaimsJws(token).getBody();
-        String action = (String) claims.get("action");
-        int channelCode = (Integer) claims.get("channelCode");
-        String userIdStr = claims.getSubject();
-        return new OssPayload(channelCode, action, Integer.parseInt(userIdStr));
-    }
-}

+ 1 - 1
oss-store/src/main/resources/application-dev.yml

@@ -8,4 +8,4 @@ oss:
   store-dirs:
     - /disk/2/
   console-host: 127.0.0.1
-  console-port: 6104
+  console-port: 6103

+ 1 - 1
oss-store/src/main/resources/application-test.yml

@@ -8,4 +8,4 @@ oss:
   store-dirs:
     - /disk/13f654c8-af87-4710-aac9-7aa086c99aec/
   console-host: 127.0.0.1
-  console-port: 6104
+  console-port: 6103