Browse Source

配置文件加密脱敏处理

skcj 2 years ago
parent
commit
10fcefaacb

+ 8 - 2
pom.xml

@@ -40,6 +40,7 @@
         <poi.version>4.1.2</poi.version>
         <commons-collections.version>3.2.2</commons-collections.version>
         <transmittable-thread-local.version>2.13.2</transmittable-thread-local.version>
+        <ulisesbocchio.version>3.0.4</ulisesbocchio.version>
     </properties>
 
     <profiles>
@@ -48,9 +49,9 @@
             <properties>
                 <!-- 环境标识,需要与配置文件的名称相对应 -->
                 <profiles.active>dev</profiles.active>
-<!--                <nacos.server>121.36.73.159:8848</nacos.server>-->
+                <!--                <nacos.server>121.36.73.159:8848</nacos.server>-->
                 <nacos.server>10.16.4.12:8848</nacos.server>
-<!--                <nacos.server>mz.tshe.cn:848</nacos.server>-->
+                <!--                <nacos.server>mz.tshe.cn:848</nacos.server>-->
                 <nacos.discovery.group>MZ</nacos.discovery.group>
                 <nacos.discovery.namespace></nacos.discovery.namespace>
                 <nacos.config.group>MZ</nacos.config.group>
@@ -299,6 +300,11 @@
                 <artifactId>ruoyi-api-system</artifactId>
                 <version>${ruoyi.version}</version>
             </dependency>
+            <dependency>
+                <groupId>com.github.ulisesbocchio</groupId>
+                <artifactId>jasypt-spring-boot-starter</artifactId>
+                <version>${ulisesbocchio.version}</version>
+            </dependency>
 
         </dependencies>
     </dependencyManagement>

+ 16 - 12
ruoyi-auth/pom.xml

@@ -7,53 +7,57 @@
         <version>3.6.0</version>
     </parent>
     <modelVersion>4.0.0</modelVersion>
-    
+
     <artifactId>ruoyi-auth</artifactId>
-	
+
     <description>
         ruoyi-auth认证授权中心
     </description>
-    
+
     <dependencies>
-        
+
         <!-- SpringCloud Alibaba Nacos -->
         <dependency>
             <groupId>com.alibaba.cloud</groupId>
             <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
         </dependency>
-        
+
         <!-- SpringCloud Alibaba Nacos Config -->
         <dependency>
             <groupId>com.alibaba.cloud</groupId>
             <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
         </dependency>
-        
+
         <!-- SpringCloud Alibaba Sentinel -->
         <dependency>
             <groupId>com.alibaba.cloud</groupId>
             <artifactId>spring-cloud-starter-alibaba-sentinel</artifactId>
         </dependency>
-		
+
         <!-- SpringBoot Web -->
         <dependency>
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-web</artifactId>
         </dependency>
-        
+
         <!-- SpringBoot Actuator -->
         <dependency>
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-actuator</artifactId>
         </dependency>
-		
+
         <!-- RuoYi Common Security-->
         <dependency>
             <groupId>com.ruoyi</groupId>
             <artifactId>ruoyi-common-security</artifactId>
         </dependency>
-        
+        <dependency>
+            <groupId>com.github.ulisesbocchio</groupId>
+            <artifactId>jasypt-spring-boot-starter</artifactId>
+        </dependency>
+
     </dependencies>
-	
+
     <build>
         <finalName>${project.artifactId}</finalName>
         <plugins>
@@ -78,5 +82,5 @@
             </resource>
         </resources>
     </build>
-   
+
 </project>

+ 9 - 2
ruoyi-auth/src/main/resources/bootstrap.yml

@@ -1,9 +1,9 @@
 # Tomcat
-server: 
+server:
   port: 9200
 
 # Spring
-spring: 
+spring:
   application:
     # 应用名称
     name: ruoyi-auth
@@ -29,4 +29,11 @@ spring:
           - data-id: application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
             group: @nacos.config.group@
             namespace: @nacos.discovery.namespace@
+#加密配置
+jasypt:
+  encryptor:
+    property:
+      prefix: "dec["
+      suffix: "]"
+    password: 6zKgnRjHHyeNWMtR
 

+ 5 - 1
ruoyi-gateway/pom.xml

@@ -57,7 +57,7 @@
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-actuator</artifactId>
         </dependency>
-        
+
         <!-- SpringCloud Loadbalancer -->
         <dependency>
             <groupId>org.springframework.cloud</groupId>
@@ -92,6 +92,10 @@
             <artifactId>knife4j-spring-ui</artifactId>
             <version>3.0.3</version>
         </dependency>
+        <dependency>
+            <groupId>com.github.ulisesbocchio</groupId>
+            <artifactId>jasypt-spring-boot-starter</artifactId>
+        </dependency>
 
     </dependencies>
 

+ 8 - 1
ruoyi-gateway/src/main/resources/bootstrap.yml

@@ -28,4 +28,11 @@ spring:
         shared-configs:
           - data-id: application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
             group: @nacos.config.group@
-            namespace: @nacos.discovery.namespace@
+            namespace: @nacos.discovery.namespace@
+#加密配置
+jasypt:
+  encryptor:
+    property:
+      prefix: "dec["
+      suffix: "]"
+    password: 6zKgnRjHHyeNWMtR

+ 4 - 0
ruoyi-modules/mz-business/pom.xml

@@ -132,6 +132,10 @@
             <artifactId>ruoyi-modules-organization-khgl</artifactId>
             <version>${ruoyi.version}</version>
         </dependency>
+        <dependency>
+            <groupId>com.github.ulisesbocchio</groupId>
+            <artifactId>jasypt-spring-boot-starter</artifactId>
+        </dependency>
 
     </dependencies>
 

+ 8 - 1
ruoyi-modules/mz-business/src/main/resources/bootstrap.yml

@@ -3,7 +3,7 @@ server:
   port: 8290
 
 # Spring
-spring: 
+spring:
   application:
     # 应用名称
     name: mz-business
@@ -29,3 +29,10 @@ spring:
           - data-id: application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
             group: @nacos.config.group@
             namespace: @nacos.discovery.namespace@
+#加密配置
+jasypt:
+  encryptor:
+    property:
+      prefix: "dec["
+      suffix: "]"
+    password: 6zKgnRjHHyeNWMtR

+ 5 - 0
ruoyi-modules/mz-datasync/pom.xml

@@ -78,6 +78,11 @@
             <artifactId>ruoyi-common-swagger</artifactId>
         </dependency>
 
+        <dependency>
+            <groupId>com.github.ulisesbocchio</groupId>
+            <artifactId>jasypt-spring-boot-starter</artifactId>
+        </dependency>
+
 
     </dependencies>
 

+ 8 - 1
ruoyi-modules/mz-datasync/src/main/resources/bootstrap.yml

@@ -31,4 +31,11 @@ spring:
             namespace: @nacos.discovery.namespace@
 mybatis-plus:
   configuration:
-    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
+    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
+#加密配置
+jasypt:
+  encryptor:
+    property:
+      prefix: "dec["
+      suffix: "]"
+    password: 6zKgnRjHHyeNWMtR

+ 4 - 1
ruoyi-modules/mz-organization/pom.xml

@@ -99,7 +99,10 @@
             <version>${ruoyi.version}</version>
         </dependency>
 
-
+        <dependency>
+            <groupId>com.github.ulisesbocchio</groupId>
+            <artifactId>jasypt-spring-boot-starter</artifactId>
+        </dependency>
     </dependencies>
 
     <build>

+ 7 - 0
ruoyi-modules/mz-organization/src/main/resources/bootstrap.yml

@@ -29,3 +29,10 @@ spring:
           - data-id: application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
             group: @nacos.config.group@
             namespace: @nacos.discovery.namespace@
+#加密配置
+jasypt:
+  encryptor:
+    property:
+      prefix: "dec["
+      suffix: "]"
+    password: 6zKgnRjHHyeNWMtR

+ 5 - 0
ruoyi-modules/mz-portal/pom.xml

@@ -103,6 +103,11 @@
             <artifactId>ruoyi-modules-business-lrgl</artifactId>
             <version>${ruoyi.version}</version>
         </dependency>
+
+        <dependency>
+            <groupId>com.github.ulisesbocchio</groupId>
+            <artifactId>jasypt-spring-boot-starter</artifactId>
+        </dependency>
     </dependencies>
 
     <build>

+ 7 - 0
ruoyi-modules/mz-portal/src/main/resources/bootstrap.yml

@@ -29,3 +29,10 @@ spring:
           - data-id: application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
             group: @nacos.config.group@
             namespace: @nacos.discovery.namespace@
+#加密配置
+jasypt:
+  encryptor:
+    property:
+      prefix: "dec["
+      suffix: "]"
+    password: 6zKgnRjHHyeNWMtR

+ 16 - 11
ruoyi-modules/ruoyi-file/pom.xml

@@ -16,56 +16,61 @@
     </description>
 
     <dependencies>
-    	
+
     	<!-- SpringCloud Alibaba Nacos -->
         <dependency>
             <groupId>com.alibaba.cloud</groupId>
             <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
         </dependency>
-        
+
         <!-- SpringCloud Alibaba Nacos Config -->
         <dependency>
             <groupId>com.alibaba.cloud</groupId>
             <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
         </dependency>
-        
+
         <!-- SpringCloud Alibaba Sentinel -->
         <dependency>
             <groupId>com.alibaba.cloud</groupId>
             <artifactId>spring-cloud-starter-alibaba-sentinel</artifactId>
         </dependency>
-        
+
         <!-- SpringBoot Actuator -->
         <dependency>
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-actuator</artifactId>
         </dependency>
-		
+
         <!-- FastDFS -->
         <dependency>
             <groupId>com.github.tobato</groupId>
             <artifactId>fastdfs-client</artifactId>
         </dependency>
-        
+
         <!-- Minio -->
         <dependency>
             <groupId>io.minio</groupId>
             <artifactId>minio</artifactId>
             <version>${minio.version}</version>
         </dependency>
-        
+
         <!-- RuoYi Api System -->
         <dependency>
             <groupId>com.ruoyi</groupId>
             <artifactId>ruoyi-api-system</artifactId>
         </dependency>
-        
+
         <!-- RuoYi Common Swagger -->
         <dependency>
             <groupId>com.ruoyi</groupId>
             <artifactId>ruoyi-common-swagger</artifactId>
         </dependency>
-        
+
+        <dependency>
+            <groupId>com.github.ulisesbocchio</groupId>
+            <artifactId>jasypt-spring-boot-starter</artifactId>
+        </dependency>
+
     </dependencies>
 
     <build>
@@ -92,5 +97,5 @@
             </resource>
         </resources>
     </build>
-   
-</project>
+
+</project>

+ 8 - 1
ruoyi-modules/ruoyi-file/src/main/resources/bootstrap.yml

@@ -3,7 +3,7 @@ server:
   port: 9300
 
 # Spring
-spring: 
+spring:
   application:
     # 应用名称
     name: ruoyi-file
@@ -29,3 +29,10 @@ spring:
           - data-id: application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
             group: @nacos.config.group@
             namespace: @nacos.discovery.namespace@
+#加密配置
+jasypt:
+  encryptor:
+    property:
+      prefix: "dec["
+      suffix: "]"
+    password: 6zKgnRjHHyeNWMtR

+ 19 - 15
ruoyi-modules/ruoyi-gen/pom.xml

@@ -16,62 +16,62 @@
     </description>
 
     <dependencies>
-    	
+
     	<!-- SpringCloud Alibaba Nacos -->
         <dependency>
             <groupId>com.alibaba.cloud</groupId>
             <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
         </dependency>
-        
+
         <!-- SpringCloud Alibaba Nacos Config -->
         <dependency>
             <groupId>com.alibaba.cloud</groupId>
             <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
         </dependency>
-        
+
         <!-- SpringCloud Alibaba Sentinel -->
         <dependency>
             <groupId>com.alibaba.cloud</groupId>
             <artifactId>spring-cloud-starter-alibaba-sentinel</artifactId>
         </dependency>
-        
+
         <!-- SpringBoot Actuator -->
         <dependency>
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-actuator</artifactId>
         </dependency>
-		
+
         <!-- Swagger UI -->
         <dependency>
             <groupId>io.springfox</groupId>
             <artifactId>springfox-swagger-ui</artifactId>
             <version>${swagger.fox.version}</version>
         </dependency>
-        
+
         <!-- Apache Velocity -->
         <dependency>
             <groupId>org.apache.velocity</groupId>
             <artifactId>velocity-engine-core</artifactId>
         </dependency>
-        
+
         <!-- Commons Collections -->
-        <dependency> 
-            <groupId>commons-collections</groupId> 
-            <artifactId>commons-collections</artifactId> 
+        <dependency>
+            <groupId>commons-collections</groupId>
+            <artifactId>commons-collections</artifactId>
         </dependency>
-        
+
         <!-- Mysql Connector -->
         <dependency>
             <groupId>mysql</groupId>
             <artifactId>mysql-connector-java</artifactId>
         </dependency>
-        
+
         <!-- RuoYi Common Log -->
         <dependency>
             <groupId>com.ruoyi</groupId>
             <artifactId>ruoyi-common-log</artifactId>
         </dependency>
-        
+
         <!-- RuoYi Common Swagger -->
         <dependency>
             <groupId>com.ruoyi</groupId>
@@ -83,6 +83,10 @@
             <groupId>com.ruoyi</groupId>
             <artifactId>ruoyi-common-datascope</artifactId>
         </dependency>
+        <dependency>
+            <groupId>com.github.ulisesbocchio</groupId>
+            <artifactId>jasypt-spring-boot-starter</artifactId>
+        </dependency>
 
     </dependencies>
 
@@ -110,5 +114,5 @@
             </resource>
         </resources>
     </build>
-   
-</project>
+
+</project>

+ 8 - 1
ruoyi-modules/ruoyi-gen/src/main/resources/bootstrap.yml

@@ -3,7 +3,7 @@ server:
   port: 9202
 
 # Spring
-spring: 
+spring:
   application:
     # 应用名称
     name: ruoyi-gen
@@ -29,3 +29,10 @@ spring:
           - data-id: application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
             group: @nacos.config.group@
             namespace: @nacos.discovery.namespace@
+#加密配置
+jasypt:
+  encryptor:
+    property:
+      prefix: "dec["
+      suffix: "]"
+    password: 6zKgnRjHHyeNWMtR

+ 17 - 12
ruoyi-modules/ruoyi-job/pom.xml

@@ -16,38 +16,38 @@
     </description>
 
     <dependencies>
-    	
+
     	<!-- SpringCloud Alibaba Nacos -->
         <dependency>
             <groupId>com.alibaba.cloud</groupId>
             <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
         </dependency>
-        
+
         <!-- SpringCloud Alibaba Nacos Config -->
         <dependency>
             <groupId>com.alibaba.cloud</groupId>
             <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
         </dependency>
-        
+
         <!-- SpringCloud Alibaba Sentinel -->
         <dependency>
             <groupId>com.alibaba.cloud</groupId>
             <artifactId>spring-cloud-starter-alibaba-sentinel</artifactId>
         </dependency>
-        
+
         <!-- SpringBoot Actuator -->
         <dependency>
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-actuator</artifactId>
         </dependency>
-		
+
         <!-- Swagger UI -->
         <dependency>
             <groupId>io.springfox</groupId>
             <artifactId>springfox-swagger-ui</artifactId>
             <version>${swagger.fox.version}</version>
         </dependency>
-		
+
         <!-- Quartz -->
         <dependency>
             <groupId>org.quartz-scheduler</groupId>
@@ -59,19 +59,19 @@
                 </exclusion>
             </exclusions>
         </dependency>
-        
+
         <!-- Mysql Connector -->
         <dependency>
             <groupId>mysql</groupId>
             <artifactId>mysql-connector-java</artifactId>
         </dependency>
-        
+
         <!-- RuoYi Common Log -->
         <dependency>
             <groupId>com.ruoyi</groupId>
             <artifactId>ruoyi-common-log</artifactId>
         </dependency>
-        
+
         <!-- RuoYi Common Swagger -->
         <dependency>
             <groupId>com.ruoyi</groupId>
@@ -83,7 +83,12 @@
             <groupId>com.ruoyi</groupId>
             <artifactId>ruoyi-common-datascope</artifactId>
         </dependency>
-        
+
+        <dependency>
+            <groupId>com.github.ulisesbocchio</groupId>
+            <artifactId>jasypt-spring-boot-starter</artifactId>
+        </dependency>
+
     </dependencies>
 
     <build>
@@ -110,5 +115,5 @@
             </resource>
         </resources>
     </build>
-   
-</project>
+
+</project>

+ 8 - 1
ruoyi-modules/ruoyi-job/src/main/resources/bootstrap.yml

@@ -3,7 +3,7 @@ server:
   port: 9203
 
 # Spring
-spring: 
+spring:
   application:
     # 应用名称
     name: ruoyi-job
@@ -29,3 +29,10 @@ spring:
           - data-id: application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
             group: @nacos.config.group@
             namespace: @nacos.discovery.namespace@
+#加密配置
+jasypt:
+  encryptor:
+    property:
+      prefix: "dec["
+      suffix: "]"
+    password: 6zKgnRjHHyeNWMtR

+ 25 - 0
ruoyi-modules/ruoyi-system/pom.xml

@@ -77,6 +77,11 @@
             <groupId>com.ruoyi</groupId>
             <artifactId>ruoyi-common-swagger</artifactId>
         </dependency>
+        <dependency>
+            <groupId>redis.clients</groupId>
+            <artifactId>jedis</artifactId>
+            <version>4.2.0</version>
+        </dependency>
 
         <!-- system- ext-->
         <dependency>
@@ -91,6 +96,26 @@
             <artifactId>ruoyi-modules-system-lcdy</artifactId>
             <version>${ruoyi.version}</version>
         </dependency>
+        <dependency>
+            <groupId>com.github.ulisesbocchio</groupId>
+            <artifactId>jasypt-spring-boot-starter</artifactId>
+        </dependency>
+
+        <dependency>
+            <groupId>junit</groupId>
+            <artifactId>junit</artifactId>
+        </dependency>
+
+        <dependency>
+            <groupId>org.springframework</groupId>
+            <artifactId>spring-test</artifactId>
+        </dependency>
+
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-test</artifactId>
+            <version>2.7.2</version>
+        </dependency>
 
     </dependencies>
 

+ 30 - 0
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/JasyptTest.java

@@ -0,0 +1,30 @@
+package com.ruoyi.system;
+
+import org.jasypt.encryption.StringEncryptor;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.boot.test.context.SpringBootTest;
+import org.springframework.test.context.junit4.SpringRunner;
+
+@RunWith(SpringRunner.class)
+@SpringBootTest
+public class JasyptTest {
+    @Autowired
+    private StringEncryptor encryptor;
+
+    @Test
+    public void encrypt(){
+        String pass = "sckj2022@123";
+        String encrypt = encryptor.encrypt(pass);
+        System.out.println(encrypt);
+    }
+
+    @Test
+    public void decrypt(){
+        String pass = "gfbwm+1gakLKwMk1GzSgXXsRqH5hh1tJDEF8EJuCQpJZ7tQBZ9EFURi2v6cjB05Q";
+        pass = "qnIsQv/xzu3JMmSDpCAfY0QApeObSnTXBvNs+9V5yw3MB8ZvmeL60yx12EhLu25i";
+        String encrypt = encryptor.decrypt(pass);
+        System.out.println(encrypt);
+    }
+}

+ 8 - 1
ruoyi-modules/ruoyi-system/src/main/resources/bootstrap.yml

@@ -3,7 +3,7 @@ server:
   port: 9201
 
 # Spring
-spring: 
+spring:
   application:
     # 应用名称
     name: ruoyi-system
@@ -29,3 +29,10 @@ spring:
           - data-id: application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
             group: @nacos.config.group@
             namespace: @nacos.discovery.namespace@
+#加密配置
+jasypt:
+  encryptor:
+    property:
+      prefix: "dec["
+      suffix: "]"
+    password: 6zKgnRjHHyeNWMtR

+ 13 - 8
ruoyi-visual/ruoyi-monitor/pom.xml

@@ -7,7 +7,7 @@
         <version>3.6.0</version>
     </parent>
     <modelVersion>4.0.0</modelVersion>
-	
+
     <artifactId>ruoyi-visual-monitor</artifactId>
 
     <description>
@@ -15,20 +15,20 @@
     </description>
 
     <dependencies>
-        
+
         <!-- SpringBoot Admin -->
         <dependency>
             <groupId>de.codecentric</groupId>
             <artifactId>spring-boot-admin-starter-server</artifactId>
             <version>${spring-boot-admin.version}</version>
         </dependency>
-		
+
         <!-- SpringCloud Alibaba Nacos -->
         <dependency>
             <groupId>com.alibaba.cloud</groupId>
             <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
         </dependency>
-		
+
         <!-- SpringCloud Alibaba Nacos Config -->
         <dependency>
             <groupId>com.alibaba.cloud</groupId>
@@ -40,19 +40,24 @@
             <groupId>com.alibaba.cloud</groupId>
             <artifactId>spring-cloud-starter-alibaba-sentinel</artifactId>
         </dependency>
-		
+
         <!-- SpringBoot Web -->
         <dependency>
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-web</artifactId>
         </dependency>
-		
+
         <!-- Spring Security -->
         <dependency>
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-security</artifactId>
         </dependency>
-		
+
+        <dependency>
+            <groupId>com.github.ulisesbocchio</groupId>
+            <artifactId>jasypt-spring-boot-starter</artifactId>
+        </dependency>
+
     </dependencies>
 
     <build>
@@ -80,4 +85,4 @@
         </resources>
     </build>
 
-</project>
+</project>

+ 8 - 1
ruoyi-visual/ruoyi-monitor/src/main/resources/bootstrap.yml

@@ -3,7 +3,7 @@ server:
   port: 9100
 
 # Spring
-spring: 
+spring:
   application:
     # 应用名称
     name: ruoyi-monitor
@@ -29,3 +29,10 @@ spring:
           - data-id: application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
             group: @nacos.config.group@
             namespace: @nacos.discovery.namespace@
+#加密配置
+jasypt:
+  encryptor:
+    property:
+      prefix: "dec["
+      suffix: "]"
+    password: 6zKgnRjHHyeNWMtR